专访微软首席语音科学家黄学东: CNTK 是词错率仅 5.9% 背后的「秘密武器」-阿里云开发者社区

开发者社区> 开发者小助手-bz8> 正文

专访微软首席语音科学家黄学东: CNTK 是词错率仅 5.9% 背后的「秘密武器」

简介: 日前,机器之心有幸专访黄学东博士,共同探讨了词错率降低背后的秘密、这一成就的意义,以及他对语音识别的思考。
+关注继续查看

9 月 14 日,微软的对话语音识别技术在产业标准 Switchboard 语音识别基准测试中实现了词错率(word error rate, 简称 WER)低至 6.3% 的突破,为当时业界最低。


一个月后的 10 月 18 日,微软进一步将词错率降低至 5.9%。在 Switchboard 语音识别任务测试中,人类对照组(由专业速记员组成)将对话语音转录成文字的最低词错率为 5.9%,这就意味着微软的语音识别系统的语音识别能力已经与人类专业高手持平。


带领团队取得这一成果的正是微软首席语音科学家黄学东。日前,机器之心有幸专访黄学东博士,共同探讨了词错率降低背后的秘密、这一成就的意义,以及他对语音识别的思考。


早在 1993 年,黄学东就已组建了微软语音识别部门,并一直进行语音、语义等方向的研究。不仅是这一成就,微软在语音方面取得的种种成果中都能找到他的身影。可以进行实时语音翻译的 Skype Translator、微软的智能个人助理微软小娜(Cortana)等,都有黄学东的努力。现在,他的目标是向全世界开放这些产品背后的技术。


去年,微软发布了微软认知服务(原「牛津计划 Project Oxford」,现更名为「微软认知服务」),服务集合了多种智能 API,包括视觉、语音、语言、知识和搜索五大类共二十一项。「借助微软认知服务,开发者们就算没有人工智能的知识背景也能轻松开发出属于自己的智能应用。」


不仅如此,今年年初微软更是开源了机器深度学习工具 CNTK(Computational Network Toolkit)。不仅使深度神经网络(DNN)、卷积神经网络(CNN)、循环神经网络(RNN)和长短时记忆单元(LSTM)的实现变得非常容易,还支持多个 GPU 组合、服务器自动分化和并行的随机梯度下降(SGD)学习。


CNTK 正是在此次微软在 Switchboard 测试中取得突破的重要因素。目前微软的诸多产品,包括 Cortana、Bing、HoloLens AI 的训练(training)等都是在 CNTK 上实现的。黄学东笑称「CNTK 是我们的『秘密武器』」,如今这款「武器」人人都可使用。


AA882B3C-073C-4594-945E-ED1B1A059895.jpeg


以下是专访内容:


机器之心:前段时间您参与研发的语音识别系统的识别词错率实现了突破,单系统的词错率低至 6.9%,多系统达到了 6.3%。能否请您解读一下这项突破背后的技术,以及这一成就的意义?


黄学东:关于这个问题,可以先回顾语音识别过去几十年的进步。微软 在过去 25 年一直在做非常基本的、应用的语音识别的研究。不仅仅是微软,整个语音识别的研究,包括学校、公司、政府,很多人做了很多工作。90 年代初,美国国防部还推动了包括华尔街语音识别听写系统等好几个大计划。


因为有这些大力推动,错误率每过三四年就能从 20% 左右降低 5-6% 左右,如果做到 5%-6%,大家觉得这个东西可以用了,然后就能不断地放松限制。


最早的语音识别需要针对特定的人,或者比较小的词汇表。到 90 年代中期,大家觉得既然语音识别每过三四年就有那么大进步,干脆看看能不能识别所有开放的语音,比如两个人在打电话,能不能把电话通话内容识别出来,并且不要任何限制、完全开放,这是非常有名的「电话识别系统」(Switchboard)。


这可是一个难任务。在 90 年代中期,微软刚建语音团队的时候,我们用当时最好的技术来识别这样的系统,错误率大概在 80% 左右。很多人付出很多努力,在 20 年前,大概这个系统可以做到 60% - 50% 左右的错误率。今天从 80% 到 6%,是过去几十 年经过了很多人的辛苦努力达到这样的成就。我觉得这不仅是微软的骄傲,也是整个在语音识别、人工智能领域辛勤工作的科研人员的一个很大骄傲,很具有历史意义。


因为语言是人和动物最大的区别。人类发展到今天,因为有语言、能沟通,可以团结团队,一起征服很大的困难。今天机器能识别到这样的水平,不仅仅是微软的研发人员,也是 IBM、Google、百度和很多人一起努力,才推动了这个技术的进步。从历史角度来看,从 20 年前 60%,十年前 50%,以至今天的 6.3%,这是一个非常令人骄傲,也是令我自豪的成就。


今天做这到这个水平,所采用的技术是相当丰富的,核心技术是深度学习。神经网络有很多不同的模型,我们现在这个系统中将多种组合,最后结果达到 6.3%。


我们最主要的贡献是:


第一,这个系统里面没有 bug,因为要在标准数据上做到这样的水平,实际上体现了工程的完美;


第二,这个系统完全是用微软的 CNTK 开源工具做出来的。微软能做到今天的水平,全世界所有做语音识别的人用 CNTK 这样的工具也能达到这样的水平,这完全是没有问题的。当然但具体参数用多少,我们有很多经验。


第三,其中最核心的技术是把 ResNet 用到语音识别。此前微软亚洲研究院做 ImageNet 用到了突破性的 ResNet(残差网络,Residual Networks),我们第一次把 ResNet 用到语音识别发现效果也非常不错,这也是令我们非常骄傲的事情。去年 ImageNet 上微软亚洲研究院凭借 ResNet 拿了冠军,今年能在语音上取得新的突破,它的贡献功不可没。


机器之心:刚才也说到十年前,识别错误率是 50%,今天到达了 6.3%。这十年来您觉得这个速度是快还是慢,语音识别最终可能会达到人类水平,在这之后技术未来的发展方向是什么?


黄学东:这个速度还是相当惊人的。过去 20 年,基本上每年错误率都会较上一年下降 15% 左右,按照这样的速度推下去,语音识别达到人的水平指日可待。但是人的鲁棒性比机器好很多,比如我们可以隔很远说话,人听起来没有问题;或者在鸡尾酒会大家都在谈话,人的耳朵可以很灵敏,要想听什么东西,他可以听什么东西。但是机器这个能力相对比较差,在高噪音、有口音、小孩儿说话或出现不熟悉的内容的情况下,机器 6% 的水平可能会变成 20%、30%。


这是人和机器的最大区别,人的鲁棒性非常好,一个新的课题过来,他可以通过会话的方式跟你沟通,也能得到很好的结果。而机器对噪音的抗噪性不够强,对新的课题会话沟通能力比较差。最重要的一点是,语音识别并没有理解你的语义。理解语义是人工智能下一个需要攻克的难题,这也是我们团队花很多时间和精力正在做的事情。


要做好语音识别需要更好的语义理解,这是相辅相成的。因为你没有知识,你就听不懂别人讲的话。比如我讲一个很高深学问的问题,如果听的一方没有对我说的话题有足够的知识,基本上是对牛弹琴。


机器之心:从最早的 HMM 模型到最近几年 RNN、LSTM 和注意力模型,它们促进了语音识别技术的飞跃。那具体在语音识别技术上的突破还需要哪方面的支持,还有哪些前沿研究可以介绍给我们吗?


黄学东:我们现在用 LSTM 模型取得的进步就很好,将图象识别的最新技术用到语音识别效果也不错,然后通过 LSTM 和 ResNet 这样的组合使微软的系统得到了新的突破。


再往前走,大数据,大的模型更加精细的深度学习算法,当然还有很多东西可以做。怎么样提高自由组合,然后通过语义理解来帮助语音识别,这都是亟待需要做的事情。


另一个就是抗噪。在高噪音的情况下,人能做的很好。但是机器现在抗噪相当困难。我们这个系统实际有三个好东西:一是 LSTM;一是 CNN 的改进版 LACE,是我们团队自己研发的;第三个是用了 ResNet。这三个模型和一般的深度学习模型都不太一样,我们通过这三个模型的大组合,取得了突破性的进步。


现在语音都是在云上,三个模型同时在做计算,然后再组合起来,这对 Cloudbase 的语音识别没有任何技术问题。


机器之心:您在之前的采访中也提到微软建立语音识别研究团队的时候是得到比尔盖茨的全力支持。你对现任的 CEO 纳德拉有什么评价?现在微软在语音识别技术上的投入大概是怎样的情况?


黄学东:9 月 30 日,微软刚刚宣布,由沈向洋领导五千人团队负责人工智能。微软对人工智能的投入是相当重视的,在纳德拉的领导下,我们对人工智能的重视是前所未有。现在微软研究院和人工智能产品都在沈向洋领导之下,这改变了微软研究院没有产品任务的过去,对人工智能的重视提到了公司前所未有的战略高度。


其次,微软研究院在建立的时候就有这样的口号,要让计算机能看、能听、能说、能想、能学习。实际上在 25 年前微软研究院建立的时候,人工智能就已经是我们的战略目标了。所以微软的严谨和我们的执行是一脉相承的。微软研究院建立的时候,语音识别、计算机视觉、自然语言处理等是最早几个核心团队。


我当时负责语音识别技术团队创建,今天的全球执行副总裁沈向洋当时加盟了微软研究院计算机视觉的团队。现在微软亚洲研究院的院长洪小文,当时也是在语音识别团队。所以不管是比尔盖茨,还是今天的纳德拉,微软对人工智能一直是非常重视的。我们当然可以说云为先、移动为先。从我个人来看,现在正在转向为智能为先。


机器之心:我们知道微软对人工智能非常重视,那语音识别方面在整个布局中大概是什么样的位置呢?


黄学东:因为 Cortana 小娜是个人助理,不仅仅通过文本(Text),也可以通过语音来交互,所以语音识别是非常重要的第一步。语音是人和人交流最自然的工具,让人和机器交流更加自然、更加迅速、快捷、友好非常重要,我们对它的投入从来没有减弱。微软研究院在建立之初,最开始的团队之一就是语音识别。


机器之心:您从 1993 年加入微软,到现在差不多 20 年了,这期间语音研究思路上有哪些变化?微软在语音产品的思路上又有哪些变化?


黄学东:变化非常大。微软 1995 年第一次在 Windows 上推出了语音识别的 API(Speech API,简称 SAPI),非常具有历史意义。SAPI 是工业界第一个完全基于 PC 的 API,也正是由我的团队推出来。过了二十年,「微软认知服务」(原「牛津计划」)再次推出,是以云为先的语音 API。很凑巧从 1995 年到 2015 年,20 年完成了从 PC 端到云端的变化。现在「微软认知服务」包括 21 个不同的 API,其中语音识别、语言处理等部分都由我现在的团队负责。


所以我很感慨,20 年的风风雨雨,微软从 PC 电脑为中心完全转型为以云为中心,其中没有变的就是人工智能。不管当时 PC 为中心还是今天云为中心,人工智能都是中心的中心。


微软再往前走,云中心之后应该是以智能云为中心。人工智能没有大数据、没有强大的计算能力,就不会有很大的智能。


今天的人工智能为什么能够脱离过去几十年人工智能的寒冬。最主要的原因是两个,一是现在的数据量变大了,一是计算机运算能力提高了。有足够的计算能力,计算机「死记硬背」也会显得好像很聪明。其实深度学习、神经网络这些东西早就有了,但那时计算能力不够,数据量也不够大,所以没有太多用。


现在看来深度学习能把以前不能做的事情做到了,我们每个人都在说深度学习怎么怎么牛,怎么怎么样。但最主要的不要忘记了,因为现在有计算能力,有大的数据,才达到了以前我们没有达到的水平。


微软开源深度学习的工具 CNTK,Cortana、Bing、HoloLens AI 的训练(training)等都是在 CNTK 上实现的,不仅仅这个 6.3% 的语音识别技术是在 CNTK 上跑的,我们的 Cortana 的识别、产品系统都是在这上面跑。


CNTK 和其他的开源软件最大的不一样,是它能做大规模、分布式深度学习,性能体验也非常好。一般开源软件只能在一台 4 个 GPU 的电脑上运行。但 CNTK 在 64 台机器上运行都没问题,是真正的大规模、分布式的深度学习开源软件。我们今天能刷新语音识别纪录,真是归功于 CNTK 这个开源工具。


CNTK 是我们的「秘密武器」。我们把秘密武器开源了,但是里面装什么样的子弹、弹药,你自己决定。


事实上微软是开源最大的贡献者,可以称为「无名英雄」。我们将时间和精力全部投入在创新最优秀的技术,服务于我们的客户。Switchboard(词错率 6.3%)这个东西不是谁都可以做出来的,这体现了微软在人工智能技术、深度学习技术上二三十年的积累。


机器之心:现在有多少团队或者人在采用 CNTK?它的应用怎么样?


黄学东:CNTK 这个技术是我的团队开发的,服务于整个微软公司内部所有的产品、所有的需求。既然能够满足微软公司内部所有产品的人工智能的需求,也可以开源为社会服务。因为这样的理念,CNTK 选择了开源,当时也并没有去炒作,我们更关注的是性能。跑大规模的人工智能实验,通常需要一到两个月的时间,把训练速度提上去才是重中之重。


220C3B5A-F94B-4AE9-A966-EF23133F692C.jpeg

8 月,香港浸会大学发布论文《Benchmarking State-of-the-Art Deep Learning Software Tools》


香港浸会大学最近对单机单卡性能做了比较,这根本不是 CNTK 的长处,它更擅长分布式系统做大规模的计算。这个研究在单机单卡环境建立了四个系统:标准的全连接神经网络(FCN)、计算机视觉的 AlexNet、微软亚洲研究院研发的 ResNet 和 LSTM。他们比较了 CNTK、Caffe、Torch、TensorFlow,在单机单卡 CNTK 表现不是优秀的情况下,仍在全连接神经网络和 LSTM 两项中拿了冠军。如果在多机多卡的情况下,差别就更大了。


70EDA5D3-2934-44B2-849C-7595B30C9C9E.jpeg


机器之心:您个人的工作轨迹是怎样的?似乎其间有在 Bing 等其他部门工作,是否给您的语音识别工作您带来启发或影响?


黄学东:在加入微软之前,我在卡耐基梅隆大学工作,后来领导微软语音识别和语音产品研发超过了十多年。之后决定不做语音,去做其他事情。我做了一些新产品的研发,后来又去 Bing 搜索和广告部门工作了六年。两年前我才重新负责公司语音的研究。通过过去两年的努力,我们再次又拿到了这个创新的技术。所以我非常感慨,技术日新月异,需要大家一起努力。我们也是站在前人的肩膀上,才能走到这一天。


微软语音识别技术的研究一直没有停止过,从前我们的重心放在开发 Cortana 这个语音识别系统身上,Cortana 语音识别的水平也是相当优秀的。


当然不同的工作之间都是相通的。语音识别需要语义理解才能做的更好。Bing 是搜索,是大数据、大计算、理解语言相结合的工作。搜索以前都是以文本为标准,这都是与语音识别等相通的。我在产品部门做的事情,并没有通过发表文章的形式呈现在各位面前,大家能看到只是微软 Bing 这款产品。


同时语音团队还一直往前在走。所以两年前我回到研究院重新领导语音团队,并不是从零开始做起,已经有一支非常优秀的团队。现在这支优秀团队重新设定目标,攻克难关。再加上我们使用了很多 GPU,把 CNTK 这个工具做得更完善。有了武器、有了弹药,再加上一支本来很优秀的团队,当然是攻无不克。


机器之心:最后问一个比较大的问题,在整个人工智能布局上,您认为语音识别的定位是怎样的?


黄学东:就像我们在跟人讲话的时候把他的嘴去掉,或者把他耳朵去掉,语音识别对与人工智能是非常重要的。当然脑子最重要,人工智能就像孟子讲「劳心者治人,劳力者治于人。」有脑子、能推理,能理解周围的环境,能了解人心,有 EQ、有 IQ,这才是最强大的。


人工智能最重要的是要有知识,能理解语言、能帮助人沟通、能推理、能分析大数据,能得出最优秀的结论。最后能做梦,那才了不起。语音识别是把音频转换成文字的过程,这个过程相当复杂,体现了人工智能今天最优秀的技术能达到的水平。


图象识别也是类似都是从 A 到 B 转换的学习。到了理解语言、理解语义、深刻地领会意思,就不再是简单的 A 到 B 的映射过程。因为语意没有音义,我讲了一句话具体是什么意思?你要把它翻译成文字定义是非常清楚的,但意义每个人都有不同的理解。这才是人工智能最核心的关键。


通过语音识别做机器翻译,或是通过计算机视觉技术描述图像,只是做到了 Perception(感知)。人工智能不仅仅要有感知,还要有认知(Cognition),这才到了高级阶段。除了认知还要有情感(Emotional Intelligence),这是更高级的,是「劳心者」了。我觉得人工智能最高级阶段是要「劳心」,不仅仅要感知,要有认知,还要「心知」。「知心」最难,人都不一定能达到这个水平。


现在人工智能最优秀的进步是在感知阶段,包括语音识别,视觉图像识别等等。目前机器翻译还是从 A 到 B 的转换,对语意的理解非常肤浅。认知现在还没有大的突破,「心知」就更没有戏了。


不知道这是不是太悲观,但我们还在感知和认知的过渡阶段。感知这个门槛基本上会进步非常快。今后两年,语音识别的水平基本上是没有问题。然后下一步大的任务是认知,自然语音的理解、语意的理解和知识的积累。别小看这个东西,如果能理解语言,人工智能会很强大,它可以读世界上所有的教科书、所有的文章。


现在没有一个机器人能把世界所有海量的知识,各个语言、各个国家、新闻、报纸、教科书所有东西都积累起来。当然,现在通过搜索引擎要查什么就可以查什么,但它并没有理解,只是把文字摘下来。有了什么都能理解的人工智能,它就像爱因斯坦一样聪明,上知天文、下知地理,从海洋到物理到数学,什么都知道。


但这个路途还相当遥远,即使要做好了,无非是 IQ 很高了,可是离 EQ 还很远。




©本文由机器之心原创,转载请联系本公众号获得授权

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
使用NAT网关轻松为单台云服务器设置多个公网IP
在应用中,有时会遇到用户询问如何使单台云服务器具备多个公网IP的问题。 具体如何操作呢,有了NAT网关这个也不是难题。
25921 0
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
7268 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,大概有三种登录方式:
2512 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
11050 0
腾讯云服务器 设置ngxin + fastdfs +tomcat 开机自启动
在tomcat中新建一个可以启动的 .sh 脚本文件 /usr/local/tomcat7/bin/ export JAVA_HOME=/usr/local/java/jdk7 export PATH=$JAVA_HOME/bin/:$PATH export CLASSPATH=.
4450 0
如何设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云安全组设置详细图文教程(收藏起来) 阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程。阿里云会要求客户设置安全组,如果不设置,阿里云会指定默认的安全组。那么,这个安全组是什么呢?顾名思义,就是为了服务器安全设置的。安全组其实就是一个虚拟的防火墙,可以让用户从端口、IP的维度来筛选对应服务器的访问者,从而形成一个云上的安全域。
6042 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,云吞铺子总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系统盘、创建快照、配置安全组等操作如何登录ECS云服务器控制台? 1、先登录到阿里云ECS服务器控制台 2、点击顶部的“控制台” 3、通过左侧栏,切换到“云服务器ECS”即可,如下图所示 通过ECS控制台的远程连接来登录到云服务器 阿里云ECS云服务器自带远程连接功能,使用该功能可以登录到云服务器,简单且方便,如下图:点击“远程连接”,第一次连接会自动生成6位数字密码,输入密码即可登录到云服务器上。
20971 0
1549
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《Nacos架构&原理》
立即下载
《看见新力量:二》电子书
立即下载
云上自动化运维(CloudOps)白皮书
立即下载