本文内容同个人微信号推送文章:经典卷积神经网络(Classic Convolutional Neural Networks)


InceptionNet在2014的GoogleNet比赛中取得了第一名,与VGG同年。由Google提出。

InceptionNet V1

InceptionNet V1网络的结构为:

该网络有9个Inception module线性叠加,深度为22层(包括池化层为27层)。

特点1:Inception Module

在同一级别上运行多种尺寸过滤器。因为在不同的图片中,信息位置的大小的变化的,例如有的信息占据图片很大空间,而有的信息占据图片很小空间。因此选择一个合适大小的卷积核很困难。大的卷积核有利于提取全局信息,而小的卷积核有利于提取局部信息。

其解决方案就是Inception模块,对输入使用3中大小不同的滤波器(1*1,3*3,5*5)进行卷积操作,使得网络可以提取到“稀疏”和“不稀疏”的特征,增加了网络深度的同时增加了网络对尺度的适应性。还进行了最大池化。输出连接到下一个Inception模块(如下图所示)。

为了降低计算成本,对Inception module进行了改进。在3*3和5*5的卷积之前加入额外的1*1的卷积来限制输入通道的数量,同时增加网络深度。输入通道数量的减少能够使得计算量减少(如下图所示)。

use 1×1 and 3×3(or 5×5) filters to reduce the number of parameters.

there are different sizes of convolutions for each layer. It can extract different kinds of features.

特点2:Auxiliary Classifiers for Training

使用了辅助分类器。

InceptionNet是一个很深的网络,当网络深度较深时,将面临梯度消失问题。InceptionNet引入了辅助分类器,通过将softmax应用于两个Inception模块的输出,计算标签上的辅助损失(Auxiliary loss)。总损失是辅助损失和实际损失的加权和。每种辅助损失的权重为0.3。

The loss is added to the total loss, with weight 0.3。

InceptionNet V2

InceptionNet V2网络在InceptionNet V1的基础上进行了改进,提高了模型的准确性。Inception v2相比Inception v1在ImageNet的数据集上,识别误差率由29%降为23.4%。

特点3:将5*5的卷积分解为两个3*3的卷积运算叠加

将5*5的卷积分解为两个3*3的卷积运算叠加。减少了训练的参数个数,提高网络的性能。

同时,将大小为n*n的滤波器分解为1*n和n*1的卷积的组合。

特点4:滤波器被扩展

模块中的滤波器被扩展,变得更加宽而不是更加深。从而可以提取出更多的特征,避免信息的丢失。

InceptionNet V3

InceptionNet V3网络在InceptionNet V2的基础上进行了改进。

改进有:

1.RMSProp优化器。

2.分解7×7卷积。(使用了71和17的卷积代替7*7)

3.辅助分类器中的BatchNorm。

4.标签平滑(添加到损失公式中的一种正规化组件,可防止网络对类过于自信。防止过度拟合)。

InceptionNet V4

InceptionNet V4网络将原来的卷积、池化的顺序替换为了stem模块,获得了更深的网络结构。

stem模块

stem模块为:

stem之后和Inception V3一样,是Inception模块和Reduction模块。

Inception模块

Inception模块为:

上图中分别表示InceptionA、InceptionB和Inception C。

Reduction模块

Reduction模块为:

上图中分别表示ReductionA和ReductionB。

Inception V4模型最终的结构为:

0
Posted in 深度学习&强化学习

Leave a Comment:

电子邮件地址不会被公开。