Network In Network

本文转自:http://blog.csdn.net/sheng_ai/article/details/41313883

一.文献名字和作者

     Network In Network.Min Lin, Qiang Chen, Shuicheng Yan
  

二.阅读时间

    2014年11月19日(我是2015.12.9)

三.文献的目的

    文章主要是对于CNN结构进行改进,使得CNN能够学习到更加抽象和有效的非线性特征。

四.文献的贡献点

4.1 卷积层的改进--多层感知卷积层

    传统的卷积层只是将前一层的特征进行了线性组合,然后经过一个非线性激活。而在文章中,作者提出了使用一个微小的神经网络(主要是多层感知器)来替代普通的卷积过程,当然,这个微小的神经网络也和卷积的权值共享一样,即对于相同的特征层是相同的。传统的卷积过程和微网络分别如图1所示。
Network In Network_第1张图片
                                      图1 线性卷积层和微网络卷积层
     作者之所以进行这样的改进,主要是因为,传统的卷积层只是一个线性的过程,而且,层次比较深的网络层是对于浅层网络层学习到的特征的整合,因此,在对特征进行高层次整合之前,进行进一步的抽象是必要的,因此,使用微网络进行进一步的抽象。
    传统的卷积层可以用式(1)表示:
Network In Network_第2张图片
    使用微网络的卷积层可以用式(2)表示:
Network In Network_第3张图片
    对于选择多层感知器作为微网络结构,主要是处于下面两个方面的考虑:1.多层感知器也是使用BP算法进行训练的,可以与CNN进行整合;2.多层感知器也可以作为一个深层结构,也包含了特征重用的思想。
    从跨特征特征图Pooling的观点来看,式(2)也可以看做在一个卷积层上面进行了级联的跨特征图的pooling。进行级联的跨特征图的操作可以使得网络学习到复杂和有用的跨特征图整合特征。
    跨通道(特征图)的参数化pooling层等效于一个卷积核为1*1的卷积层。
    Network In Network_第4张图片
                               图2 跨通道参数化pooling


4.2 对于全连接层的改进--全局平均Pooling

    文中作者使用了全局平均pooling来代替全连接层,这个主要是为了使得最后一个多层感知卷积层获得的每一个特征图能够对应于一个输出类别。
    使用全局平均pooling的优点有两个:1.使用全局平均pooling能够强化特征图与类别的关系;2.全局平均pooling没有参数需要进行优化,因此,可以避免在这一层出现Overfitting。
    全局平均pooling的过程是:对于每一个特征图求出其平均数,然后将这些平均数组成一个特征向量,输入到softmax层中。
    全连接层和全局pooling层的结构对比如图3。
    可以将全局平均pooling看做一个结构惩罚项,用于显性强迫特征图成为类别的置信度图
Network In Network_第5张图片
                                   图3 全连接层与全局平均pooling的对比


4.3 Network in Network结构

    Network in Network的结构如图4。
    Network in Network的优点有下面三点:1.更好的局部抽象;2.更小的全局Overfitting;3.更少的参数(没有全连接层)
Network In Network_第6张图片
                               图4 Network in Network结构
    
    


五.使用的数据库

    CIFAR-10, CIFAR-100, SVHN and MNIST.

六.实验结果

Network In Network_第7张图片
Network In Network_第8张图片
Network In Network_第9张图片
Network In Network_第10张图片
Network In Network_第11张图片
Network In Network_第12张图片
Network In Network_第13张图片


版权所有,欢迎转载,转载请注明出处,谢谢微笑

你可能感兴趣的:(Network In Network)