摘要

卷积神经网络(CNN)是计算机视觉问题中应用最为广泛的算法模型,并且取得了较为显著的成果。CNN由于其自身的优越性,能够通过特定的局部操作达到对输入图片表征分层抽象的目的。CNN架构的成功应用主要得益于其两大优点:第一,CNN保留了输入图片的二位空间特性,二维图片像素点之间相关度比较高,CNN能够实现稀疏连接,大大降低了参数个数。第二,CNN能够实现特征共享,对于特征图的每个通道的同一位置都是相同卷积核经过卷积计算的结果。卷积核会对输入数据进行加权运算,这里的权重参数也能够看作CNN对数据的记忆,经过加权之后的数据会通过一个非线性函数即激活函数(activation.function)进行非线性变换。卷积层的作用是提取特征,通常在经过特定层数的卷积操作之后,采用全连接层实现分类操作。本文对Kaggle上的Cats.vs.Dogs图像数据集,采用了基于Resnet-50的预训练网络,构建了算法构建一个卷积神经网络模型,解决这一典型的二分类图像识别问题。ResNet与传统的卷积神经网络的区别在于其在网络中增加了一些shortcut,即直接通道能够跳过一定的层来优化网络。ResNet引入了残差函数F(x)的思想,残差函数设定为:H(x)=F(x)+x。具体而言,若F(x)=0,则上述残差函数就构成了一个恒等映射H(x)=x。对于神经网络来说,拟合残差更为容易。