5.Googlenet

参考博客https://blog.****.net/cdknight_happy/article/details/79247280

1 Going Deeper with Convolutions

1.1 摘要

作者在文中提出了一种新的叫做Inception的结构,取得了ILSVRC-2014的分类和检测任务的冠军。作者设计的网络具有很大的depth和width,但是参数数量却仅为AlexNet的1/12。
5.Googlenet
建议低层网络依然是传统卷积操作,网络高层才使用Inception结构。这么设计结构能起到比较好的作用的直观理解是,对图像进行多尺度的处理然后聚合到一起作为下一层的输入,使得网络学习到多尺度的图像信息。

1.2结构

22层网络;
使用平均池化层(GAP)代替全连接层,top-1准确率有0.6%的提升,虽然移除了全连接层,但还是在GAP后使用了dropout;
网络的中间部位还输出了一个辅助的softmax,可以增强低层网络的判别能力,增强反向传播的梯度的大小,提供额外的正则化能力;
训练过程中,损失值是最后层的softmax loss加0.3*中间输出的softmax loss,推理时,忽略中间的这个softmax输出。
5.Googlenet

2 Batch Normalization

2.1 摘要

作者定义internel covariate shift为每一层的输入数据的分布情况都不一致,这样就需要使用比较小的学习率,网络的收敛速度慢,同时需要比较仔细的进行参数的初始化工作,否则就会造成非线性函数的梯度弥散现象。
作者提出了batch normalization操作,使每一层的输出都归一化到N(0,1)N(0,1)分布。好处是可以使用比较大的学习率,可以很容易的进行参数初始化,并且还具有类似于dropout的防止过拟合的效果。
使用BN层,实验表明,网络收敛快了14倍,在ImageNet数据集上top-5 error rate降到了4.9%,超过了人类的识别准确率。
5.Googlenet
5.Googlenet
实现过程中,是对每一个mini-batch自身进行减均值和除方差的归一化操作。5.Googlenet
验表明,BN有一定的正则化作用,使用BN层时可以减小dropout和正则化项的强度。

3 Rethinking the Inception Architecture for Computer Vision

1.用两个33的卷积代替55的卷积
由于图像数据具有平移不变性,卷积内部也是全连接。
一般情况下,网络层数越向后,feature map的w和h越小,但depth应该越大。
相同的卷积效果下减小了参数数量,并且由于使用了更多的非线性**函数,学习到的特征的表达能力更强。
5.Googlenet
2.使用不对称的卷积
将33的卷积分解成1n和n1的卷积,进一步减少了参数。
在网络的前面层这样分解效果并不好,建议在feature map的尺寸m∈[12,20]m∈[12,20]时使用该分解方式,建议分解为17和7*1的形式。
5.Googlenet

4 Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning

摘要

ResNet网络在ILSVRC2015上取得了非常好的成绩,最终的分类准确率和Inception-V3很接近,作者就在考虑将resnet中的“shortcut connection”和inception结构结合起来,作者的实验结果表明使用residual connection可以大大加速inception网络的训练过程,并且可以进一步提升网络的分类准确率,最终作者使用emsemble的模型在ImageNet数据集上取得了3.08%的top-5 error。

简介

本文是对resnet思想和inception结构的结合,用residual connection来代替inception结构中的filter concatenation,得到了Inception-ResNet网络。
作者还研究了新的更加deeper和wider的inception结构,设计了Inception-V4。
作者在实验中证明了不使用residual connections训练一个非常深的网络也没有那么难,但使用了残差连接可以加快训练速度。

Inception-V4的网络结构:

5.Googlenet
5.Googlenet
5.Googlenet

5.Googlenet

总结

从V1提出inception结构,到v2添加了BN层,到V3使用分形卷积,到V4和残差网络结合使用,取得的分类效果也越来越好。