上面介绍了二维图像卷积,卷积神经网络正是通过这样的操作来进行特征学习的。在传统BP神经网络中,前后层之间的神经元是“全连接”的,即每个神经元都与前一层的所有神经元相连,而卷积神经网络中的神经元只与前一层中的部分神经元相连。
1.感受野
感受野是卷积神经网络的重要概念之一,当前流行的物体识别方法的架构大多是围绕感受野设计的。
从直观上讲,感受野就是视觉感受区域的大小。在卷积神经网络中,感受野是某一层输出结果的一个元素对应的输入层的一个映射,即特征平面上的一个点所对应的输入图像上的区域,如图2.7所示。
如果一个神经元的大小受到上层 N × N 的神经元区域的影响,那么就说该神经元的感受野是 N × N ,因为它反映了 N × N 区域的信息。在图2.7中,conv2中的像素点5,是由conv1中的2×2的区域计算得来的,而该2×2区域,又是由输入图像中5×5的区域计算而来的,所以该像素的感受野是5×5。可以看出,感受野越大,得到的信息越多。
图2.7 感受野示例
2.池化
从图2.7中的输入图像到conv1,再到conv2,图像越来越小。每过一层就相当于一次降采样,这就是池化。池化可以通过步长不为1的卷积实现,也可以通过直接采样实现。池化层可以对输入的特征平面进行压缩,一方面使特征平面变小,简化网络计算复杂度;另一方面可以实现特征抽象,提取主要特征。
一般而言,池化操作的每个池化窗口都是不重叠的,所以池化窗口的大小等于步长(stride)。最常见的池化操作为平均池化(Average Pooling)和最大池化(Max Pooling)。平均池化指计算图像区域所有元素的平均值并将其作为该区域池化后的值;最大池化则指选取图像区域元素的最大值作为该区域池化后的值。
如图2.8所示为2×2区域最大池化操作示意。
图2.8 2×2区域最大池化操作示意