Network In Network
成果预览
2013年林敏、颜水成等人提出Network in Network,对标2012年ILSVRC分类冠军AlexNet,在取得相同成绩的前提下,其模型仅为AlexNet大小的十分之一。
先放一张NIN的网络结构图
问题提出
- 传统卷积神经网络高层特征可以视作底层特征的某种组合,当需要提取潜在的高度非线性特征时,如果使用庞大的卷积层,弊端太明显。
- AlexNet中最后两层的全连接参数占整个网络的90%。
传统CNN利用低层的卷积来提取特征,最后一个卷积层输出的feature map被向量化然后送入到全连接层,其后面跟着一个softmax logistic regression层。利用卷积+池化作为特征提取器,用全连接层连接分类函数做分类。
创新点:
一、 使用MLP卷积层提取潜在的非线性特征
CNN中的卷积滤波操作是底层数据的广义线性模型(GLM),但GLM的抽象能力较低。(抽象是得到对同一概念的不同变体保持不变的特征。)如果要提取的特征是高度非线性的。传统的卷积神经网络采取的做法是使用大量的线性卷积操作,带来的后果是计算量庞大、参数冗余、内存开销等问题。
CNN高层的特征是由低层特征是某种运算的组合,
为了更好地近似出对潜在空间的抽象表示,需要利用更具表达能力的非线性函数近似器来对局部快进行特征提取。比线性模型更好的模型有Radial basis network(径向量网络),multilayer perception(多层感知机).
MLP包含以下性质:
- 可利用反向传播进行训练,能够与CNN完美融合;
- 多层感知机本身就是一个深度模型,其特征可以再利用;
所以选择MLP替换传统convolution层
文章指出:跨通道参数池层等价于卷积核大小为1*1的卷积The cross channel parametric pooling layer is also equivalent to a convolution layer with 1x1 convolution kernel. This interpretation makes it straightforawrd to understand the structure of NIN.
’
1.传统卷积神经网络的卷积过程
传统的卷积神经网络的卷积过程一般是:卷积+非线性激活,输入到输出的映射为:
(i,j)
代表图片像素点索引,
x
i
,
j
x_{i,j}
xi,j表示当前filter窗体,k是特征图索引。
convolution是线性的,可视作简单的广义线性模型,它只能对输入作较为低级的特征抽象。对于潜在的非线性特征,需要用非线性模型来表达。
作者想利用MLP代替传统的线性卷积核,从而提高网络的表达能力。文中同时利用了跨通道pooling的角度解释,认为文中提出的MLP其实等价于在传统卷积核后面接cccp层,从而实现多个feature map的线性组合,实现跨通道的信息整合。
2.单通道mlpconv结构图
对于单通道mlpconv,1*1卷积对应着给输入数据乘以某一系数。
3.跨通道的mlpconv结构图
跨通道的mlpconv,CNN里的卷积大多都是由多个大小的filter在不同的feature map上进行操作。(输入的多通道feature map和一组卷积核做卷积求和求得一个输出)
mlpconv中仅改变了卷积的方式:为了引入更多非线性元素,采用MLP
+activation function
+ReLU
(卷积+激活+1*1卷积[全连接]+激活
)
从跨通道池化/跨特征池化[cross channel (cross feature map) pooling],方程2等价于正规卷积蹭上跨通道级联参数池(cascaded cross channel parametric pooling)。每一个池层对输入特征映射加权线性重组,然后通过ReLU
,跨通道池映射在下一层中又继续跨通道池。
二、使用GAP代替全连接层
传统的CNN中,较低层使用卷积特区特征,最后一层卷积得到的feature map被矢量化进行全连接,然后使用softamx分类,在AlexNet中,最后两层全连接产生的参数超过网络参数的90%。这容易导致过拟合,影响整个网络的泛化能力。在之前的结构中会采用dropout方式防止过拟合。
NIN 中提出了 global average pooling,GAP
来替代全连接层。GAP
的概念非常简单,分类任务有多少个类别,就控制最终产生多少个feature map。对最后一层卷积产生的每个feature map做average pooling然后将得到的特征图的空间平均值作为相应类别的置信度,类似FC层输出的特征向量,再经过softmax分类.
优点有:
- 全局均值池化(有通道之间的交互)过程中,不需要训练参数,防止过拟合
- 通过加强eature map与类别的一致性,让卷积结构更加简单
- 对空间信息求和,对输入的空间变化表现更加稳定
注意:
- 分类类别为N,则最后一层卷积输出的feaure map数也是N
理解1*1卷积
- 实现跨通道的交互和信息整合(跨通道池化)
- 增加或者减少feature map的数量(升维或降维),这反映在GoogLeNet、resNet中
- 在保持feature map尺寸不变的情况下[不损失分辨率比的前提下],增加非线性特征
参考文献:
1.对卷积神经网络中11 卷积的理解
2.如何理解NIN网络中的mlpconv层
3.关于11卷积核的理解
4.(Paper)Network in Network网络分析