这篇文章是以比赛为目的——解决ImageNet中的1000类图像分类和定位问题。在此过程中,作者做了六组实验,对应6个不同的网络模型,这六个网络深度逐渐递增的同时,也有各自的特点。实验表明最后两组,即深度最深的两组16和19层的VGGNet网络模型在分类和定位任务上的效果最好。作者因此斩获2014年分类第二(第一是GoogLeNet),定位任务第一。
其中,模型的名称——“VGG”代表了牛津大学的Oxford Visual Geometry Group,该小组隶属于1985年成立的Robotics Research Group,该Group研究范围包括了机器学习到移动机器人。
VGG特点:
卷积神经网络的输入是一个固定大小的224x224的RGB图像,唯一做的预处理是将图像每一个像素值减去RGB三通道的均值。输入图像经过一系列堆叠的卷积层,使用小感受野的3x3卷积核,卷积的步长固定为1。在部分网络结构设计中,包含大小为1x1的卷积核,相当于对输入做非线性变换。卷积时需要对输入特征填充以使输出与输入分辨率相同。网络中包含5个最大池化层,池化作用在2x2的区域上,步长为2。网络的最后包含三个全连接层,前两个全连接层包含4096个神经元,最后一层是1000个神经元对应ILSVRC分类任务的1000个类别,最后是softmax层。所有的隐藏层都使用的是Relu非线性激活函数。
如下为不同的网络结构设计,都遵循上一节中的总体设计原则,区别仅在于网络的深度不同。网络A包含8个卷积层和3个全连接层,网络E包含16个卷积层和3个全连接层。每一个卷积层的卷积深度都很小,初试值为64,每经过一个最大池化层卷积深度乘2,直到最后达到512。
下图展示了不同结构的网络设计中参数的数量。尽管网络设计的深度最大为19层,但其参数数量相比于浅层卷积神经网络(卷积深度及卷积核更大)并没有增加。
不同于之前的在ILSVRC上表现优异的卷积神经网络,如Krizhevsky el.al 2012中在第一个卷积层中使用11x11的卷积核、步长为4,整个网络设计中都是用的是3x3的卷积核,步长为1,这样能够对输入中的每一个像素进行卷积操作。不难看出,2层3x3的卷积与1层5x5的卷积具有相同的感受野:
这样的设计有以下优点:
网络设计中还使用到了卷积核大小为1x1的卷积层,这种设计在不改变卷积层感受野的情况下,提高了网络的非线性表达能力,常用于改变特征的维度。尽管是对输入在原来的空间维度上的线性投影,但由于引入了ReLu依然增加了非线性表达能力。
使用带动量的mini-batch随机梯度下降对网络进行训练。batch-size设置为256,动量常数设置为0.9。为了防止过拟合,使用L2正则,权重衰减系数设置为 5 ∗ 1 0 − 4 5*10^{-4} 5∗10−4,在前两个全连接层设置Dropout层,比例设置为0.5。使用学习率衰减,初始设置为 1 0 − 2 10^{-2} 10−2, 当验证集准确率无法提升时将其变为原来的十分之一。
在权重的初始化方面,采取的策略是:先对随机初始化权重的浅层网络进行训练(network A),然后将该网络的前四层卷积层以及最后三层全连接层的参数作为深层神经网络的初始权重参数,中间层的参数按照正态分布随机初始化,偏置置为0。最终经过74 epochs学习停止。
Let S be the smallest side of an isotropically-rescaled training image
以S=256为例,将图片进行等比例变化,使得最小边的长度为256;然后对等比变化后的图像随机截取224*224的图像块;对裁剪的图像块进行随机水平翻转与RGB颜色转换,增加训练数据的数据量,防止网络过拟合,提高网络的泛化能力。
论文还考虑了两种设置训练数据中原图最小边S的方式:一种是单一尺度数据,即将S固定设置成256、384两种规模;另一种是多尺度数据,即S在[256,512]区间内随机选取。
作者在测试评估模型性能时同样采取单一尺度预测的评估和多尺度预测的评估两种方式。定义测试集图片等比例缩放后最小边长度为Q,
12年到14年的挑战赛都使用的是1000个类别的ILSVRC-2012数据集(Large Scale Visual Recognition Challenge),其中:
训练集:130万张图片;
验证集:5万张图片;
测试集:10万张图片,这组数据的label没有给出(with held-out class labels)。
两个性能评估准则:top-1和top-5 error。
作者用验证集代替测试集来观察模型性能。作者使用两种方式来评估模型在测试集(实际的验证集)的性能表现:single scale evaluation和multi-scale evaluation。
结论:
结论:
其他,作者还对比了经过多尺度训练以及多尺度预测的深层网络模型受到测试时对图片的不同裁剪方式带来的性能差异(dense, multi-crop, 混合):
dense: 不进行裁剪,直接将原图尺寸输入到神经网络;(这里涉及到全连接转卷积)
multi-crop:中心裁剪
混合:将两种方式的结果取平均。
结论: