【深度学习】如何通俗理解图像识别中的卷积与池化?

一、卷积

1.为什么要引入卷积层?

  • 因为全连接层输入图像时,会将图像的3维数据拉平为1维数据,而图像是3维形状,这个形状中可能包含重要的空间信息。比如,空间上邻近的像素为相似的值、RBG的各个通道之间分别有密切的关联性、相距较远的像素之间没有什么关联等,所以使用全连接层可能会忽略掉一些空间信息,进而造出最后的预测结果不准确。
  • 卷积层则可以保持形状不变。当输入数据是图像时,卷积层会以3维数据的形式接收输入数据,并同样以3维数据的形式输出至下一层。

2.卷积层的功能
卷积层的功能是提取图像的底层特征
3.卷积的过程
静态图【深度学习】如何通俗理解图像识别中的卷积与池化?
动态图
【深度学习】如何通俗理解图像识别中的卷积与池化?
对于输入的图像,卷积层按3维数据形式存放,输入数据与卷积核对应位置相乘再相加,从上到下从左到右滑动,得到Feature Map(特征映射或特征图)。
4.补充知识
填充(Padding):在进行卷积层的处理之前,有时要向输入数据的周围填入固定的数据(一般为0)。
填充的好处

  • 防止边缘的特征被忽略
  • 可以调整输出大小

感受野:CNN中的感受野与生物学上的感受野不同,生物学上的感受野指的是听觉、视觉等神经系统中一些神经元的特性,即神经元只接受其所支配的刺激区域内的信号;CNN中的感受野通常指卷积核划过的区域

二、池化

1.池化的功能
池化层的功能是防止过拟合,减小数据维度,为CNN带来平移不变性
2.池化的方式
(1)最大池化
【深度学习】如何通俗理解图像识别中的卷积与池化?
(2)平均池化
【深度学习】如何通俗理解图像识别中的卷积与池化?

3.卷积神经网络的结构

【深度学习】如何通俗理解图像识别中的卷积与池化?
与传统的神经网络相比,卷积神经网络(CNN)多了两个层,即卷积层(Convolutional Layer)和池化层(Pooling Layer)。
各层的功能如下:

  • 卷积层:提取图像的底层特征。
  • 池化层:防止过拟合,减小数据维度,为CNN带来平移不变性。
  • 全连接层:汇总之前卷积层和池化层最终得到的图像信息,可以通过两种方式输出,得到最后的预测结果。一是用softmax函数,最终呈现形式是各个可能性的概率大小,二是用sigmoid函数,输出分类结果。