Paper Reading[Nature Machine Intelligence](1): LeCun, Bengio, Hinton; Deep learning.

  5月份的Nature杂志发表了Machine Intelligence专题的介绍性文章,虽然对具体的研究方法没有过多讨论,但对于刚接触ML的菜鸟来说还是有一定的指导意义。刚看完机器学习的“三个代表”——LeCunBengioHinton——联合写作的Deep learning对大体内容进行简要总结。

  Machine Intelligence in Nature: http://www.nature.com/nature/supplements/insights/machine-intelligence/index.html

    Paper: Deep learning.

  我的主要关注点为DL在CV方面的应用。

  文章首先对Deep Learning的内在原理作了简要介绍,并与传统的方法做了比较。简单来说,Deep Learning是一种由多层次的计算过程组成的计算模型,每一层次的结果都是对上一层数据内在结构的抽象表达。它通过反向传播(backpropagation)算法,不断改进内在参数从而求得最优解。比如对于一幅图像来说,第一层次计算出来的可能是边缘,角点之类的features;第二层通过边缘的排列方式计算出小patch的主题;第三层结合主题组成物体某个部分的抽象表达;第四层,把各个部分组合起来形成物体。DL的关键在于:学习到的feature并不是人为设计的,而是DL模型利用大量数据,根据特定的目标训练所得。由于自然图像的多变和复杂,使用人为设计的feature去表达每一幅图片尽管在早期取得了令人惊叹的结果(SIFT、HOG、SPM),但自提出不久便没有了实质进展。

  Supervised Learning

  有监督学习是目前较为普遍的方法。它通过最小化模型输出与实际结果(ground truth)之间的误差函数(loss function)来计算参数。常用的优化算法为gradient descent(梯度下降),它的思想很简单:给参数一个非常小的增量,如果误差变大,则减小参数;否则,增加参数值。当然,实际的数学推导还是很复杂的。实际上对于大量数据,常用stochastic gradient descent来加快计算过程。当样本数量过多时,总体误差的计算比较复杂。所以把样本分成一个个小集合来计算,最小化平均误差求得最后结果。虽然理论上梯度下降可能会受到局部最小值的困扰,但实践经验和最近的理论都表明,局部少量数据并不会对大量数据的训练造成多大影响。

  最近流行的有监督DL模型非CNN(Convolutional neura network)莫属。它由Yann LeCun于1998年提出,用于手写体的识别。2012年,Krizhevsky的论文,ImageNet Classification with Deep Convolutional Neural Networks,得到了远超state of art的结果,掀起了CV界的革命。CNN是用来处理多维数据的,所以尤其适合图像的处理。

  

如图所示,CNN由多个Convolution 层和Max pooling层组成,最后通过一个fully connected层来生成表示图片的向量。Convolution自然是用来提取特征特征的,pooling是为了合并相邻区域内的相似语义提高location invariant,fully connected是为了合并多维向量便于后续处理。CNN的key ideas有如下4点:local connections,Convolution);shared weights,一幅图像的不同patch共享filter,即一幅feature map由同一个filter生成,这样可以保证location invariant;pooling,max pooling而不是average pooling增加了对噪声的invariant;many layers,自然信号层次性,差分的可传播性(上层误差可由下层误差计算)以及与人类视觉系统(LGN-V1-V2-V4-IT)的相似性。ReLU是一种激活函数,用来计算每个神经元的输出(经典的还有logistic function)。

  由于CNN能够根据具体任务产生不同的feature map,近年来,它已经被成功应用在classification,object detection,recognition等领域。object detection的具体方法发表在论文Rich feature hierarchies for accurate object detection and semantic segmentation上。大体思路为:用selective search方法产生候选窗口,然后用CNN提取窗口特征,最后用SVM对特征进行分类。CNN学习的是图像的distributed representations,不同feature map的选择可以用来解决不同的问题。

  另一个可以预见的研究热点为,RNN(Recurrent neutral network),它主要用于处理连续数据的输入。它所拥有的记忆能力使它成为一种有可能实现图像理解或者Unsupervised Learning的方法。

posted @ 2015-10-09 17:53  f_ly  阅读(984)  评论(0编辑  收藏  举报