一 为什么读这篇
Inception系列的官方最后一篇,读完这篇,才能说对整个Inception体系有个初步的了解。
二 截止阅读时这篇论文的引用次数
2018.12.31 1610次。引用越来越少了。
三 相关背景介绍
2016年2月刊发于arXiv,不得不佩服作者的高效,v3发表才过了2个多月,v4就出来了。另外从题目上也可以看出来,有不少借鉴ResNet的地方,问题是ResNet也就出来2个多月。。。作者还是Christian Szegedy和Sergey Ioffe分别以一二作合作完成的。最后投在2017年的AAAI。
四 关键词
Inception v4
Inception-ResNet
五 论文的主要贡献
似乎是首次将Inception和ResNet联合起来一起用
六 详细解读
1 介绍
本文的主要研究就是将ResNet和Inception-v3连接起来。除了直接集成,本文也研究了仅仅让Inception变宽变深能否更有效,因此设计了新版本Inception-v4。Inception-v3由于历史原因有很多包袱(DistBelief的锅。。)
2 相关工作
He认为残差连接是训练非常深的卷积网络的必要条件,而本文的发现不支持这个观点,至少在图像识别领域。在实验部分本文证明了不使用残差连接也可以训练很深的网络,但是用残差连接似乎能明显的加速训练。这里对之前的Inception系列代号重新定义,v1也就是GoogLeNet,v2是BN-Inception,v3就是rethinking那篇分解卷积。
3 架构选择
3.1 纯Inception块
图9是Inception-v4的整体架构,图3,4,5,6,7,8分别是不同结构的Inception块。卷积层有V符号的表示valid padding,没有V符号的表示same padding。
inception_v4-fig9.png inception_v4-fig3.png inception_v4-fig4.png inception_v4-fig5.png inception_v4-fig6.png inception_v4-fig7.png inception_v4-fig8.png3.2 残差Inception块
对于残差版本的Inception网络,使用更cheap的Inception块,而不是原始Inception块。
作者们试验了几种残差版本的Inception。本文只介绍两种:"Inception-ResNet-v1"和"Inception-ResNet-v2",其中v1的计算量和Inception-v3差不多,而v2和这次提出的Inception-v4差不多。
图15是这两个网络的整体架构。
Inception_v4-fig15.png inception_v4-fig14.png inception_v4-fig10.png inception_v4-fig11.png inception_v4-fig12.png inception_v4-fig13.png inception_v4-fig16.png inception_v4-fig17.png inception_v4-fig18.png inception_v4-fig19.png3.3 残差缩放
实验中发现当filter的个数超过1000时残差的变种就开始明显的不稳定,同时网络也死了。。
另外发现在加残差之前缩小它似乎可以使训练稳定。通常在加法操作前,乘个0.1到0.3的缩放因子给残差。如图20。
inception_v4-fig20.png当层非常深的时候同时filter很多时,即使用『warm-up』策略训练也还是不稳定,不过缩放残差有用。(把ResNet批判一番。。。)
4 训练方法
起初用带动量的SGD训练,不过效果不如RMSProp。初始lr为0.045,每2个epoch使用0.94的系数指数衰减lr。
5 实验结果
inception_v4-table3.png inception_v4-table5.png inception_v4-fig25.png6 总结
- Inception-ResNet-v1:计算代价和Inception-v3差不多
- Inception-ResNet-v2:更大的计算代价,识别效果明显提升
- Inception-v4:没有残差连接的纯Inception版本,识别效果和Inception-ResNet-v2差不多,但是没它闭合的快
七 读后感
这是近期所看论文中图最多的一篇,占了一大半的篇幅,文字描述没多少,理论公式更是没有,所以读起来比较轻松。读完后感觉就是一篇灌水文,最大的创新点也许就是联合Inception和ResNet一起用,还有可能是首次。看着那些网络结构,实在是太复杂了,不知道作者是怎么搞出来的,那些魔数,感觉就是一堆魔改,没啥理论,试就完了。读完本文后觉得AutoML确实很有必要,因为Inception-v4的这些结构设计似乎都不靠什么先验知识了,调就是了,如果纯调的话人怎么能调的过机器。
网友评论