InceptionV3
Sergey Ioffe and Christian Szegedy “Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift” ICML2015
Christian Szegedy et al.“Rethinking the Inception Architecture for Computer Vision” CVPR2016
动机(Why)
ImageNet竞赛刷点,提出计算更高效,更宽更广的模型
Introduction 中还提到DNN的一些的前沿应用
- RCNN (Object detection)
- Segmentation (全卷积网络)
- human pose estimation (Deeppose)
- video classification (李飞飞 CVPR2014)
- object tracking (NIPS 2013)
- superresolution (何凯明 ECCV2014,TPAMI2015)
方法(How)
-
General Design Principles
- 原则一:避免representation bottlenecks: 过度降维;feature map 的长宽应该随网络加深逐渐减小
- 原则二:Higher representations are easier to process locally within a network 特征越多,收敛越快,相互独立的特征越多,区分度越大
- 原则三:spatial aggregation can be done over lower dimensional embeddings without much or any loss in representational power
- 原则四:平衡width,depth
-
Facterizing Convolutions with Large Filter Size
- 大卷积替换成多层小卷积,只要提供相同大小的感受野就行了 ---- 减少了参数量
- Spatial Factorization into Asymmetric Convolutions: n x n --> 1 x n & n x 1
-
Auxiliary Classifiers
V1认为辅助分类器让浅层也学习到特征,辅助分类器能在浅层注入梯度,防止梯度消失;
这篇文章认为辅助分类器不能帮助模型更快收敛;辅助分类器只是起到了正则化的作用,所以这篇文章改为BN和Dropout来做正则化
-
Efficient Grid Size Reduction
原本方法:先池化再卷积违反原则一(过度降维浅层丢失信息),先升维再池化(计算量增加)都很expensive
高效下采样:
池化和卷积并行的Inception模块 ;加深——两条路径做卷积(卷积分解),一条路径做池化,再沿channel摞在一起
扩展滤波器组: 加宽——用在模型的最深处,符合原则二:相互独立的特征越多,区分度越大,在最后分类层之前生成高维稀疏特征
-
Inception-V3(此文中Section6 标题为Inception-V2,但后来出了Inception-V4之后,我们一般把这篇文章提出的模型称之为Inception-V3,BN的那篇文章称之为Inception-V2)
-
正则化之——标签平滑(LSR,Label Smooth Regulerzation)
因为交叉熵损失的原因,让label更趋近于softmax之后的分布(0.33,0.9,0.33,0.33),而不是独热编码(0,1,0,0)
防止过拟合:如果按照独热编码,网络就会尽可能让softmax之后的数为(0.0001,0.99999,0.00001,0.0000)那么在前一层得到的值就变成了(0.0001,正无穷,0.00001,0.00001)过于偏向正确标签
Hiton “When Does Label Smoothing Help?”
知识蒸馏(KD):通过引入teacher(复杂模型),诱导student(简单模型)的训练;
- 以下两篇KD的文章,解释了GoogleNet中采用的LSR和辅助分类器的作用:
FITNETS:Hints for Thin Deep Nets【ICLR2015】
deep是DNN主要的功效来源,之前的工作都是用较浅的网络作为student net,这篇文章的主题是如何mimic一个更深但是比较小的网络。
使用的方法直觉上来讲也是直接的:既然网络很深直接训练会很困难,那就通过在中间层加入loss的方法,通过学习teacher中间层feature map来transfer中间层表达的知识,文章中把这个方法叫做Hint-based Training。(Inception V1 采用了该方法:辅助分类器)
“Knowledge Distillation in Generations: More Tolerant Teachers Educate Better Students” [AAAI2019]
硬标签会导致模型产生过拟合现象,soft label对于模型的泛化能力有所帮助
常用的标签处理策略:label smoothing regularization(lsr)**(Inception V3 采用了该方法:LSR)**和confidence penalty(CP)两种方法,但其缺点是考虑了所有的类。本文提出了一个更合理的方法,没有计算所有类的额外损失,而是挑选了几个具有最高置信度分数的类。
teacher的loss中加入一个约束:min置信度Top1的标签的和其余K-1个标签平均值之间的gap
训练student的时候,用teacher 的soft label 和 hard label 融合
论文中实验在CIFAR-100和ILSVRC2012分类数据集上 涨点3%~8% 不等
扩展应用
分类,检测,迁移
英文表达
- The common wisdom is that models employing higher resolution receptive fields tend to result in significantly improved recognition performance. (有一个共识:高分辨率的感受野能得到更好的识别效果
- All three networks have almost identical computational cost.
- Factorized 7 × 7 includes a change that factorizes the first 7 × 7 convolutional layer into a sequence of 3 × 3 convolutional layers.
实验设计
- TensorFlow,50 个副本对应50个GPU,分别batchsize 32,100 epoch,RMSprop decay of 0.9, ϵ = 1.0
- 实验发现,在算力固定的情况下,感受野越大,越准
- 对比了 不同的参数设置,和数据增强(multi crop)
优缺点分析
- LSR
- Factorized 7 X 7 into a sequence of 3 x 3
- not just the convolutional layer but also the auxiliary classifier‘s fc layer is batch normalized
- 计算复杂度进一步降低