卷积层是CNN中主要的层类型,其中每个神经元都连接到输入层的某个区域,这个区域称为感受野。CNN基于感受野的概念通过执行邻近层神经元之间的本地连接模式来开发空间局部性。
在处理多维输入(如图像)时,将每一层神经元与前一层的所有神经元都相连接是不切实际的,因为这需要大量的参数。例如,一个 100×100的图像有10000个像素,如果第一层只有1000个神经元(已经严格限制了传递到下一层的信息量),这意味着将会有1000万个连接,然而这只是第一层。
相反,我们将每个神经元仅连接到输入图像的局部区域。这种连接的空间区域是一个称为神经元感受野的超参数(等效滤波器的大小)。沿深度的接通程度始终等于输入量的深度。在处理空间尺寸(宽度和高度)和深度尺寸时,必须再次强调这种不对称性,即输入图像维度(宽度和高度)的连接是局部的,但在深度上的连接始终等于总的深度。
示例1.假设输入量的大小为[32x32x3](如RGB CIFAR-10图像)。如果感受野(或滤波器大小)为5x5,则卷积层中的每个神经元将在输入图片中[5x5x3]的区域使用权重,总共553=75个权重。需要注意,沿深度方向的连接必须为3,因为其需要等于输入的深度。
示例2.假设输入图片为[16x16x20]。然后使用3x3大小的接收域,则卷积层中的每个神经元到输入一共有的3320=180个连接。同样要注意,空间连接是局部的(例如3x3),但深度连接(20)为总的输入深度。
左侧红色点为输入(例如32x32x3 CIFAR-10图像),神经元在第一卷积层。卷积层中的每个神经元在空间(宽度和高度)上仅连接输入图片的局部区域,但在深度上,则连接整个深度(即所有颜色通道)。注意,沿着深度有多个神经元(此示例中有5个),且这些神经元都对应输入中的同一区域。
可参考书目:《用于视觉识别的CS231n卷积神经网络》《实用卷积神经网络:运用Python实现高级深度学习模型》