CNN模型之NIN

一、介绍

        NIN网络是由Min Lin等人在2014年提出的一个网络嵌套模型,使用微神经网络替换卷积神经网络中的卷积核。通过微神经网络来抽象感受野内的数据。称这种微神经网络结构为mplconv。这篇论文的创新之处主要体现在两个地方,分别是:

  1. 使用微神经网络替换传统卷积神经网络的卷积核。
  2. 使用全局平均池化替代全连接层。
     Comparison of linear convolution layer and mlpconv layer

        微神经网络是由多层感知机实现的,上图中(a)图是传统的通过卷积核窗口在输入数据上滑动,对感受野内的数据进行抽象化。这种方式是线性的。(b)中就是论文提出的微神经网络。这是一种非线性的方式。通过实验,这种方法可以更好的抽象数据的特征。

二、模型结构

NIN网络结构
        NIN网络中包括三个mplconv层和一个平均池化层的叠加。

  • 第一个mplconv:$5\times5$conv(ReLU) + $1\times1$conv(ReLU) + $1\times1$conv(ReLU+MaxPool+Droput)
  • 第二个mplconv:$5\times5$conv(ReLU) + $1\times1$conv(ReLU) + $1\times1$conv(ReLU+AvgPool+Droput)
  • 第三个mplconv:$3\times3$conv(ReLU) + $1\times1$conv(ReLU) + $1\times1$conv(ReLU)
  • 平均池化层:通过平均池化得到的结果输入softmax中。

        从网络的结构中,我们可以注意到MPL的实现是通过$1\times 1$的卷积核实现,$1\times 1$的卷积核可以实现跨通道的交互和信息融合,可以对通道数进行降维和升维。在之后的ResNet、GoogLeNet网络中也用到。另外一个改进是全局平均池化代替全连接层。我们都知道全连接层参数多且容易发生过拟合。通过mplconv最后一层让每一类对应一个特征图。然后使用平均池化进行运算,在输入到softmax中得到最后的分类结果。并且全局平均池化也起到了正则化的作用。实验结果如下:
实验结果

三、总结

        NIN网络可以总结为两个方面的改进,一是使用微神经网络代替卷积核,二是使用全局平均池化代替全连接层。经过在cifar-10数据上实验,此网络的结果要好于当前的最好模型。在看这个网络时, 我也看了很多其他的网络,也听说过这个网络。当我读完论文之后,确实给我拓宽了思路,原来这块也可以更改。同样可以达到更好的结果。因此。我的感悟还是要见多识广。学习别人的思路。

友情链接:
代码实现:https://github.com/guoyuantao/CNN_Model/tree/master/CNN_on_cifar_ByPytorch
联系方式:2391855138(加好友请备注)


   转载规则


《CNN模型之NIN》 G&L 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
CNN模型之VGGNet CNN模型之VGGNet
一、介绍        VGGNet是于2014年由牛津大学计算机视觉组和DeepMind公司共同研究的。在2014年的ILSVRC比赛上获得了分类项目的第二名
下一篇 
CNN模型之ZFNet CNN模型之ZFNet
一、介绍        ZFNet是Matthew D.Zeiler于2013年提出,并获得了13年ImageNet的冠军。2012年AlexNet问世,并在I
  目录