目录

CV_9经典网络分析(上)


经典网络分析(上)

1.AlexNet

主要贡献:

  • 提出卷积层加全连接层的卷积神经网络
  • 首先使用Relu激活函数
  • 首次提出dropout正则化
  • 使用加入动量的小批量梯度下降优化算法
  • 使用数据增强抑制过拟合
  • 使用GPU进行并行计算

结构:

  • 5个卷积层
  • 3个全连接层

https://s3.bmp.ovh/imgs/2022/08/01/1e09b81dc032556b.png

计算过程

  1. 去均值:算出每个位置(像素)的rgb平均值,在输入图像后先将该图像向量化并减去平均值向量
  2. CONV1:96个11*11*3的卷积核,步长为4,无零填充
  3. MAX POOL1:窗口大小3*3,步长为2$\to$重叠池化,有助于对抗过拟合(重叠池化现已广泛被非重叠池化代替)
  4. NORM1:已弃用,作用不大但是会带来计算量的提升
  5. CONV2:246个5*5卷积核,步长为1,使用零填充p=2
  6. MAX POOL2 + NORM2
  7. CONV3,CONV4:384个3*3卷积核,步长为1,使用零填充p=1
  8. CONV5:256个3*3卷积核,步长为1,p=1
  9. MAX POOL3:进一步缩小特征图尺寸
  10. FC6,7,8:全连接神经网络

重点:

  • 卷积层与全连接层是同时学习的
  • 学习过程中互相促进
  • 验证集损失不下降则手动降低10倍学习率(经验)
  • 集成多个模型,进一步提高精度

AlexNet卷积层作用:

  • 从数据中学习有助于分类的结构特征
  • 描述输入的结构信息
  • 结果储存于最终输出的特征响应图中

2.ZFNet

结构同AlexNet一致

提升:

  • 第一卷积层卷积核大小改为7*7,步长改为2$\to$特征提取更为细致
  • 第二三卷积层步长调整为2$\to$与上一条结合使得信息损失速率下降
  • 增加三四层卷积核个数$\to$可视化后发现三四层已经包含语义信息,应该增加数量从而记住更多不同语义

3.VGG16

  • 只使用3*3的卷积核串联获得更大的感知野 *感知野:感知范围

  • 去掉了NORM层

    https://s3.bmp.ovh/imgs/2022/08/01/58a500e920726c91.png

预处理:

  • Alex:对每点求平均后减平均
  • VGG:对全部点求总rgb平均后减(可以减少计算)

特点:

  1. 13个卷积层和3个全连接层
  2. 分为五段卷积层,每一段卷积层中卷积核的个数相同
  3. 采用最大池化,窗口为2*2,步长为2
  4. 每次池化使得卷积核数量翻倍,直到512(更多核导致计算量过大)
    • 前层学习基元
    • 后层学习语义

思考:

  • 使用小卷积核构建网络使得网络深度更深,非线性更强,参数更少
  • 池化使得内存占用明显减少

3.GoogLeNet

改进:

  • 提出Inception结构,可以保存更多特征信息

  • 去掉AlexNet前两个全连接层,在得到最终特征响应图组后使用平均池化$\to$只有五万参数,比AlexNet减少了12倍

  • 加入辅助分类器,减少梯度消失问题

串联结构问题:信息不断丢失,如果前层丢失信息,后层无法找回

Inception模块

https://s3.bmp.ovh/imgs/2022/08/01/211d090f64cd8e58.png

解读:

  • 1*1卷积(黄色模块):将空间信息压缩保留

  • 3*3卷积:提取小感知野信息

  • 5*5卷积:提取大感知野信息

  • 3*3最大池化:将强信号向周围扩展

  • 1*1卷积(红色模块)降低计算量

最终网络结构:

https://img-blog.csdnimg.cn/20190711215516297.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lhb2NodW5jaHU=,size_16,color_FFFFFF,t_70

补充资料:

GoogLeNet网络结构详解(代码)

深度学习经典网络(3)GoogleNet网络结构详解