经典卷积神经网络结构--Network In Network

版权声明:本样板的所有内容,包括文字、图片,均为原创。如有问题可以邮箱[email protected] https://blog.csdn.net/qq_29893385/article/details/84984151

Network In Network 是13年的一篇paper,

引用:Lin M, Chen Q, Yan S. Network in network[J]. arXiv preprint arXiv:1312.4400, 2013.

文章的新点:

1. 采用 mlpcon 的结构来代替 traditional 卷积层; 

2. remove 卷积神经网络最后的 全连接层,采用 global average pooling 层代替;

mplconv 结构:

我们知道线性卷积层的复杂度有限,利用线性卷积进行层间映射也只能将上层特征或输入“简单”的线性组合形成下层特征。而NIN采用了复杂度更高的多层感知机作为层间映射形式,一方面提供了网络层间映射的一种新可能,另一方面增加了网络卷积层的非线性能力,使得上层特征可有更多复杂性和和可能性的映射到下层,这样的想法也被后期出现的残差网络和Inception等网络模型借鉴

conventional 的卷积层 可以认为是linear model , 为什么呢,因为 局部接收域上的每一个tile 与 卷积核进行加权求和,然后接一个激活函数;它的 abstraction 的能力不够, 对处理线性可分的的 concept 也许是可以的,但是更复杂的 concepts 它有能力有点不够了,所以呢,需要引入 more potent 的非线性函数;

基于此提出了 mlpcon 结构,它用多层的感知器(多层全连接层和非线性函数的组合来替代traditional convolution;

mlpcon 指的是: multilayer perceptron + convolution;

两者的结构如下所示:其中下图的 Mlpconv 的有两层的隐含层;

image

说明:在mlpconv中的每一层的后面都跟着一个 ReLU激活函数;用于加入更多的nonlinearity;

global average pooling 结构:

卷积神经网络最后的全连接层可以说作为了一个分类器,或者作为了一个 feature  clustering.   它把卷积层学习到的特征进行最后的分类;可以简单将最后的全连接层作为分类器。

NIN 网络remove掉了 全连接层, 使用 global average pooling 来代替全连接层;NIN最后一层共C个特征图(feature map)对应分类任务的C 个类别。global average pooling 分别作用于每张特征图,最后以pooling 结果映射到样本真实标记。

举个例子更容易说明白: 假设分类的任务有100 classes,  所以设置网络的最后的 feature maps 的个数为 100, 把每一个feature map 看作成 对应每一类的 概率的相关值 ,然后对每一个 feature map 求平均值(即 global average pooling), 得到了 100维的向量, 把它直接给 softmax层,进行分类;(其实100个数中最大值对应的类别即为预测值, 之所以再送给 softmax层是为了求 loss,用于训练时求梯度)

网络的整体结构:

image

image

参考自http://blog.csdn.net/hjimce/article/details/50458190 

猜你喜欢

转载自blog.csdn.net/qq_29893385/article/details/84984151