inception(inception模型)
作者|李健编辑|言有三1InceptionV1【1】GoogLeNet首次出现在2014年ILSVRC比赛中获得冠军。
作者 | 李健(微信号:lijian05170517)编辑 | 言有三1 Inception V1【1】GoogLeNet首次出现在2014年ILSVRC 比赛中获得冠军这次的版本通常称其为Inception V1。
Inception V1有22层深,参数量为5M同一时期的VGGNet性能和Inception V1差不多,但是参数量也是远大于Inception V1Inception Module是GoogLeNet的核心组成单元。
结构如下图:
Inception Module基本组成结构有四个成分1*1卷积,3*3卷积,5*5卷积,3*3最大池化最后对四个成分运算结果进行通道上组合这就是Inception Module的核心思想通过多个卷积核提取图像不同尺度的信息,最后进行融合,可以得到图像更好的表征。
。
如上图所示,假设我们要提取猫脸特征,而上面两张图的猫脸占比显然不一样,那么我们就得用不同卷积核提取不同信息信息分布比较全局性的图像采用大卷积核,信息分布比较局部性的图像采用小卷积核图b是对图a的改进,即在3*3卷积,5*5卷积前加1*1卷积,目的是为了先进行降维,相比较于原来结构减少了较多参数。
而把1*1卷积放在3*3最大池化之后,相比较放在前面,也是为了参数量的减少由Inception Module组成的GoogLeNet如下图:
对上图做如下说明:1. 采用模块化结构,方便增添和修改其实网络结构就是叠加Inception Module2.采用Network in Network中用Averagepool来代替全连接层的思想实际在最后一层还是添加了一个全连接层,是为了大家做finetune。
3.依然使用Dropout层,防止过拟合4.另外增加了两个辅助的softmax分支,作用有两点,一是为了避免梯度消失,用于向前传导梯度反向传播时如果有一层求导为0,链式求导结果则为0二是将中间某一层输出用作分类,起到模型融合作用。
最后的loss=loss_2 + 0.3 * loss_1 + 0.3 * loss_0实际测试时,这两个辅助softmax分支会被去掉2 Inception V2【2】1.学习VGGNet的特点,用两个3*3卷积代替5*5卷积,可以降低参数量。
2.提出BN算法BN算法是一个正则化方法,可以提高大网络的收敛速度简单介绍一下BN算法就是对输入层信息分布标准化处理,使得规范化为N(0,1)的高斯分布,收敛速度大大提高 Inception V3 学习Factorization into small convolutions的思想,将一个二维卷积拆分成两个较小卷积,例如将7*7卷积拆成1*7卷积和7*1卷积。
这样做的好处是降低参数量paper中指出,通过这种非对称的卷积拆分,比对称的拆分为几个相同的卷积效果更好,可以处理更多,更丰富的空间特征本来还有Inception V4【4】的,考虑到借鉴了微软的ResNet网络结构思想,在后面介绍Resnet中的残差结构时再做介绍。
参考文献【1】Szegedy C, Liu W, Jia Y, et al. Going deeper with convolutions[C]// IEEE Conference on Computer Vision and Pattern Recognition. IEEE, 2015:1-9.
Ioffe S, Szegedy C. 【2】Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift[J]. 2015:448-456.
【3】Szegedy C, Vanhoucke V, Ioffe S, et al. Rethinking the Inception Architecture for Computer Vision[J]. 2015:2818-2826.
【4】Szegedy C, Ioffe S, Vanhoucke V, et al. Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning[J]. 2016.
免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186