转自 | 中国人工智能学会

作者 | 王海峰


此次小编为大家整理的是来自百度高级副总裁,ACL/CAAI Fellow王海峰先生主题为《语言与知识》的精彩演讲。


王海峰

百度高级副总裁,ACL/CAAI Fellow


以下内容根据速记进行整理

经过王海峰老师本人校对



王海峰:尊敬的各位院士、各位专家,大家上午好,我叫王海峰。赵院士最后一页我注意到他讲的是AI,我在百度是负责AI,我演讲的时候经常是在讲人工智能,从人工智能的技术发展到整个大的产业趋势到各行业应用,包括刚才讲的AI在农业中的应用我也很感兴趣。


今天我不从人工智能全貌讲,而是讲语言和知识,一方面我个人是搞自然语言处理出身的,我搞了二十多年的语言处理和相关的技术。另一方面语言和知识也非常重要,百度从2000年开始做搜索,搜索最核心的技术就是对语言和信息的处理,我们要理解网页内容需要语言处理技术,我本人也是因为自然语言技术才加入百度的。这个我就不介绍了,自然语言处理大家都认为很重要,在各方面都很重要。


对于人工智能来讲我们有很多不同的解读,其中我们希望机器像人一样思考,而这背后是什么技术在支持呢?请大家先看左半部分图片,语言是思维的载体,就像我们学习外语的时候老师会说如果你要学好这门语言就要用这门语言当作母语一样去思考。人类之所以不断的在往前发展,知识的传承也是很重要的,这种知识的凝练传承很重要的载体就是语言文字。我们看到早期的字符到甲骨文再到现在纸质的书还有互联网的文字,正是语言文字的力量促进了人类文明的发展。


语言一方面成就了人类的文明,另一方面人类也面临着语言鸿沟的挑战。我们都知道著名的“巴别塔”,这也是语言的一个很著名的例子。所以我们有了机器翻译,我本人是从93年开始进入相关的领域,最早就是做机器翻译,机器翻译我们可以列举出很多的问题,一个是译文怎么选择,一个是怎么调序,因为不同语言之间的语序是不一样的。


而机器翻译当然比我进入这行久得多了,从1946年现代计算机诞生之初,就开始有人提出用计算机来做翻译的想法。


经过很多年的发展,80、90年代最流行的方法当时我们领域里叫理性主义方法。更多的是像我们学语言的时候要背单词、学语法,所以当时机器翻译系统也在模拟这样一个过程,用规则系统,知识工程来做。我从93年开始进入机器翻译这个领域,当时是做规则系统。


做了两年觉得还不错,到了95年的时候,参加国家863的评测也得了第一,也觉得很自豪。但是后来很快发现规则不断的增加,对于整个系统的控制越来越难,规则的冲突等各种问题越来越严重,导致这个系统越来越难做。所以我到96年开始就在想是否还能用其它的方法呢?当时看了很多资料,一些新的方法也开始出现,比如基于经验主义的应用统计,机器学习包括神经网络的方法都开始出现了。当时我也不是很懂,我就想到底用什么样的方法能更好地解决问题呢?同时也受了一些影响,一个是刚才戴院士讲的脑科学与人工智能。另一个是恰巧去书店找书时碰到了几本书,这几本书都是一个老师写的,也就是咱们的主持人焦老师写的。神经网络有三本书,基础理论、计算、如果没记错的话还有一本叫应用与实现,看了这些书我开始用神经网络来做自然语言处理。自然语言处理其实是有上下文的,我又看了国外的文章,最后用这种RNN反馈循环的方法,完成了我的博士论文。


在这之后我又遇到了问题,当时的计算能力特别有限,数据也特别少,做的过程中取得了一些成果,也写了一些论文,但是大系统做不起来。那时候我已经博士毕业,开始到微软研究院工作,工作后发现其实统计上做的人非常多,而且用了各种方法,包括平滑的方法去解决这些数据稀疏等问题,所以改做统计机器翻译。


统计机器翻译也有一些问题,比如中英语言之间有非常多的语料,统计机器翻译做的不错了,但是小语种由于缺少语料又做得不好了,这时候我提出一套基于枢轴语言进行模型推导的方法,把一些小语种语言做好。那时候还很愿意参加评测,参加了国际口语机器翻译五个项目的比赛,基本都得了第一。


后来我到百度之后把这些统计、规则、神经网络等方法全部集中起来做,2011年上线了百度翻译。神经网络由于算法、数据、算力的共同进步复苏了,数据和计算能力起到了核心作用。从我做博士论文算起,过了差不多二十年后又开始用神经网络的方法,提出了新的神经网络机器翻译方法。百度翻译当时也做得不错,也获得了国家科技进步二等奖,现在百度翻译每天提供网上翻译服务是过千亿的量级,已经非常大了。


当时我们上线了全球第一个互联网神经网络翻译系统,很好地解决了数据稀疏、词表外的词包括译文缺失、解码速度等一系列问题。但是语音翻译对实时性的要求更高,前一段时间我们刚刚发布了一个新技术,可以非常实时的来控制翻译,并且延迟速度可调,这里边一个关键技术是对语言的预测,就是不仅我听到什么就知道什么,而且对下面的内容也会进行预测。比如我们看到今年百度世界大会的例子,实时性已经非常好,基本你说中文同时英文就出来了。


讲到这儿我回顾了我做机器翻译的历史,我不是在讲我自己,而是说人工智能的发展基本脉络是从对人的一些表层的模拟开始,比如我们最初用规则系统,后来发现有很多弊端存在,才开始用统计的机器学习的方法,然后又遇到一些算法算力等各方面的问题,解决后又上了一个台阶,这样不断持续进步的一个过程。




百度的人工智能,除了刚才讲的机器翻译、自然语言处理,我们其实是一个完整的平台,这里边除了对语言的理解,对知识的掌握运用以外,包括跟人的听觉相关的语音技术,跟视觉相关的计算机视觉技术等。现在我们所有技术基本都到了要做深层次的语义理解的阶段。而所有这些我们把它整体上集成起来形成这样一个人工智能平台既可以在百度内部用,也同时对外开放出来了。



今天我的主题是语言与知识,说完百度大脑现在回到语言与知识,这就是百度在这方面的整体布局,当然底层有知识图谱,知识图谱有很多不同的基本单位,通常的知识图谱基本单位就是实体,除了实体比如我们为了做个性化推荐,可能要做关注点图谱,同时要理解一些事件,要做序列化事件的图谱。然后为了做不同的行业,要做行业的知识图谱,包括要做地图就会有POI地点图谱等等,而后台的技术会有知识的挖掘、知识的整合和补全,以及怎样做分布式索引,存储计算、知识的计算推理等。



而自然语言处理从基本的语言的词、短语、句子到语义到篇章各方面都有很多工作的开展,这是从分析理解的角度。另一方面就是生成,可以做片段、摘要、也可以做整个篇章的。比如大家现在在网络上看到的很多文章其实都是机器自动写的。这些技术综合起来,相应会有很多不同的应用,比如说搜索、问答、对话,智能写作、翻译等等。


词法分析相对是比较经典的技术,尤其对中文来讲要做分词,这里我不详细讲分词的原理,相信很多朋友也都很清楚。分词现在的做法,主要靠语料的规模,人工标注的语料通常很有限,我们利用互联网挖掘一些弱标注数据,然后再用它对人工标注数据进行不断补充,产生更多的可以用来做训练的数据。


从句法分析来讲,比如搜索引擎上用户来查询,会做基本的句法分析,对于中文来讲我一直的观点是对于中文完全沿用西方语法的短语结构文法其实还是有一些不那么适合的地方,所以无论是我还是百度,我们做的句法分析一直在用依存文法。在语法层面有了以后就要做语义的分析,比如说我们看到的这个例子“胡歌演的古装剧有哪些”,进入到语义分析层面就会发现核心成分我们要找古装剧,然后知道是胡歌演的。一个完整的句子,用户输入进来,从基础的词法句法到语义分析,最后把核心语义成分提炼出来,最终就是两个关键词一个是胡歌,一个是古装剧。


除了理解单句还要理解篇章,篇章我们还要做很多事情,比如一篇文章我要知道它的主题,就要知道里面一些关键信息、话题、一些关键词等,我们把它叫做主题分析,另一方面想知道这篇文章作者的观点是赞成还是反对等等这些情感分析,这也是自然语言理解一个很重要的方向。我们读一篇文章的时候,看了内容之后,希望能从中获取一些知识、凝练一些知识,篇章理解对这些知识的获取也很重要。后面我讲知识图谱的时候会谈到知识获取的问题。


通过对篇章内容的理解和主题分析,我们就可以根据用户的兴趣推荐相应的新闻和资讯,我们还可以做很多其它事情。比如说我们看到一段用户的评论,我们可以去分析,这段评论对餐厅是推荐还是不推荐,是喜欢还是不喜欢。涉及到观点抽取的时候,又涉及到很多具体的技术比如情感搭配的挖掘,观点的计算等等,我就不详细讲具体的技术了。


涉及到知识获取,大家看到医院的这样一段病历,这样一个病历里头我们可以做要素和关系的抽取,然后可以把一个无结构的文本先进行结构化,基于结构化的文本我们构建出相应的这个领域的知识图谱。


百度做搜索已经很多年了,而自然语言理解技术其实在推动搜索引擎不断进步,我们能更好的理解用户的query,就可以更好的知道客户到底需要什么,另一方面我们更好的理解文本就能找到更精准的答案。所以搜索引擎从传统的只给一些链接,用户点进去自己看,发展到现在的智能搜索能更精准的理解需求,直接给用户答案。阅读理解除了我们自己做,我们也会开放一些数据跟大家共享,像我们开放的DuReader机器阅读理解数据集不仅规模非常大,而且都是每天用户搜索的真实数据。


刚才说起语言的事儿,我再接着说,怎么样基于大规模的海量数据,以及自然语言处理技术来构建大规模的图谱。这时候涉及到对完全没有标签的大数据进行开放的知识挖掘,涉及到语义空间的变换和知识整合,这些方面集成在一起,构成了我们庞大的知识图谱。比如百度基本的知识图谱是基于实体的,也就是现在ppt中间部分的,这个也是大家用知识图谱通常会用到的,百度现在构建了世界上最大的,包括三千多亿事实的知识图谱。大家可以想象,人脑虽然非常强大,但作为个体,没有人能记住几千亿个知识点。而靠知识图谱技术,靠这种自动挖掘、学习,构建的知识量是很大的。我们针对不同的应用可以构建行业的应用知识图谱,可以构建为了地图做出行、POI等等各方面的,针对特定应用的图谱。



举个医疗的例子,医疗对于人类来说是非常重要的,我们从基础医疗的大数据,比如教材,药典,病例等各方面获取基础数据,然后基于这些数据通过实体链接、结构化解析等技术构建出医疗知识图谱。形成图谱以后我们可以做很多的事情,比如说利用交互式问答、智能推理等技术进行分诊,自助诊断等等。


刚才说起了语言又说起了知识,我们也构建关于汉语语言的知识,比如我们从小学习语文,学了很多的成语、歇后语等等这些,这些对于汉语语言本身的知识也构成一个图谱。在百度搜索里非常多的用户有这样的需求,当一个用户不知道这个字怎么读的时候他可能会描述一下。比如说上面一个草字头,下面一个句子的句这个字怎么读,你可以输入文字搜索,也可以用语音来问,这个背后是基于汉语语言的知识图谱来做的。再比如我知道这个字之后我来问,包含“苟”的诗句是什么,他会找出相关的诗,背后都有汉语语言知识图谱在做支撑。  


除了做语言和知识本身的技术应用以外,还有很多是与其它人工智能技术的结合,比如说我们做语音、做视觉,包括大数据,最后它还是会跟语言知识结合起来,这个时候会是一个融合的深度语义理解过程,我们看到一个视频,除了对视频内容的分析以外,想进一步理解的是背后的相关知识,这个时候又要用到知识图谱。



时间关系这个部分我不详细讲了。大家看到这样一个片子,通过视觉技术来识别里面的关键信息,同时结合知识图谱我们能对这个片子有个更完整的理解。大家看到这个世界杯期间的一小段视频,前半段是用视频语义理解的技术,让电脑自动的在看这段视频,然后把相应的内容理解出来。之后我们要结合知识图谱,结合背景知识把它给完整的理解之后,利用语言的生成技术,最后用语音合成技术,合成一个世界杯比赛的自动解说。


另一个例子智能客服,更多是语言和知识与语音技术的结合,这个已经接入运营商的系统自动接客户的电话,不需要人来干预接听。这是一段真实的用户打进来电话,机器接听的例子,这背后需要语音的识别,需要对用户意图的理解,也需要背后的知识图谱,需要对业务流程的理解,最后合成出来帮用户完成他的需求,这也是各种人工智能技术综合在一起做成的智能客服。


语言和知识已经有很多地方在应用,如前面的例子。但也面临有几个挑战,在我看来这些方面是挑战很大的。


现在大数据规模非常大,但做特定应用、特定任务的时候仍然有语料稀疏的问题,怎么用无标注,弱标注数据去指导模型训练仍然是很重要的一个方向;


另一方面是知识有效的利用,为了有效利用知识,涉及到知识的发现、凝练、存储、计算、推理等一系列的事情。大家都知道神经网络非常热,如何让这两个差别很大的体系更好的深度融合,也我们需要进一步去探索;


另一方面就是结合应用场景的语用问题的解决,或者说我们做语言理解的时候涉及到各种语用的问题。


今天我的报告就到这里,我相信随着技术发展,我们会让机器越来越深入地理解语言、掌握知识、也拥有智能。谢谢大家!