一、介绍

        VGGNet是于2014年由牛津大学计算机视觉组和DeepMind公司共同研究的。在2014年的ILSVRC比赛上获得了分类项目的第二名和定位项目的第一名。这个网络据说是基于NIN网络的思想。与比赛中的第一名GooLeNet从NIN开始向两个方向发展。VGGNet的理念是更深的网络性能更好。因此,VGGNet的主要理念有:

  1. 网络层数越多,也就是网络越深,网络的性能越好。
  2. 网络越深越不好训练,容易过拟合。因此,采用小卷积核。
二、模型结构

CNN相较于DNN cnn和gnn_深度学习


        如图中所示,论文中一共提供了六种结构,可以分为VGG11、VGG13、VGG16和VGG19。其中VGG16和VGG19是我们常用的网络。它们的结构可分为两部分,第一部分为卷积层,主要目的是提取特征。第二部分为全连接层,主要目的是进行分类。在网络中主要的操作有

  • 输入图像预处理只做了减均值操作,可以减去128或者减去所有像素的均值,收敛会快一些,性能不会差太多。
  • 隐藏层使用ReLU,效率更高。不使用LRN。LRN也被证实没多大用处。在之后的模型也不被使用。
  • 使用CNN相较于DNN cnn和gnn_人工只能_02CNN相较于DNN cnn和gnn_VGGNet_03的卷积核,非常小的感受野,这样就可以把网络加深,使用多个卷积核的总参数变少。
  • CNN相较于DNN cnn和gnn_VGGNet_03的卷积增加了决策函数的非线性,相当于全连接。可进行通道的降维或者升维。
  • 两个连续的CNN相较于DNN cnn和gnn_人工只能_02卷积核相当于一个CNN相较于DNN cnn和gnn_VGGNet_06,三个相当于CNN相较于DNN cnn和gnn_VGGNet_07。好处是网络结构更深,增加了非线性能力,参数更少了。

        在模型中,优化方法使用含有动量的随机梯度下降,损失函数中加入了L2正则化,全连接层的前两层加入了Dropout防止过拟合。网络的测试结果为

CNN相较于DNN cnn和gnn_CNN_08

三、总结

        VGGNet虽然是2014年分类任务的第二名,但是与第一名相差并不多,并且对之后的模型发展影响巨大。VGGNet网络得出的结论有

  • LRN,局部归一化并不能改善网络的性能
  • 随着网络的加深,分类误差降低,特征收敛越快,受样本变化的影响越小。
  • 数据增加等操作可以增强模型的鲁棒性。
  • 多裁剪评估比密集评估,效果更好。

        VGGNet网络是一个非常好的网络,在很多任务中,都以它为基础模型,在此基础上进行更改。学习VGGNet模型,要知道它的网络结构,以及设计思想和最终的实验结论。