深度学习史上最全总结(文末有福利)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

深度学习(Deep Learning),这是一个在近几年火遍各个领域的词汇,似乎所有的算法只要跟它扯上关系,瞬间就显得高大上起来。但其实,从2006年Hinton 在Science上的论文算起,深度学习发展至今才不到十年。

在这短短几年时间里,深度学习颠覆了语音识别、图像分类、文本理解等众多领域的算法设计思路,渐渐形成了一种从训练数据出发,经过一个端到端

(end-to-end)的模型,然后直接输出得到最终结果的一种新模式。这不仅让一切变得更加简单,而且由于深度学习中的每一层都可以为了最终的任务来调整自己,最终实现各层之间的通力合作,因而可以大大提高任务的准确度。随着大数据时代的到来以及GPU等各种更加强大的计算设备的发展,深度学习如虎添翼,可以充分利用各种海量数据(标注数据、弱标注数据或者仅仅数据本身),完全自动地学习到抽象的知识表达,即把原始数据浓缩成某种知识。

当然,深度学习不见得是最完美的框架,离最终所谓的智能也还差得很远,而且目前还基本没有理论上的有效性解释。但是,无论如何,深度学习之风已经势不可挡!

深度学习本质上其实就是多层神经网络,而神经网络这个东西几十年前大家就开始研究了。我们知道,神经网络的一层,其实就是一个线性变换加上一个简单的非线性操作,而多层神经网络其实就是多个简单的非线性函数的复合。一层、两层的网络用途比较有限,往往很难刻画输入与输出之间的复杂关系。但是深层的网络,历史上又一直无法进行有效训练。这大概是因为有以下三个难点难以突破:

优化方面

(1)优化策略的核心就是梯度下降法,但对于一个深层的网络,它的函数的梯度也非常复杂。于是,误差反向传播算法就经常在参数初始值选择不当的时候产生梯度消失或者梯度爆炸现象,导致优化无法正常进行。

(2)深层网络由于是高度非线性的,有着太多的局部极值,很难保证能够得到一个可以接受的好的解。数据方面

早期,各种数据集往往都非常小,经常是几百几千的规模。人们都侧重于解决如何在小数据情形下的算法过拟合问题,典型的就是SVM。这时候,复杂的多层神经网络根本用不上,他们在数据量不足的情况下会过拟合的非常严重。计算能力方面

深度学习的经典模型卷积神经网络(CNN)其实在上世纪八九十年代就出现了,而且其中LeNet-5模型在简单的手写体识别问题上已经取得了很大的成功。但是

当时的计算能力无法支持更大规模的网络,而LeNet-5在复杂物体识别上的表现也并不好,所以影响了人们对这一系列算法的进一步研究。

由于以上种种原因,神经网络一度曾经非常低调。直到2006年,著名的学者Geoffrey Hinton在Science上发表了一篇论文,给出了训练深层网络的新思路。大概想法是先分层进行预训练,然后把预训练的结果当成模型参数的初始值,再从头进行正常的训练过程。这个想法现在看起来很简单,但对于全连型的深层网络来说却是非常有效的。

关于语音识别

2009年,Hinton把深层神经网络介绍给做语音识别的学者们。然后2010年,语音识别就产生了巨大突破。本质上是把传统的混合高斯模型(GMM)替换成了深度神经网络(DNN)模型,但相对识别错误率一下降低20%多,这个改进幅度超过了过去很多年的总和。这里的关键是把原来模型中通过GMM建模的手工特征换成了通过DNN进行更加复杂的特征学习。在此之后,在深度学习框架下,人们还在不断利用更好的模型和更多的训练数据进一步改进结果。现在语音识别已经真正变得比较成熟,并且被广泛商用,且目前所有的商用语音识别算法没有一个不是基于深度学习的。

关于视觉问题

人们初步看到了深度网络的优势,但还是有很多人质疑它。语音识别是成功了,那么图像分类呢?2012年之前,深度学习好像还是只能处理像MNIST手写体分类这样的简单任务。说来也巧,这时候正举行了两届ImageNet比赛。这是一个比手写体分类复杂得多的图像分类任务,总共有100万张图片,分辨率300x300左右,1000个类别。前两届的冠军采用的都是传统人工设计特征然后学习分类器的思路。第一届是2010年,当时冠军的准确率(top 5精度)是71.8%,而2011年是74.3%。由于Hinton经常被其它研究人员“嘲讽”说深度学习在图像领域没有用,于是2012年,Hinton和他的学生Alex等人参赛,把准确率一下提高到84.7%。

当然,他们的成功借助了ImageNet这个足够大的数据集,借助了GPU的强大计算能力,借助了比较深层的CNN网络,借助了随机梯度下降(SGD)和Dropout

等优化技巧,借助了训练数据扩充策略(Data Augmentation)。但无论如何,他们靠着深度学习震惊了机器学习领域,从此大量的研究人员开始进入这个领域,一发不可收拾。2013年是89%,2014年是93.4%,截止到现在(2015年5月份),ImageNet数据集的精度已经达到了95%以上,某种程度上跟人的分辨能力相当了。

不仅仅是图像分类,在更广泛的视觉问题上,深度学习都产生了重大影响。简要列举几个如下:

•人脸识别——LFW数据库上的结果,从最早的90%左右的正确率,一路被研究人员刷到了99.5%以上。人脸相关的应用受此影响,也越来越多。

•通用物体检测——ImageNet上的检测任务结果,MAP从最早的0.3左右,一路提高到0.66,感觉提高空间还有不少。

•图像分割——现在深度学习已经可以做到输入是一张图片,输出就是逐个像素分割后的结果,中间也不需要任何预处理,并且精度远超非深度学习的结果。

•光学字符识别——这里指一般意义的字符序列识别。这个问题的传统做法也是非常复杂的,需要进行字符分割,各种预处理,然后单个字符预测完成后如何拼成完整输出等等。深度学习的做法也是端到端的,输入是图片形式的文字,输出直接就是识别结果了,简单、方便还更准确。所以,现在很多简单点的验证码,想作为图灵测试,分辨人还是robot的话,已经没太大用处了。

•玩游戏——DeepMind团队的杰作。基于深度学习和强化学习(Reinforcement Learning),计算机已经可以自己学习玩一些简单游戏了,整个过程不需要任何人的干预。对于打砖块这样的简单游戏,甚至已经超过了普通玩家的水平。

简单总结一下视觉的部分。我们经常在媒体上看到深度学习在某领域又超过人的水平了。还有些乐观的人说,深度学习可以处理所有人的视觉在0.1秒内可以解决的问题。这些或许言过其实,不过毫无疑问体现了深度学习带给人们的强烈震撼!

关于文本理解

除了语音和图像之外,另一个机器学习的重要前沿阵地就是文本理解了,深度学习的大量研究人员都集中于此。这里简单介绍三点。

相关文档
最新文档