5_InceptionV2/V3
作者:互联网
Rethinking the Inception Architecture for Computer Vision重新思考计算机视觉中的Inception结构
网络设计原则
- 尽量避免信息瓶颈,通常发生在池化层,即特征图变小,信息量减少,类似一个瓶颈
- 采用更高维的表示方法能够更容易的处理网络的局部信息
- 大的卷积核可以分解为数个小卷积核,且不会降低网络能力
- 把握好深度和宽度的平衡
卷积分解
-
5 * 5分解为两个3 * 3
-
分解为非对称卷积(Asymmetric Convolutionals)
1个n * n卷积分解为1 * n卷积和n * 1卷积堆叠,对于3 * 3而言,参数减少1-(3+3)/9 = 33%
注意事项:非对称卷积在后半段使用效果才好,特别是特征图分辨率在12-20之间,本文在分辨率为17 * 17的时候使用非对称卷积分解
辅助分类层
辅助分类层再探讨
GoogLeNet-V1中提出辅助分类层,用于缓解梯度消失,提升低层的特征提取能力
本文对辅助分类层进行分析,得出结论
- 辅助分类层在初期起不到作用,在后期才能提升网络性能
- 移除第一个辅助分类层不影响精度
- 辅助分类层可辅助低层提取特征是不正确的
- 辅助分类层对模型起到正则的作用
- googlenet-v3在17*17特征图结束接入辅助分类层
高效特征图的下降策略
传统池化方法存在信息表征瓶颈(representationalbottlenecks)问题(违反模型设计准则1),即特征图信息变少了(如图9左图所示)
简单解决方法:先用卷积将特征图通道数翻倍,再用池化
存在问题:计算量过大
解决方法:用卷积得到一半特征图,用池化得到一半特征图
用卷积得到一半特征图,用池化得到一半特征图
用较少的计算量获得较多的信息,避免信息表征瓶颈(representational bottlenecks)
该Inception-module用于35 * 35下降至17 * 17以及17 * 17下降至8 * 8
标签平滑
标签平滑
传统的One-hot编码存在问题——过度自信,导致过拟合
提出标签平滑,把One-hot中概率为1的那一项进行衰减,避免过度自信,衰减的那部分confience平均分到每一个类别中
inceptionV2/V3
Inception-V2针对v1主要变化:
1.采用3个3 * 3卷积替换1个7 * 7卷积,并且在第一个卷积就采用stride=2来降低分辨率
2.第二个3个3+3卷积,在第2个卷积才下降分辨率
3.第一个block增加一个inception-module,第一个inception-module只是将5 * 5卷积替换为2个3 * 3卷积
4.第二个block,处理17 * 17特征图,采用非对称卷积
5.第三个block,处理8 * 8特征图,遵循准则2,提出拓展的卷积
6.最后输出2048个神经元,V1是1024个神经元
InceptionV3:在lnceptionV2基础上改进4点
1.采用RMSProp优化方法
2.采用Label Smoothing正则化方法
3.采用非对称卷积提取17*17特征图
4.采用带BN的辅助分类层
从v2开始,基于上个模型添加新trick最后一个模型称为inception-v3
低分辨率图像分类策略
实验结果
单模型下网络对比
对比GoogLeNet-V1、V2,以及Inception-V2和本文采用的4个技巧,得到最优的Inception-V2 BN auxiliary(Inception-V3)
论文此表格TOP1和TOP2error应该互换,也是但模型对比
此为多模型对比
论文总结
关键点&创新点:
- ·非对称卷积分解:减少参数计算量,为卷积结构设计提供新思路
- ·高效特征图下降策略:利用strIae=2的卷积和池化,避免信息表征瓶颈
- ·标签平滑:避免网络过度自信,减轻过拟合
代码解读
基本组件:
- InceptionA:用于第一个Inception Block
- InceptionB:高效特征图分辨率下降方式,对应论文中的 Efficient grid size reduction,保持参数量大体不变,左侧3 * 3/2的卷积,右侧maxpool
- InceptionC:用于17*17特征图的处理(非对称卷积)
- InceptionD:用于特征图降维
- InceptionE:用于8 * 8特征图处理
- InceptionAux:对应论文图8,接在17*17特征图之后
标签:辅助,17,卷积,特征,V3,InceptionV2,Inception,非对称 来源: https://blog.csdn.net/Code_Haruka/article/details/116894229