CNN的新进展(1)

本文将从三个方面来介绍:


1. CNN网络结构的改善优化;
2. CNN网络训练中更快的计算方法;
3. CNN在各个领域的最新应用;


1. CNN网络结构的改善优化之Conv层;
CNN典型的网络结构和单元包括:卷积层、池化层、激活函数、损失函数以及正则化和最优化。

卷积层的细化:这里介绍两个最新的进展,分别是NIN和Inception moduel。

  • NIN

NIN的motivation是将传统的线性卷积网络替换为更细化的多层感知卷积网络(mlpconv),从而获取对图像的更多更高层次的抽象表示。

CNN的新进展(1)_第1张图片

从理论上也可以看到这种结构上的改变所带来的不同。f表示的是处于信道k的索引值为i,j的像素的特征值。从式2中可以看到,改善后的卷积层等价于对传统的卷积层进一步进行了一个交叉级联式的池化过程。

CNN的新进展(1)_第2张图片

  • Inception Moduel(怎么翻译都不贴切。。。)

CNN的新进展(1)_第3张图片

看到这图是不是就疯了。。。是的。。。但,它的确很work。。。
首先简化下这魔性十足的图吧。

CNN的新进展(1)_第4张图片
好了,这下似乎好多了。接下来我们就看看为什幺这样疯魔。
inception模型的motivation也是旨在解决最基本的两大问题:一是随着网络结构的增大,参数量级暴增,而可用数据集不够,从而易于出现过拟合问题;二是网络参数的存储、学习、更新所需要的计算开销也越来越大。而大部分参数学习集中在全连接层。所以问题就在于如何简化全连接层,google就提出了这一模型,利用稀疏结构来近似建模全连接层。
这一模型包括一种池化和三种卷积操作,1*1大小的卷积层放在3*3和5*5的前边,这一结构并没有增大计算开销。
在Going deeper with convolutions文中,作者其中的一段话值得深入思考:

CNN的新进展(1)_第5张图片

刚结束不久的ILSVRC2015里,kaiming大牛拿出了152层的深度残差网络,最近google又将自己的inception model和residual network进行结合,将图像分类错误率降低到了3.05%
。有兴趣的同学都可以去看看相关论文。。。

1. CNN网络结构的改善优化之Pooling层;

  • Lp Pooling:

    CNN的新进展(1)_第6张图片

  • Mixed Pooling:

    顾名思义,它是由max pooling 和 average pooling结合,其公式如下:

    这里写图片描述

    这种结合的idea和公式表示都十分的直白明了。也确实比单独的pooling效果要好。

  • Stochastic pooling:

    和max pooling不同的是,它可以也可以利用非最大激活值。它首先对每个region里的激活值进行归一化,然后计算每个region的概率值,然后依据该概率值对该region进行抽样。

这里写图片描述

  • Spectral pooling:

    它首先对feature进行DFT变换,然后在频域剪切出需要的频谱图,再利用IDFT返回空域。这种频域上的线性低通滤波可以保留更多的信息,而且对特征图的维度不是十分敏感。

CNN的新进展(1)_第7张图片

  • SPP:

    这也是由kaiming提出。它利用和图像大小成比例的局部空间bins对输入特征图进行pooling操作,这样就可以生成数目固定的bins,从而生成了固定长度的特征表示。借助这一pooling层,就可以直接处理不同尺寸的图片了。

CNN的新进展(1)_第8张图片

1. CNN网络结构的改善优化之activation function;

  • ReLU(Rectified linear unit):

CNN的新进展(1)_第9张图片

  • Leaky ReLU:

CNN的新进展(1)_第10张图片

  • PReLU:和Leaky ReLU唯一的不同就是系数a不是一个定值,而是一个可以学习的参数。

  • RReLU(Randomized ReLU):

    CNN的新进展(1)_第11张图片

  • ELU(Exponential Linear Unit):

    CNN的新进展(1)_第12张图片
    可以看到,激活函数变得越来越平滑,而最初用到的sigmoid函数也是平滑的,不同的是它的取值在【-1,1】之间,而最新的ELU则可以及对参数的调整更加的灵活。

    CNN的新进展(1)_第13张图片

后续会对CNN网络训练的优化算法进行总结,包括损失函数的选择、正则化、权值初始化、SGD的各种衍生算法。
参考文献:
【1】Recent Advances in Convolutional Neural Networks.Jiuxiang Gu, Zhenhua Wang, Jason Kuen, Lianyang Ma, Amir Shahroudy, Bing Shuai, Ting Liu, Xingxing,Wang, and Gang Wang
【2】 Network In Network.Min Lin1, Qiang Chen, Shuicheng Yan
【3】Going deeper with convolutions.Christian Szegedy,Wei Liu,Yangqing Jia,ey.al.
【4】Spatial Pyramid Pooling in Deep Convolutional
Networks for Visual Recognition.Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun
【5】Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning.Christian Szegedy,Sergey Ioffe,Vincent Vanhoucke
【6】pectral representations for convolutional neural networks.O. Rippel, J. Snoek, and R. P. Adams

你可能感兴趣的:(CNN的新进展(1))