Network In Network,顾名思义,即网络中的网络,传统卷积网络都是feature map + filter线性输出,输出结果再通过一个非线性函数进行激活。filter对感受野的线性组合只能区分那些线性可分的特征,但是对于那些线性不可分特征,则要使用更加复杂的非线性函数才行,另一种解决方式是使用够多的filter,将所有的情况都考虑到,但是这种方式不论是参数数量还是计算量都只存在与理论中。
因此,文中作者提出了NIN网络,即感受野中的每一个像素不在是与filter进行简单的点乘,而是将这一个感受野中的所有像素点作为一个多层感知机的输入,最后的输出也就相当于传统卷积filter点乘的输出。至于为什么要用多层感知机,因为多层感知机的表达能力强,线性非线性都能解决,其次是多层感知机方便梯度下降。
上面的图和说明如果看不懂,对着公式看看就明白了:
传统采用线性组合(即矩阵点乘),ReLU激活的卷积
在传统卷积中,w就是filter,x就是感受野。WTX就是点乘。
NIN中使用MLP取代了filter和感受的点乘
而在NIN中使用MLP取代了filter和感受的点乘,不仅能拟合表达线性信息,还能表达非线性信息,因此更加的强大。这里的k指的是第k个channel,而n指的是第n层MLP层。
最后一个MLP输出的结果是由各个channel的结果进行一个线性组合的结果,这一步相当于一个1x1卷积核的作用,在传统卷积中这里是一个filter与各个channel的feature map点乘然后直接相加的。
文中还提到了maxout,maxout与传统卷积类似,只是他在filter与不同感受野相乘后不是相加,而是输出那个最大值,max能很好地拟合任何凸函数,但是对于非凸函数可能就比较无能为力了。
其次,文中还提出了另一种池化方式——global pooling。使用global pooling来取代传统卷积的全连接层。传统的卷积是将最后的卷积层提取到的特征进行拉伸成为一个一维向量,然后使用全连接进行分类。这样容易丢失图片的特征信息,而使用global pooling能够提取到图像的空间特征信息,而且global pooling的结果直接传给softmax进行分类,这样就直接将提取到的特征信息用来分类,反向传播的时候也很好理解。其次,global pooling不需要参数,减少计算量的同时还能减轻过拟合作用。
参考:
Network In Network.











网友评论