Inception v3是基于Inception v1的改进版。
Inception?V3网络则主要有两方面的改造:一是引入了Factorization?into?small?convolutions的思想,将一个较大的二维卷积拆成两个较小的一维卷积,比如将7?7卷积拆成1?7卷积和7?1卷积,或者将3?3卷积拆成1?3卷积和3?1卷积。
- 一方面节约了大量参数,加速运算并减轻了过拟合(比将7?7卷积拆成1?7卷积和7?1卷积,比拆成3个3?3卷积更节约参数),同时增加了一层非线性扩展模型表达能力。 论文中指出,这种非对称的卷积结构拆分,其结果比对称地拆为几个相同的小卷积核效果更明显,可以处理更多、更丰富的空间特征,增加特征多样性。
下面的模块可以处理上一层中35x35的感受野大小,且处理的图片大小35x35,称35x35grid
一层3x3卷积又可以用一层1x3卷积和3x1卷积来替代
同理,n x n的卷积可以用1 x n 和n x 1的卷积替代:
n = 7 --> 17x17 grid
- 另一方面,Inception?V3优化了Inception?Module的结构,现在Inception?Module有35?35、17?17和8?8三种不同结构,如图所示。这些Inception?Module只在网络的后部出现,前部还是普通的卷积层。并且Inception?V3除了在Inception?Module中使用分支,还在分支中使用了分支(8?8的结构中),可以说是Network?In?Network?In?Network。
Making the inception module wider
设计更宽的inception module
Inception 网络配置
在经过上一层得到的35x35大小的卷积图后,给入3个35x35 grid module 、5个17x17 grid module、2个8x8 grid module处理
对Auxiliary Classifier(辅助分类器)的考虑
- 辅助分类器在训练过程即将结束、准确度接近饱和时才会有很大贡献,并不会帮助更快收敛。·
- 它们起到正则化作用,特别是具有BatchNorm或Dropout操作时。
- 两个辅助分类器中较低层的那个可以去掉
损失函数:标签平滑的模型正则化 Model Regularization via Label Smoothing
另一大改进是引入了标签平滑正则化(label-smoothing regularization, or LSR)可以避免过拟合,防止网络对于某一个类别预测过于自信软标签软标签如下:
是一个较小的数,这样ground truth(正确分类)对应的标签有大部分的概率,而其它类别也有一小部分概率。新的交叉熵损失变为:
K为类别数,当K=1000时,u(k)=1/1000,
等于0.1
- 标签平滑的模型正则化 模型提高%0.2的准确率
Inception v3
BN-auxiliary是指辅助性分类器的全连接层也是批处理规范化的,而不只是卷积。