2 卷积神经网络
Hubel 和 Wiesel 在研究猫脑皮层中用于局部敏感和方向选择的神经元时发现,其独特的网络结构可以有效降低反馈神经网络的复杂性,继而提出了卷积神经网络深度学习模型——卷积神经网络(Convolutional Neural Networks,CNN)。卷积神经网络主要由卷积层、池化层、全连接层构成,如图1所示。
图1 卷积神经网络结构
Fig.1 Convolutional neural network structure
2.1 卷积层
人脑在识别图片的过程中,并非同时识别整张图,而是首先局部感知图片中的每个特征,然后从更高层次对局部进行综合操作,从而得到全局信息。卷积层由滤波器 filters和激活函数构成,其作用为从输入图像中提取特征,卷积过程如图 2 所示。卷积可以从输入的一小块数据中学到图像的特征,并可以保留像素间的空间关系。卷积层使用卷积核进行局部感知,通过局部感知特性,大大减少模型的计算参数。
图2 卷积过程
Fig.2 Convolution process
2.2 池化层
池化层通过对卷积后的结果进行降采样处理来降低维度、压缩数据和参数的数量、减小过拟合,同时提高模型的容错性。池化操作分为Max pooling和Average pooling两类,使用较多的是Max pooling,池化过程如图3所示。
图3 池化过程
Fig.3 Pooling process
2.3 全连接层
全连接层把卷积层和池化层的输出展开成一维形式,在其后接上与普通网络结构相同的回归网络或者分类网络(一般接在池化层后面)。
2.4 激励层
激励层是对卷积层的输出结果做一次非线性映射。如果不用激励函数,每层的输出都是上一层输入的线性函数。容易得出,无论有多少神经网络层,输出都是输入的线性组合,与没有隐藏层的效果是一样的。常用的激励函数包括Sigmoid函数、Tanh函数、ReLU函数、Leaky ReLU、ELU、Maxout。激励层一般首先选用ReLU,因为它的迭代速度快。