自然语言处理技术的现状和未来
随着智能语音助手、聊天机器人(Chatbot)等产品逐渐成熟,出现在普通用户的眼前,其中的一些核心技术也正变得越来越重要、越来越受到大家的关注。自然语言处理技术(Nature Language Processing,简称 NLP)就是其中之一。
近日,微软亚洲研究院副院长周明博士就自然语言处理技术的概况、最新进展及未来发展方向对外界做了一次分享,极客公园也借机与周明博士进行了交流,下面,我们就把其中的内容介绍给大家,通过这场分享,或许我们能对自然语言处理这项技术有更全面的理解。
概述:人工智能技术整体的发展状况
人工智能经过 61 年的发展,起起伏伏,曾经历过两次冬天,随着云计算、大数据、深度学习三大要素的交织下,人工智能又迎来了一个新的春天。而这次人工智能春天的特点有以下三点:
- 第一,数据比以前大了很多倍。以前做人工智能基本上是请一些专家录入数据写一些简单的规则,现在都海量的数据,包括互联网数据。
- 第二,计算的能力大大发展。以云计算为代表的计算能力使人们在训练或实施时不用再担心。以前的 PC 机能力非常有限。
- 第三,所谓的深度学习技术,实现了点对点、端对端的训练。你需要做的就是掌握并整理标注的数据,放到深度学习框架里面,它自动学习,自动抽取课程完成你所需要完成的任务。这使得机器学习的门槛大幅度下降,人工智能可以走向平民化,很多领域都可以用人工智能实现。
此外,还有重要的一点,就是落地的场景,这是过去两次浪潮都没有的。过去都是套用系统,做一些小游戏、小玩具,比如做一个小问答系统。而现在的人工智能是有实实在在的应用场景,比如说现在亿万网民都在使用的搜索引擎背后就有很多人工智能的系统;自动驾驶汽车从感知到认知都用到了很多人工智能技术。
(微软亚洲研究院副院长周明博士)
这个场景有什么好处呢?一开始技术是有限的,能力是有问题的,随着越来越多人将其作为刚需使用,自然而然提供了海量的反馈,整个系统就可以不断提升。比如说搜索引擎,网民使用搜索引擎实际上也在帮助搜索引擎训练。
自然语言处理技术的概况
人工智能是用电脑来模拟和实现人类的智能,而人类的智能大概分如下几个层次:运算智能、感知智能、认知智能以及最高一层的创造智能。其中,自然语言处理技术主要属于第三层认知智能这一部分。
自然语言处理是体现语言智能重要的技术,它是人工智能一个重要的分支,能帮助机器分析、理解或者生成自然语言,实现人与机器的自然交流,同时也帮助人与人之间的交流。
自然语言处理包括以下几方面内容:
- 第一是 NLP 的基础技术,围绕不同层次的自然语言处理,比如说分词、词性标注、语义分析做一些加工。后面做任何其他新的技术或者应用都必须要用到基础技术。
- 中间这块是 NLP 核心技术,包括词汇、短语、句子、篇章的表示,大家所说的 Word Embedding 就是在研究不同的语言单位的表示方法。它也包括机器翻译、提问和回答、信息检索、信息抽取、聊天和对话、知识工程、语言生成、推荐系统。
- 最后是「NLP+」,仿照「人工智能+」或「互联网+」的概念,实际上就是把自然语言处理技术深入到各个应用系统和垂直领域中。比较有名的是搜索引擎、智能客服、商业智能和语音助手,还有更多在垂直领域——法律、医疗、教育等各个方面的应用。
从四个方面介绍 NLP 的进展
- 首先介绍机器翻译的进展
微软这两年在机器翻译上有了新的长足的进步,首先是在语音翻译上全面采用了神经网络机器翻译,并拓展了新的翻译功能,叫做 Microsoft Translator Live Feature(现场翻译功能),在演讲和开会时,实时自动在手机端或桌面端,把演讲者的话翻译成多种语言。
这张图概括了神经网络机器翻译,简要的说,就是对源语言的句子进行编码,一般都是用长短时记忆 LSTM 进行编码。编码的结果就是有很多隐节点,每个隐节点代表从句首到当前词汇为止,与句子的语义信息。基于这些隐节点,通过一个注意力的模型来体现不同隐节点对于翻译目标词的作用。通过这样的一个模式对目标语言可以逐词进行生成,直到生成句尾。中间在某一阶段可能会有多个翻译,我们会保留最佳的翻译,从左到右持续。
这里最重要的技术是对于源语言的编码,还有体现不同词汇翻译的,不同作用的注意力模型。此外,微软还持续做了一些工作,其中主要有两个方面。
第一,引入语言知识。因为在编码的时候是仅把源语言和目标语言看成字符串,没有体会内在的词汇和词汇之间的修饰关系。我们把句法知识引入到神经网络编码、解码之中,这是传统的长短时记忆 LSTM,这是模型,我们引入了句法,得到了更佳的翻译,这是大家看到的指标有了很大程度的提升。
第二,引入领域内的知识图谱。微软想把知识图谱纳入到传统的神经网络机器翻译当中,来规划语言理解的过程。其中的一个假设就是虽然大家的语言可能不一样,但是体现在知识图谱的领域上可能是一致的,就用知识图谱增强编码、解码。具体来讲,就是对于输入句子,先映射到知识图谱,然后再基于知识图谱增强解码过程,使得译文得到进一步改善。
- 其次是中国文化的部分
2004 年的时候,微软就已经在对联的部分尝试过用机器翻译的技术来模拟对联的全过程。而最近,在微软对联的基础上,他们又继续去尝试其他的中国文化,其中有一个特色就是字谜。
字谜是给你谜面让你猜谜底。当然也可以反过来,给定一个谜底,让你出谜面。现在,已经可以用电脑来模拟整个猜字谜和出字谜的过程了,我们也把这个功能放在了微软对联的网站上。
同时,微软亚洲研究院的宋睿华博士最近就在用这种神经网络的技术来进行诗歌的创作。这件事非常有创意:用户提交一个照片,让系统进行,然后变成一首诗,自由体的诗。大概两周以前,微软小冰发布了微软小冰写诗的技能,引起了很多人的关注。这种把人工智能和中国文化巧妙结合起来的方式也很有创意。
- 对话即平台
下一个方向是「对话即平台」,英文叫做「Conversation as a Platform(CaaP)」。2016 年,微软首席执行官萨提亚在大会上提出了 CaaP 这个概念,他认为继图形界面的下一代就是对话,它会对整个人工智能、计算机设备带来一场新的革命。
提出这个概念有两个原因。
- 第一个原因源于大家都已经习惯用社交手段,如微信、Facebook 与他人聊天的过程。微软希望将这种通过自然的语言交流的过程呈现在当今的人机交互中,而语音交流的背后就是对话平台。
- 第二个原因则在于,现在大家面对的设备有的屏幕很小,有的甚至没有屏幕,所以通过语音的交互,更为自然直观的。因此,我们是需要对话式的自然语言交流的,通过语音助手来帮忙完成。
而在产品策略上,微软在做 CaaP 的时候实际上有两个主要的产品策略。
第一个是小娜,通过手机和智能设备介入,让人与电脑进行交流:人发布命令,小娜理解并执行任务。第二个就是小冰。它是一种新的理念,就是人与它之间的闲聊。
而无论是小冰这种闲聊,还是小娜这种注重任务执行的技术,其实背后单元处理引擎无外乎就三层技术。
- 第一层:通用聊天,需要掌握沟通技巧、通用聊天数据、主题聊天数据,还要知道用户画像,投其所好。
- 第二层:信息服务和问答,需要搜索的能力,问答的能力,还需要对常见问题表进行收集、整理和搜索,从知识图表、文档和图表中找出相应信息,并且回答问题,我们统称为 Info Bot。
- 第三层:面向特定任务的对话能力,例如定咖啡、定花、买火车票,这个任务是固定的,状态也是固定的,状态转移也是清晰的,那么就可以用 Bot 一个一个实现。你有一个调度系统,你知道用户的意图就调用相应的 Bot 执行相应的任务。它用到的技术就是对用户意图的理解,对话的管理,领域知识,对话图谱等等。
为了把这种能力释放出去,让每个人都能够体验人工智能的好处,微软开发了一个叫 Bot Framework 的工具、平台,任何一个开发者只用几行代码就可以完成自己所需要的 Bot。
- 最后一个方面是阅读理解
阅读理解顾名思义就是给你一篇文章,看你理解到什么程度。为了推动阅读理解的发展,美国斯坦福大学就开发了一个测试题,也开放给大众。它既有训练的部分,也有开发的部分,还有测试的部分。每个参赛队伍拿到测试题目,自己进行训练。通过开发调自己的参数,最后提交自己的系统,然后斯坦福大学就把你的成绩公布到他的网站上。
从去年 9 月份到现在,微软亚洲研究院一直名列第一。现在人工阅读的正确率能做到 82% 左右,而现在我们微软亚洲研究院的结果在 76% 左右,与人类水平还差 5 分左右。在阅读理解这样难的技术上,我们可以清醒的认识到还有很长的路要走。其实就包括对常识知识的把握、推理的能力,还有识别问题、上下文理解的问题等等。
NLP 未来的发展方向
- 第一,随着大数据、深度学习、云计算这三大要素推动,所谓认知智能,尤其是语言智能跟感知智能一样会有长足的发展。从初步的应用到搜索、聊天机器人上,到通过对上下文的理解,知识的把握,它的处理能力得到长足的进步。具体来讲,口语机器翻译肯定会完全普及,任何人出国,无论到了哪个国家,拿起电话来你说你的母语,跟当地人交流不会有太大的问题,而且是非常自如的过程,就跟你打电话一样。虽然这不意味着同声翻译能彻底颠覆,也不意味着这种专业领域的文献的翻译可以彻底解决;但我认为还是会有很大的进展。
- 第二,自然语言的会话、聊天、问答、达到实用程度。这意味着在常见的场景下,通过人机对话的过程完成某项任务,这个是可以完全实现,包括带口音的说话都可以完全听懂。但是同样,这也不代表任何话题、任何任务、用任何变种的语言去说都可以达到。目前离那个目标还很远,我们也在努力。
- 第三,智能客服加上人工客服完美的结合,一定会大大提高客服的效率。我认为很多重复的客服工作,比如说问答,还有简单的任务,基本上人工智能都可以解决。但是复杂的情况下仍然不能解决。所以,它实际上是人工智能跟人类智能完美生产线的结合来提高一个很好的生产力,这个是没有问题的。
- 第四,自动写对联、写诗、写新闻稿和歌曲等等,我认为今天可能还是一个新鲜的事物,但是五到十年一定都会流行起来,甚至都会用起来。比如说写新闻稿,给你一些数据,这个新闻稿草稿马上就写出来,你要做的就是纠正,添油加醋,供不同的媒体使用等。
- 第五,在会话方面,语音助手、物联网、智能硬件、智能家居等等,凡是用到人机交互的,我认为基本上都可以得到应用,而且促进以上的一些产品推广。
- 最后,认知智能、感知智能一起努力,在很多场景下,比如说法律、医疗诊断、医疗咨询、法律顾问、投融资等等,这些方面自然语言会得到广泛的应用。