NIN-Network In Network阅读笔记

Reference: Min Lin,Qiang Chen,Shuicheng Yan.Network in network

经典CNN中的卷积层其实就是用线性滤波器对图像进行内积运算,在每个局部输出后面跟着一个非线性的激活函数,最终得到的叫作特征图。而这种卷积滤波器是一种广义线性模型。所以用CNN进行特征提取时,其实就隐含地假设了特征是线性可分的,可实际问题往往是难以线性可分的。

GLM:(Generalized linear model)广义线性模型

GLM的抽象能力是比较低水平的,自然而然地我们想到用一种抽象能力更强的模型去替换它,从而提升传统CNN的表达能力。

抽象:指得到对同一概念的不同变体保持不变的特征。

什么样的模型抽象水平更高呢?当然是比线性模型更有表达能力的非线性函数近似器了(比如MLP,径向基神经)。

MLP的优点:

  • 非常有效的通用函数近似器
  • 可用BP算法训练,可以完美地融合进CNN
  • 其本身也是一种深度模型,可以特征再利用

(MLP中的激活函数采用的是整流线性单元(即ReLU:max(wx+b,0))

mlpconv layer
采用了NIN改进CNN后,我们增强了局部模型的表达能力,这样我们可以在分类层对特征图进行全局平均池化,这种方式更有意义和容易解释(可将最后一层输出的特征图的空间平均值解释为相应类别的置信度!为什么可以这样解释呢?因为在采用了微神经网络后,让局部模型有更强的抽象能力,从而让全局平均池化能具有特征图与类别之间的一致性!),同时相比传统CNN采用的全连接层,不易过拟合(因为全局平均池化本身就是一种结构性的规则项)(PS:经典CNN容易过拟合,并严重依赖用dropout进行规则化)。

全局平均池化的优势:

  • 通过加强特征图与类别的一致性,让卷积结构更简单
  • 不需要进行参数优化,所以这一层可以避免过拟合
  • 它对空间信息进行了求和,因而对输入的空间变换更具有稳定性

这里写图片描述

经典CNN为了解决广义线性模型抽象能力不足的问题,采用了过完备的滤波器集合来补偿,也就是说学习不同的滤波器用来检查同一特征的不同变体。但是过多的滤波器会对下一层施加额外的负担,因为下一层要考虑来自前一层所有的特征变体的组合。

为什么采用NIN是有价值的?因为高层的特征(PS:论文中使用concept一词)来自低层特征的组合,在低层特征组合成高层特征之前,对每一局部块进行更好地抽象是有利的。

论文对比了maxout network,这种网络通过对仿射特征图进行最大值池化降低了输出特征图的数量。

仿射特征图(affine feature maps):是直接由线性卷积得到的特征图,没有通过激活函数进行非线性映射。

对线性函数进行最大化处理可得到分段线性函数近似器,可近似任意的凸函数!相比传统的CNN,maxout network更有效,因为可以区别凸集内的特征。但是maxout network是假设特征位于凸集中,这在实际中并不是总能满足的。

你可能感兴趣的:(深度学习)