【机器学习】19. CNN 卷积神经网络 Convolutional neural network

CNN 卷积神经网络 Convolutional neural network

  • [1. CNN 和 传统神经网络的差别](#1. CNN 和 传统神经网络的差别)
  • [2. CNN 的结构](#2. CNN 的结构)
  • [3. 卷积层](#3. 卷积层)
  • [4. strides 步长](#4. strides 步长)
  • [5. Padding](#5. Padding)
  • [6. ReLu](#6. ReLu)
  • [7. Pooling(sub-sampling layer)](#7. Pooling(sub-sampling layer))
  • [8. 全连接层](#8. 全连接层)
  • [9. 三通道特征图](#9. 三通道特征图)
  • 10.总结

1. CNN 和 传统神经网络的差别

传统神经网络不考虑图片的空间结构,CNN通过卷积层和池化层考虑了图片的空间结构。

2. CNN 的结构

INPUT-CONVOLUTIONAL-RELU-POOL-FC

3. 卷积层

在卷积神经⽹络(CNN)中,卷积层是最核⼼的组成部分。卷积的本质就是通过不同的滤器(filter or kernal),多⾓度捕捉图⽚的信息从⽽学习特征,卷积层负责从输⼊图像中提取局部特征,这些特征随着⽹络层级的增加⽽逐渐变得更抽象和复杂。

  • 局部感受野:卷积操作是通过⼀个⼩的滤波器(或卷积核)在输⼊图像上滑动来实现的。这个滤波器只覆盖图像的⼀个⼩区域(局部感受野)。
  • 特征映射:每次滤波器滑过⼀个局部区域时,都会进⾏⼀次点乘和求和操作,⽣成⼀个新的像素值。这样,滤波器便从输⼊图像中提取出⼀个特征映射(或特征图)。

1×1+1×0+1×1+0×0+1×1+1×0+0×1+0×0+1×1=4.

在cnn中,过滤器不是预先设计来检测特定类型的特征,它们的值是在反向传播算法的训练过程中学习的。一个典型的卷积层包含许多过滤器,每个过滤器检测一个不同的特征。

4. strides 步长

水平和垂直步幅。

沿着图像(stride)像素移动滤镜。

更大的步长产生更小的特征图。

5. Padding

Padding可以更好地覆盖图像周围的图像和特征提取。

如果下一个strid将使过滤器达到图像之外,用零填充图像外的区域。

6. ReLu

7. Pooling(sub-sampling layer)

  • 总结上一层的输入
  • 减少参数的数量,并有助于防止过拟合
  • 提高了对接收野移位的鲁棒性。
  • Max Pooling 和Average Pooling分别是选择最大的值和选择平均值作为池化层的输出

    哪种池化的方法好取决于给到的任务. MP会保留⾼频信息,选择特征图中像素值最大的, 所以特别适合较黑的图像中的特征识别. 而AP会使得特征图更加平滑, 减少细节和噪声.

在卷积神经⽹络(CNN)中,池化层通常⽤于减⼩特征图的尺⼨,以减少模型的计算复杂性。同时,池化操作也能增加模型对于⼩的平移和变换的鲁棒性。减⼩尺⼨:池化操作通常会减⼩特征图的尺⼨,从⽽减少后续层需要处理的数据量。增加鲁棒性:池化层能提⾼模型对⼩的平移、旋转和尺度变化的鲁棒性。特征压缩:通过池化,⼀些⾮必要的信息(通常是低层次的、⾼频的信息)会被丢弃,⽽更重要的全局信息会被保留。减少了特征图的尺⼨,有助于减少模型的参数和计算量,使模型更易于训练。

8. 全连接层

在CNN的最后,我们附加了1个或更多的全连接层。

第一个FC层接收最后一层的输出,该层要么是卷积的,要么是池化的

要做的第一件事是使输出展平。

9. 三通道特征图

将三个通道的特征图相加得到最终特征图

10.总结

  • cnn是为图像数据设计的,但也可以应用于其他数据类型
  • 关键要素:卷积、池化和全连接层
  • 卷积层提取特征
  • 池化层汇总来自卷积层的信息,减少参数数量以防止过拟合,并提高对数据移位的鲁棒性。
  • 全连接层结合提取的特征,输出每个类的概率。
  • cnn在图像处理和计算机视觉任务方面非常成功。
相关推荐
feasibility.35 分钟前
yolo11-seg在ISIC2016医疗数据集训练预测流程(含AOP调loss函数方法)
人工智能·python·yolo·计算机视觉·健康医疗·实例分割·isic2016
Elastic 中国社区官方博客37 分钟前
易捷问数(NewmindExAI)平台解决 ES 升级后 AI 助手与 Attack Discovery 不正常问题
大数据·运维·数据库·人工智能·elasticsearch·搜索引擎·ai
冬奇Lab44 分钟前
一天一个开源项目(第21篇):Claude-Mem - 为 Claude Code 打造的持久化记忆压缩系统
人工智能·开源·claude
大任视点1 小时前
星云天启发布革命性AI智慧家居体系:开启未来家居新纪元
人工智能
jarvisuni1 小时前
GLM5带10个题目挑战Claude4.6编程宝座 !
人工智能·ai编程
YunchengLi1 小时前
【计算机图形学中的四元数】2/2 Quaternions for Computer Graphics
人工智能·算法·机器学习
开开心心就好1 小时前
一键加密隐藏视频,专属格式播放工具
java·linux·开发语言·网络·人工智能·macos
呆萌很1 小时前
BGR和RGB区别
人工智能
L念安dd2 小时前
基于 PyTorch 的轻量推荐系统框架
人工智能·pytorch·python