【经典神经网络】-AlexNet/VGG/GoogLeNet/ResNet

1 AlexNet(2012,ImageNet冠军, CNN用于图像分类的开山之作

结构:5 卷积层+3个全连接层(卷积核size:11,5,3)

【经典神经网络】-AlexNet/VGG/GoogLeNet/ResNet

特点:

  1. ReLU **函数 (避免了sigmoid的梯度消失-反向传播的时候会连乘sigmoid的导数,初始值很大的话导数接近于0,导致前层网络梯度越来越小;计算量减小,加快了训练速度)
  2. LRN(Local Response Normalization): 利用前后几层对当前层的输出做平滑处理(抑制机制,避免ReLU响应结果非常大,做归一化处理,增加泛化能力
  3. fc层加入Dropout :每次参数更新时,以一定的比例使一些神经元不参与前后向传播(相当于模型组合,减小过拟合)
  4. Data Augmentation 数据扩充(随机裁剪,水平翻转),减小过拟合
  5. 重叠池化(减小过拟合)
  6. GPU训练

 2 VGG(2014, ImageNet 亚军)

证明了增加网络深度一定程度上会影响最终性能

多个版本VGG 11/13/16/19(VGG16:13卷积层+3 fc)

【经典神经网络】-AlexNet/VGG/GoogLeNet/ResNet

特点:

  1.  用连续的 3 x 3 卷积核替代了Alexnet中较大的卷积核(保证相同的 感受野下,减少了参数;引入更多的非线性层增加了网络的深度
  2. 最大池化层2x2,卷积层3x3,结构简单
  3. VGG参数较多,内存占用较大(140M),训练时间长

3 GoogLeNet(2014,ImageNet冠军)

22层(参数量少:500万,AlexNet 是其12倍,VGG是其3倍)

【经典神经网络】-AlexNet/VGG/GoogLeNet/ResNet

特点:

  1. Inception v1结构,多个卷积堆叠在一起,最后将通道相加(完成了稀疏矩阵的聚合增加网络的宽度;增加网络对图像尺寸的适应性
  2. 提出1 x1 卷积降维,减少参数量:5x5前接1x1,参数量减少约四倍;不改变feature map的条件下增加非线性-网络深度融合不同通道的信息
  3. 引入辅助分类器,在中间层加入softmax做分类,以一定的权重加入到最终的分类结果中,相当于模型融合
  4. Incelption v2:减小参数量,增加深度,将5x5替换为3x3;将池化和卷积并行操作,再合并(先池化容易丢失信息,先卷积计算量太大)
  5. Inceptino v3:又将 n x n 替换为 1x n 接 n x1(中等特征图上效果好12-20)
  6. Inceptino v4:利用Resnet思想引用残差改进v3

4 ResNet ( Kaiming He, 2016 )

核心思想:

解决了网络退化问题(Degradation: 随着深度增加,性能反而下降——求解器很难去利用深层网络拟合同等函数)

 

深度学习网络篇——ResNet 

【经典神经网络】-AlexNet/VGG/GoogLeNet/ResNet

shortcut connection/ skip connection:

【经典神经网络】-AlexNet/VGG/GoogLeNet/ResNet

浅层 building block  (ResNet 18, 34)与  深层 block(ResNet 50, 101, 152);1 x 1 卷积核的引入:消减和恢复维度的同时,可以极大地减少参数。

当 input 和output 的维度不相同时如何连接:

  1. 采用zero padding. 不会增加参数
  2. 对 input 进行卷积操作(1x1),维度等=filter的数量,方便,但是会引入参数

结构:

VGG19 演化而来:

直接使用stride=2的卷积做下采样,并且用global average pool层替换了全连接层。ResNet的一个重要设计原则是:当feature map大小降低一半时,feature map的数量增加一倍,这保持了网络层的复杂度

参考解析:

https://my.oschina.net/u/876354/blog/1637819

http://www.cnblogs.com/alanma/p/6877166.html

https://blog.csdn.net/lanran2/article/details/79057994