图像分类经典论文阅读笔记3:GoogLeNet-Going deeper with convolutions

1.概述
GoogLeNet(Inception V1)采用模块化结构,包括500万个参数(AlexNet参数量的十二分之一),网络包括5层卷积层(每层由卷积层或Inception结构堆叠构成)和一个全连接层,共计22层。因此,在计算资源或内存有限时,GoogLeNet是比较好的选择。
论文研究目标:利用赫布(Hebbian)定理多尺度处理直觉设计增加深度和宽度并提高计算资源利用率的稀疏网络结构;
赫布定理:神经元一起激发,一起连接(即视觉信息在不同尺度上处理然后聚合);
评价准则:top-1错误率和top-5错误率:6.67%(取得ILSVRC2014比赛分类项目冠军);
数据库:ILSVRC2014,预处理操作:零均值化
2.网络结构
一般来说,提升网络性能最直接的办法就是增加网络的深度和宽度,深度是指网络层次数量、宽度是指神经元数量。但是这种方法存在以下问题:
(1)参数太多,如果训练数据集有限,容易产生过拟合;
(2)网络越大,参数越多,计算复杂度越大;
(3)网络越深,容易出现梯度消失问题,难易优化模型。
解决上述问题的方法自然就是在增加网络深度和宽度的同时减少网络参数,那么如何减少参数
(1)使用2个3X3卷积代替1个5X5卷积,使用3个3X3卷积代替1个7X7卷积(感受野相同);
(2)通过1X1卷积降维;
(3)将nXn卷积替换成1Xn和nX1卷积。
1X1卷积作用
(1)对输出通道升维或降维,实现跨通道间的信息组合;
(2)连接激活函数RelU,增加非线性。
结构特点:
(1)Inception结构:最初的Inception结构将1X1,3X3,5X5以及最大池化堆叠在一起,这样一方面增加网络宽度,另一方面增加网络对尺度的适应性,虽然符合赫布定理和稀疏结构,但是参数量大,因此Inception V1使用1X1卷积(借鉴NIN)进行降维,减少参数量。
图像分类经典论文阅读笔记3:GoogLeNet-Going deeper with convolutions_第1张图片

(2)辅助分类器:即将中间层(Inception(4a)和Inception(4b))输出辅助分类损失,按照0.3权重加到最终分类结果中,这样相当于模型融合,是为了避免梯度消失(网络结构很深),好处是给网络增加了反向传播的梯度信息,也提供了额外的正则化,在测试时,辅助分类器会去掉;
(3)使用全局平均池化层(将图片尺寸变为1X1)代替全连接层:减少参数量,使得模型训练更快且减轻过拟合(借鉴Network in Network(NIN)想法),最后连接一个全连接层,目的是方便对输出进行灵活调整;
网络结构图:

网络参数量:
图像分类经典论文阅读笔记3:GoogLeNet-Going deeper with convolutions_第2张图片
其中,#3X3 reduce和#5X5 reduce表示在3X3和5X5卷积之前使用1X1滤波器的数量(输入图片大小为224X224X3)。
训练细节:使用异步随机梯度下降,动量设为0.9,学习率每8次遍历下降4%。

参考链接:
GoogLeNet详解
GoogLeNet的TensorFlow实现

你可能感兴趣的:(深度学习,图像分类)