15.卷积神经网络

卷积神经网络(Convolutional Neural Network),多用于图像处理。

全连接的问题

回顾手写数字识别,我们需要将一张图片的所有像素点,展开成一个1维向量输入到网络。那么,当图片尺寸特别大时,要求的输入神经元的个数会特别大,参数多训练慢,还容易发生过拟合。除此之外,对于彩色图片而言,如果将RGB三个通道数据单纯展开铺平,会丢失空间信息。

卷积神经网络,引入卷积层,通过卷积核对图像特征进行提取,维护像素点之间的特征信息,同时也保证了参数个数不随图像尺寸变化。

经典的卷积神经网络包含:对图片进行多层卷积、池化,最后加上全连接层。在卷积和全连接的最终输出往往加上ReLu函数,有时也会引入Dropout防止过拟合。

卷积核

卷积核(kernel),又称滤波器(filter)

卷积运算,是通过卷积核在图片上移动,计算点乘求和得到的。注意,卷积往往在计算结束后还会加偏置项(bias),一个卷积核对应一个偏置项。在卷积层部分训练学习的,也就是机器调整的,就是卷积核和偏置项。

假设偏置项为1,计算结果如下:

多通道彩色图片

对于多通道彩色图片,根据需求,有单输出和多输出两种情况。

单输出,用一组卷积核计算

多输出,用多组卷积核计算

批量操作

在网络训练时,往往将小批量的多张图片同时进行训练,输入图片维度为:

假设输入2张3x3的三通道彩色图片,其形状为(2,3,3,3)

感受野

我们的图片经过卷积后,尺寸会变小,那么,卷积后的点,对应原图中的区域大小,我们称作感受野(Receptive Filed)

经过两次3x3的卷积后,感受野会变为5x5

边缘填充

边缘填充(Padding),在卷积的过程中,由于尺寸不足或尺寸保持,我们需要对图片的尺寸进行补充,这个过程叫边缘填充。

填充可以填充0、临近值等等。不进行填充(VALID),尺寸保持填充(SAME)

卷积核大小一般为1,3,5,7等奇数,如果

那么经过卷积后,图片尺寸保持不变

卷积后尺寸计算公式,stride步长,指的是每次计算移动的距离

池化

池化(pooling或subsampling),特征提取,降低尺寸。尺寸减半,通道数不变