经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强

序言

Google的Inception网络是卷积神经网络 (CNN) 分类器发展中的一个重要里程碑。
inception前,CNN 只是将卷积层堆叠得越来越深,GO DEEPER。
inception后,CNN花样百出,卷积层的表现力越来越强,NOT ONLY GO DEEPER, BUT ALSO GO STRONGER!

Inception模型进化史-从GoogLeNet InceptionV1到InceptionV4

Inception模型进化史:从GoogLeNet到Inception-ResNet
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第1张图片

网络结构

图解

GoogLeNet Inception V1

GoogLeNet InceptionV1
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第2张图片
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第3张图片

Inception V2

GoogLeNet InceptionV2 【卷积分解(Fatorizing Convolutions)】
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第4张图片
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第5张图片
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第6张图片
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第7张图片
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第8张图片
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第9张图片

Inception V3

GoogLeNet InceptionV3 【卷积分解(Fatorizing Convolutions),与InceptionV2出现在同一篇论文之中】
最重要的改进就是分解,把7x7分解成两个一维的卷积(1x7和7x1),把3x3分解成两个一维的卷积(1x3和3x1)。

Inception V4

GoogLeNet InceptionV4
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第10张图片
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第11张图片
经典CNN结构之GoogLeNet(inception_v1/inception_v2/inception_v3/inception_v4) 卷积更强_第12张图片

详解

Inception V1

Inception-v1即大名鼎鼎的GoogLeNet,2014年ImageNet竞赛冠军得主,力压VGG脱颖而出,它的名字也是为了致敬较早的LeNet网络。
【设计网络中间层两个附属loss作用】深度监督策略,paper中描述是为了避免梯度消失,一种正则化手段;
==【1x1卷积核作用】==减少维度,还可修正线性激活(ReLU);
【卷积层之后采用GlobalAveragePooling层而不是全连接层的原因】减少参数量。

Inception V2/V3

核心理念是==【Factorization-因子化】==,既可以加速运算,又可以将一个卷积拆成两个卷积,这样使得网络的深度进一步加深,并且增加了网络的非线性。
1.采用5x5卷积,参数量是5x5=25,而两个3x3卷积的参数量是3x3+3x3=18,参数量减少了28%,但是两者效果是等价的(感受野)。
2.将nxn的卷积分解成1xn和nx1卷积,例如3x3卷积进行分解成1x3和3x1两个卷积,参数量是3x3=9,而1x3和3x1两个卷积的参数量是1x3+3x1=6,参数量减少了33%。
3.不再直接使用max pooling层进行下采样,因为这样导致信息损失较大。paper使用了ShuffleNet网络中也采用的策略:两个并行分支中一个是pooling层,另外一个卷积层,最后将两者结果concat在一起,实现下采样功能。

Inception V4

Inception-v4就是利用残差连接(Residual Connection)来改进v3。同时,提出了
Inception-ResNet算法模型,其中Inception-Resnet-v1对标Inception-v3,而Inception-Resnet-v2对标Inception-v4,两者计算复杂度类似。

创新思想

核心点

Inception V1

1.go deeper ==>> go wider;
2.1X1 convolutions 限制输入通道数量;
3.引入了2个辅助分类器。

Inception V2/V3

1.5×5 卷积使用两个 3×3 卷积代替;
2.n×n卷积分割为1×n和n×1两个卷积。

Inception V4

引入Resnet的shortcut思想

感悟点

1.go deeper多了,可以试试go wider,没准就go stronger了呢,谁知道呢!工作生活中也是同理。
2.Google侧面证明了ResNet的重要意义,大巧若拙。

参考论文

[1]Going deeper with convolutions
[2]Rethinking the Inception Architecture for Computer Vision
[3]Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning

你可能感兴趣的:(深度学习,cnn,深度学习,神经网络)