将当前选定的矩阵与卷积核矩阵对应元素相乘,得到1,将其填入第2个格中,图7-17所示。
以此类推,第二行第一个方格通过原矩阵第2到4行、第1到3列围成的区域与卷积核相乘得到。第三行第三个方格由原矩阵右下角的方阵与卷积核相乘所得。最终即可得到结果。
7.4.2 卷积层
通过上面的介绍,我们知道了一个方阵可以和一个卷积核(同样为一个方阵)进行卷积运算,得到一个新的方阵。假设输入矩阵为 $\mathrm { h } ^ { \ast } \mathrm { w }$ (h为长度,w为宽度,通常h与w相等),卷积核为f\*f,那么得到的输出矩阵的长度和宽度为h-f+1和w-f+1。通常f的值不大,一定小于h和w,3\*3、5\*5、7\*7的卷积核比较常见。
这只是卷积运算最“标准”的情况。要了解卷积神经网络中卷积运算的实际操作,我们还需要了解Padding和Strike的概念。事实上,我们可以通过Padding和Strike得到尺寸和上述计算不一样的矩阵。Padding和Strike也是卷积运算中极为重要的概念,可以通过调节它们改变我们想要的输出矩阵的格式。
Padding
Padding指的是对输入矩阵的尺寸进行“扩展”,在矩阵外围增加一个“套环”(通常由0来填充)。比如,一个3\*3的矩阵通过Padding得到了一个5\*5的矩阵。Padding的参数p是在进行一次卷积运算中可以控制的参数。通过设置参数p,我们可以控制输出层想要得到的矩阵的尺寸。
●从二维到三维
我们知道,卷积神经网络在计算机视觉领域被广泛应用。在图像处理中,我们的输入数据不止停留在二维。二维像素点矩阵只能描述黑白图片,绝大多数图片为彩色,是由3个频道(通常为R、G、B三原色)的像素点方阵组成的,所以具有3个维度。
人工智能与大数据技术导论
204