CNN学习笔记(二)

一、经典CNN网络结构

1.LeNet

LeNet-5是一种用于手写体字符识别的非常高效的卷积神经网络。

网络包括七层结构:

  • C1卷积层
  • S2下采样层
  • C3卷积层
  • S4下采样层
  • C5卷积层
  • F6全连接层
  • F7输出层
LeNet网络结构.png

2. AlexNet

 AlexNet是在LeNet的基础上加深了网络的结构,可以学习到更高维的图像特征。AlexNet包括8层权值网络层:五层卷积+三层全连接,使用了两块显卡训练了6天,在2012年ImageNet大赛上取得了冠军。

AlexNet网络在结构上的优化:

  • 引入了一种特殊的网络层次:Local Response Normalization(LRN,局部响应归一化),主要是对Relu激活后的输出进行局部归一化操作。

  • 每个卷积层使用了不同的滤波器进行卷积计算:
    第一层卷积核尺寸:
    第二层卷积核尺寸:
    第3~5层卷积核尺寸:

  • 增加了Max Pooling层

  • 使用ReLu作为激活函数,替换了之前的sigmoid函数

  • 使用Dropout抑制过拟合

  • 使用了数据增强

  • 使用了带动量的SGD(momentum)

  • 多GPU训练

AlexNet络结构.png

3.ZFNet

在AlexNet的基础上,进行了微调:

  • 修改了滤波器尺寸和步长:
    第一层的滤波器- 尺寸从 减小为
    第一层的步长(stride)从4降到2
  • 使用单GPU代替了AlexNet的双GPU结构

4.VGGNet

使用了非常统一的串行结构,是传统CNN神经网络中最优的模型。

网络特点:

  • 使用了更小的滤波器
  • 参数非常多:包含了1亿3千8百万参数
  • 使用了4个GPU训练了3个星期
  • 虽然是亚军,但是却非常普遍的用于特征提取/图像表达

总结:

VGG网络结构.png

5.GoogleNet

 GoogleNet是基于Inception模块的深度神经网络模型。在2014年的ImageNet竞赛中夺得了冠军,在随后的两年中一直在改进,形成了Inception V2、Inception V3、Inception V4等版本。

网络特点:

  • 改变了CNN网络的串行结构,变为并行
  • 使用了Batch Normalization
  • 使用了Inception模块
  • 使用了图像增强、RMSprop优化器
  • 使用了比较小的滤波器,虽然有22层,但总参数只有4百万


 使用较大的卷积核往往意味着巨大的运算量,理论已经证明,往往可以通过几个较小的卷积核来代替较大的卷积核,从而使得计算量的下降。

1)Inception原始网络结构,将1x1,3x3,5x5的conv和3x3的pooling堆叠在一起,一方面增加了网络的宽度,另一方面增加了网络对尺度的适应性。

原始结构.png

2)Inception改进后的网络结构,借鉴了的思想,在原先的卷积过程中使用的卷积,通过减少通道数,以期达到减少参数计算量的目的。

改进的结构.png

* NIN(network-in-network)
 的卷积可以用来进行降维打破计算的瓶颈,同时也能增加网络的宽度,保持网络较高的性能。

* Inception结构参考链接:https://www.jianshu.com/p/d214112771b9

6.ResNet

  • 解决了深度神经网络的‘网络退化’问题
  • 解决了深度神经网络的梯度消失问题

残差结构:

残差结构.png

ResNet模块:

ResNet模块.png

ResNet网络结构:

ResNet网络.png

你可能感兴趣的:(CNN学习笔记(二))