浅谈深度学习(DeepLearning)

 

在准备入手DeepLearning之前,我建议大家要先了解3门我个人觉得很有必要的学科知识,模式识别(pattern recognition)、机器学习(machine Learning)和神经网络(Neutral Networks),大家如果想要关注这些领域,会经常看到PR、ML、NN、DL等这些名称,刚开始接触这些的时候,困扰我的一个问题就是:这四个学科之间到底什么关系,经过我专门的去收集分析,在下一篇我的笔记我总结了它们的联系与区别,并且对部分详细介绍。下面我们一起聊聊深度学习。

 

深度学习(DL)这门个学科涉及其他的领域太广了,在语音识别、计算机视觉、图像处理等领域取得了巨大的成功。我记得上次听了西安交大徐院士关于大数据的学术报告,他说了一句:“在目前深度学习的形势来看,你不应该去问DeepLearning能解决什么样的问题,你应该问DeepLearning解决不了哪些问题”。确实,深度学习近年在各个领域都取得成就,尤其在人工智能领域有很大的突破。

 

深度学习模型属于神经网络的分支,神经网络的出现时为了解决机器学习的问题,换句话说,神经网络是机器学习的一个分支,神经网络有大量参数,经常发生过拟合问题,虽然其识别结果在训练集上准确率很高,但在测试集上效果却很差。这是因为当时的训练数据集规模都较小。所以当时大家细化采用SVM,Boosting,最近邻等分类器,因为这些都拥有一个或两个隐含层的神经网络模拟,因此被称为浅层机器学习模型。

对于深度学习,从几个优势来概括:1>特征学习,2>深度模型,3>全局特征和上下文信息的能力。

 

1. 深度学习区别于其他传统模式识别的方法,最大的不同是从大数据中自动学习得到。所以特征学习显得尤为重要,既然重要,什么是好的特征呢。我举个例子:第一个,在图像识别领域,比如说人脸识别,人脸的图像提供给我们的信息包括了身份、姿态、年龄、表情、光线等各种信息。深度学习的关键就是通过多层非线性映射将这些因素成功分开,例如在深度模型的最后一个隐含层,不同神经元代表了不同因素。如果将这个隐含层当作特征表示,人脸识别、姿态估计、表情识别、年龄估计就会变得非常简单,因为各个因素之间变成了简单的线性关系,不再彼此干扰。而我们实验室研究方向也是图像处理,不过我们不是自然图像,我们研究的是SAR图像处理,SAR图像比起一般的自然图像复杂多了,它是多维的,并且相干斑多,噪声大,很难处理,首先会将图像分为聚集区域,结构区域,匀质区域,针对每个区域采用不同的处理,最难处理的是结构区域,一直没有较好的处理模型,但是DL既然有这么好的特征学习优势,我们的工作会进一大步。

         2.深度学习,体现在一个深字,由很多层组成。下面对深度学习和浅层学习做个比较,浅层模型提供的是局部表达。它将高纬图像空间分成若干个局部区域,每个局部区域至少存储一个从训练数据中获得的模板,如图1(a)所示,浅层模型将一个测试样本和这些模板逐一匹配,根据匹配的结果预测其类别。例如,在支持向量机模型中,模板是支持向量;在最近邻分类器中,模板是所有的训练样本。随着分类问题复杂度的增加,需要将图像空间划分成越来越多的局部区域,因而需要越来越多的参数和训练样本,换句话说,如果深度学习和浅层模型表达相同的分类函数,浅层模型需要的参数和训练样本要多得多,其计算单元呈指数增加。深度模型之所以减少参数的关键在于重复利用中间层的计算单元。以人脸识别为例,深度学习可以针对人脸图像的分层特征表达进行:最底层从原始像素开始学习滤波器,刻画局部的边缘和纹理特征;中层滤波器通过将各种边缘滤波器进行组合,描述不同类型的人脸器官;最高层描述的是整个人脸的全局特征。深度学习提供的是分布式的特征表示。在最高的隐含层,每个神经元代表一个属性分类器(如图1( b ) 所示),例如性别、人种和头发颜色等。每个神经元将图像空间一分为二,N 个神经元的组合就可以表达个局部区域,而用浅层模型表达这些区域的划分至少需要个模板。由此可以看出,深度模型的表达能力更强,效率更高。

 

 

 

图1.

         3.深度模型具有强大的学习能力和高效的特征表达能力,更重要的优点是从像素级原始数据到抽象的语义概念逐层提取信息,这使得它在提取图像的全局特征和上下文信息方面具有突出的优势。比如说做图像分割,浅层模型一般都是基于局部特征并且加上形状先验等约束。这就丧失了全局特征以及上下文相关信息。而深度模型是以整幅图像为输入,保留了上下文相关信息,如图2

图2.

         下面看看深度学习的应用,关于深度学习的应用,众所周知并且影响深远的一位人物,也是深度学习的开山鼻祖欣顿(Hiton),在2012年的ImageNet挑战中的图像分类。传统计算机视觉方法在此测试集上最低的错误率是26.172%。2012 年,欣顿的研究小组利用卷

积网络把错误率降到了15.315%。此网络结构被称为AlexNet,与传统的卷积网络相比,它有三点与众不同之处:首先,AlexNet采用了dropout的训练策略,在训练过程中将输入层和中间层的一些神经元随机置零。这模拟了噪音对输入数据的各种干扰使一些神经元对一些视觉模式产生漏检的情况。D r o p o u t 使训练过程收敛得更慢,但得到的网络模型更加鲁棒。其次,AlexNet采用整流线型单元作为非线性的激发函数。这不仅大大降低了计算的复杂度,而且使神经元的输出具有稀疏的特征,对各种干扰更加鲁棒。第三,AlexNet通过对训练样本镜像映射和加入随机平移扰动,产生了更多的训练样本,减少了过拟合。

 

在ImageNet IL SVRC 2013比赛中,排名前20 的小组使用的都是深度学习技术。获胜者是纽约大学罗伯·费格斯( R o b F e r g u s ) 的研究小组,所采用的深度模型是卷积网络,并对网络结构作了进一步优化,错误率为11.197%,其模型称作Clarifai。

 

在ImageNet ILSVRC 2014比赛中,获胜者GooleNet将错误率降到了6.656%。GoogleNet突出的特点是大大增加了卷积网络的深度,超过了20 层,这在此之前是不可想象的。很深的网络结构给预测误差的反向传播带了困难,这是因为预测误差是从最顶层传到底层的,传到底层的误差很小,难以驱动底层参数的更新。GooLeNet 采取的策略是将监督信号直接加到多个中间层,这意味着中间层和底层的特征表示也要能够对训练数据进行准确分类。如何有效地训练很深的网络模型仍是未来研究的一个重要课题。

 

最后我再加一点我会特别关注的方面------深度学习在物体检测中的应用,我们的研究方向是SAR图像处理,一个SAR图像包含的信息量特别大,而且噪声大,学习特征难度大,而将深度学习应用到SAR图像的特征学习上,继而分类。卷积网络(CNN)是不错的考虑,但是卷积是有监督的学习,而SAR图像的标注也困难,所以考虑无监督的学习,或者半监督学习。在特征分类或者目标检测这,推荐几个很有影响力的网络模型。RCNN、Overfeat、GoogleNet、VGG和spatial pyramid pooling in deep CNN。

 

说着的,我记得我看过网易公开课一个斯坦福大学教授关于机器学习的视频,他是人工智能领域佼佼者,他在课堂上以幽默的方式说了一句仅代表其个人的观点:这个世界上有两种人,一种是学过机器学习的,一种是没有说过机器学习的。深度学习恰恰是机器学习中最出色的分支。

 

注:

1.池化操作是在特征分布图的一个局部区域内取最大值或平均值传到神经网络下一层的特征分布图。经过池化操作,输出的特征分布图对局部形变具有更好的鲁棒性。池化层的另一个巨大的作用是降低问题的复杂度。从神经网络角度来看,减少隐层中神经元的个数。

2.预训练是对神经网络的各个层次逐一优化,从而使网络参数达到一个好的初始点。人们通常在预训练之后,利用反向传播对所有层次的网络参数进行联合优化,进一步提高网络的性能。

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐