为什么 Deep Learning 最先在语音识别和图像处理领域取得突破?

2016年6月30日 | By News | Filed in: 未分类.

Source: http://www.zhihu.com/question/21815490/answer/94019066?utm_campaign=rss&utm_medium=rss&utm_source=rss&utm_content=title

【不好意思,由于前段时间被告知名称不符合知乎命名规范,被要求强制改名,现在我们名称改为“科研君”,欢迎大家继续关注~另外由于改名期间不允许发送任何消息,导致我们这篇文章发布略晚,抱歉!】

浏览了其他同学的回答,很多人提到了题主的不严谨之处,即deep learning实际上同时推动了很多领域的发展。我也同意,而且一个我所知道的例子是自然语言处理NLP中词向量(Word Embedding)方法对传统语言模型的提升[1];而且我相信,deep learning还会进一步推动更多AI领域的发展。

当然,深度学习Deep Learning最为人所关注也表现最明显的,就是使语音、图像识别获得了长足的进步。其实有的同学已经回答得很漂亮了,只是我忍不住再谈谈自己的理解,抛砖引玉,大家共同讨论。

本着读书人简单问题复杂化……啊呸,是论证完整化的标准,我觉得可以从以下三点递进地解决题主的疑问:

1. 为什么深度学习突然间火起来了?

2. 为什么深度学习会应用到语音识别和图像识别中?

3. 为什么深度学习能成功地应用到语音、图像识别中,取得突破?

为了让更多对深度学习感兴趣的朋友看懂,下面我尽可能地用简单的语言来阐述下我的看法(叙述中假设你已经大致知道什么是深度学习和神经网络,了解神经网络的基本原理,顺便认为你已经浏览了其他答案):

==============================我是分割线============================

1.为什么深度学习突然间火起来了?

谈到这个问题,如果在五六年之前,很多人肯定会说是因为Hinton在Science上的那篇论文“Reducing the dimensionality of
data with neural networks”。

虽然神经网络“号称”自己可以拟合任何函数,并且可以模拟人脑的运作形式,但是这一切都是建立在神经网络足够深足够大的基础上。没有了规模,浅层的神经网络啥都达不到。而人们发现,优化多层神经网络是一个高度非凸的问题,当网络层数太多了之后,训练就难以收敛,或者只能收敛到一个次优的局部最优解,性能反而还不如一两层的浅模型。这个严重的问题直接导致了神经网络方法的上一次衰败。

在2006年Hinton的那篇文章中,他提出了利用RBM预训练的方法,即用特定结构将网络先初始化到一个差不多“好”的程度,再回到传统的训练方法(反向传播BP)。这样得到的深度网络似乎就能达到一个不错的结果,从一定程度上解决了之前网络“深不了”的问题。在这个框架下,深度学习重新得到了人们重视,一批新方法被发明出来(Denoise Autoencoder,Dropout,ReLU……),都让神经网络有了前所未有的“更深”的可能。

但是我们现在再回过头来看这个问题,我们应该加入两个甚至更加关键的元素:大数据高性能计算

在如今的互联网时代,近十年来数据量的积累是爆炸式的。几年后人们发现,只要有足够多的数据,即便不做预训练,也能使深层网络得到非常好的结果。而针对卷积神经网络CNN或者LSTM来说,预训练本身也不像全连接那么好做了。一个技术不能很大地提升性能,还需要researcher辛辛苦苦想算法,需要程序员辛辛苦苦写代码,你说谁干呢……现在的语音识别或图像识别系统,如果拥有大量的训练样本,基本都是没有预训练步骤的。

而高性能计算是与大数据相辅相成的,想象你有好多好多数据(百万幅图片,上万小时语音),但是计算速度跟不上,训练一个网络需要好几年(做机器学习的人应该知道这个完全没有夸张吧),那这个研究也完全不必要做了吧?这也是为什么有人认为神经网络火起来完全是因为GPU使得计算方法更快更好了。从这个意义上,GPU并行计算的发展确实极大推动了深度学习的普及。

有大数据和高性能计算打下最坚实的基础,人的聪明才智是无穷无尽的。那些笃信深度学习的学者们使用了各种各样的算法激发深度学习的潜能,比如微软的残差学习[2]。否则,再多的数据也不能把传统的神经网络训练到152层啊。

总得来说,大数据的快速积累、大规模并行计算的快速发展、新算法的不断出现共同促使了神经网络技术改头换面,重出江湖。

2.为什么人们会想到将深度学习应用到语音识别和图像识别中?

众所周知,深度学习的目标是模仿人类神经网络感知外部世界的方法。那么很自然地,如果把人想象成计算机,那么语音和图像就是最主要的input形式(当然了,什么气味之类的,就属于化学或者物理领域了……)。既然人能够很好地识别图像和语音,那么自然地,我们也会希望这个试图模仿人类大脑的深度学习算法也能像我们一样听清语音、看清图片。目前在许多重要的模式识别问题中,机器都远远没有人表现得好。而如果这个方法能够像人脑一样工作,那它理应在这两个领域得到接近或者乃至达到人的水平。这是非常让人兴奋,让人觉得promising的。

(同理,文字也是重要的输入,因此也有许多工作试图在NLP领域应用深度学习算法。)

深度学习热潮率先在这两个领域刮起,当然还有一个不可忽视的因素。一个机器是否具有智能,最最基础的就是看它能否接收到外界的视频音频信号。如果有算法号称自己能够做这件事,并且貌似靠谱的话,那么研究机器学习的人当然是要一起从这上面下手了。你说,拉funding的人听到你说你的机器能听懂人说话,他能不感兴趣么!当全世界的科学家都意识到语音、图像识别中的深度学习是个坑之后,大家必须争先往里跳啊。

3.为什么深度学习能成功地应用到语音、图像识别中,取得突破?

当然,深度学习不是神,并不是无所不能。从上面的分析我们知道,是深度学习看起来无比光明的前景让大家把它应用到语音、图像领域。而它之所以能在语音和图像领域获得成功,又回过头促进深度学习发展,背后必然是有一定的道理的。

第一个非常重要的原因就是问题1中提到的——大量数据(硬件装备各个领域都一样,就不考虑了)。为什么这么说?比如语音识别中用到的深度学习技术,除去最新的端到端技术,大部分都是在上世纪就已经有了的,但是到2012年,Li Deng和Hinton等人才写出了语音识别中划时代的文章“Deep Neural Networks for Acoustic Modeling in Speech Recognition”,中间差的是什么,一个关键就是大量的数据。

举个例子,一个语音识别系统,当训练数据达到3000小时时能有较好的效果。3000小时什么概念?可以想象一下自己听一段演讲,然后把它逐字逐句敲下来,这才多少小时?而谷歌、微软他们的训练数据则更是海量的几万个小时。同样,在图像识别领域,ImageNet则有百万张图片,这么多的数据让当年六万张手写数字的mnist情何以堪。正是这些大量的数据,使得深度学习应用到这两个领域成为可能。

这里可能有稍微了解语音识别的同学要提出疑问:“有很多研究单位现在研究小数据量下的深度学习,不是说必须要数据量大才管用么?”注意,这里所谓的小数据只是某一类别的数据少,而全体“可用”数据仍然很多。比如在语音识别中,我可以说训练粤语的数据量很少,但是我可以通过已有的大量普通话数据,还帮助我提高识别粤语的性能。因此,最终还是需要数据作为支撑。

第二个非常非常重要的原因是——特征原始性的保留。在模式识别领域,一句重要的话是:“Features matter”。如何最大限度保留原始信息地表示输入的特征,对于识别是一个重要的问题。神经网络一个特点是它能够作为特征抽取器。什么意思呢?比如在图像识别中,人们发现神经网络每层的权重实际上学习到了图像的某些“成分”;而且越高层,成分越具体。在第一层可能是一些“点”、“边”、“拐角”等;再往上可能就是“眼角”、“嘴唇”;到最后一层可能就是脸的不同部分了。说明网络和人脑一样,将原始信号经过逐层的处理,最终从部分到整体抽象为我们感知的物体。

因此这个特征抽取器对输入有一个不小的要求:应该足够原始并包含目标任务的信息。显然,假设你已经把一幅图片根据你的理解变成了有多少张人脸,有多少朵花,有多少棵树统计出来的向量的话,你还怎么指望深度学习能给你学出来什么嘴巴鼻子眼睛,来进行人脸识别呢。

我们发现,对于语音和图像来说,这个要求实际上是相对容易满足的,每一幅图像、每一段语音帧,都属于自然界的原始信号,并且能够清晰地反映我们要识别的人脸或者音素,我们通过尽量简单的预处理就能将其送入神经网络。把最主要的识别工作交给深度学习来完成。

反之,对于NLP问题来说,我们拿到的一段段文本,实际上都是由人脑处理过的,我们用什么样的特征来刻画它才足够原始呢?再比如语音信号处理的另一个任务——说话人识别,应用深度学习也是有一定困难的,一段语音中有什么特征能够反映一个说话人的身份,又没有经过过多的人为处理呢?从这个角度看,这些领域深度学习的应用都没有语音识别、图像识别那么简单、自然,也没有那么成功。

就我感觉而言,如果你的任务能拿到原始的有效特征,数据量足够巨大,任务本身和感知相关(人也能完成相似的工作),那么深度学习就极有可能带你飞一会。只是图像和语音是人们最感兴趣的,人们花了大量努力让它飞起来而已(那么多大牛在努力填坑呢)。

如此看来,深度学习在语音、图像识别中获得成功,也是很自然的事情了。

=====================================================================

最后扯几句。

深度学习之所以能够如此广泛的成功,现在已经绝不仅仅是简单替换原先系统中的某些部件那么简单,端到端的热潮正在到来,神经网络似乎准备接管系统的所有组成部分。

相信现在还有很多人和几年前的我一样,觉得深度学习只是神经网络方法打出的一个大噱头,不过是用了几十年的东西旧瓶装新酒罢了。但是,作为一个研究语音识别的研究生,看到停滞了十年的识别率被深度学习再次(而且是一再)地提升后,你不得不承认它是如此的牛逼。另一个让我再次对深度学习肃然起敬的事情,就是AlphaGO对人类的胜利。看到3:0时我的想法并不是很多人的:“哇塞,机器赢了,机器人是不是马上就要统治世界了?AlphaGO会不会通过网络流动了每一台的电脑里,控制我们?BetaCat是不是要写好了?”而是:“哇,深度学习居然能将围棋模型训练到这种程度,真的能达到人的水平!以后牛逼吹起来更有逼格了”曾经让我觉得缺少传统机器学习那种数学美的方法,确确实实(至少在性能上)达到了一个新的高度,真的是非常了不起。

图1 语音识别正确率的变化。注意conversational speech近十年的停滞不前和2011年的那个五角星,那是深度学习带来的大进步(图片来源:The Speech Recognition Wiki)

我想,像Hinton这种见证了神经网络三十年来的风风雨雨、潮起潮落的学者,看到神经网络如今每一次丰碑式的成功,在心里是会激动得老泪纵横呢,还是早已笑看风卷云舒。

上面所说的都是我自己个人的认识,从学术上说有的地方可能不是非常准确,而且限于篇幅讨论得也不是那么全面,欢迎大家批评指正。好了,不瞎扯了,我得去训练网络了,看看实验室的GPU有没有空位置。。。

参考文献:

[1] Collobert R,
Weston J, Bottou L. Natural Language Processing (Almost) from Scratch[J].
Journal of Machine Learning Research, 2011.

[2] He K, Zhang X, Ren S.
Deep Residual Learning for Image Recognition[J]. Clinical Orthopaedics and
Related Research, 2015.

【非常高兴看到大家喜欢并赞同我们的回答。应许多知友的建议,最近我们开通了同名公众号:PhDer,也会定期更新我们的文章,如果您不想错过我们的每篇回答,欢迎扫码关注~ 】

来源:知乎 www.zhihu.com

作者:科研君

【知乎日报】千万用户的选择,做朋友圈里的新鲜事分享大牛。
点击下载

此问题还有 30 个回答,查看全部。
延伸阅读:
微软的 Cortana 语音助手说话语调极为逼真像人,这是怎么做到的?

语音识别的技术原理是什么?


Comments are closed here.