![c3b8211e4a8703e6ddad5098dcf4574f.png](https://i-blog.csdnimg.cn/blog_migrate/c3bd5fae6c33c5d2c82c02a3004921ef.jpeg)
编者按:4月3日,微软亚洲研究院副院长周明受邀参加北大AI公开课,与大家分享了近期自然语言技术取得的进展和创新成果,并探讨了自然语言技术和搜索引擎如何进一步结合并创造新的可能。在课后问答环节,周明解读了当前自然语言技术比较重要的研究方向,并为想要进入这一领域的同学提供了一些实用建议。本文由 AI 前线(ID:ai-front)独家整理首发,未经授权请勿转载。
![d1f2deaee76aaf759eec0bd25e0449c2.png](https://i-blog.csdnimg.cn/blog_migrate/49c4469e756e3b7ede4162ce60aedb7f.jpeg)
课程导师:雷鸣,天使投资人,百度创始七剑客之一,酷我音乐创始人,北大信科人工智能创新中心主任,2000 年获得北京大学计算机硕士学位,2005 年获得斯坦福商学院 MBA 学位。
![9032ecdf0753ba0dd7ba63ec5b2010f3.png](https://i-blog.csdnimg.cn/blog_migrate/8944803aa799b1980f849dc6c0ba00f8.jpeg)
特邀讲者:周明博士, 1999年加入微软研究院,现任微软亚洲研究院副院长,也是现任国际计算语言学会(ACL)会长,中国计算机学会理事、中文信息技术专委会(即NLP专委会)主任、中国中文信息学会常务理事。他长期领导NLP的研究,包括输入法、在线词典(必应词典)、下一代搜索、机器翻译、问答、聊天机器人、计算机对联(微软对联)、知识图谱、语义分析、文本挖掘、文本生成、用户画像和推荐系统等。主编《机器翻译》、《智能问答》等NLP技术专著。他的团队对微软产品(譬如Office、Windows、必应搜索、Azure、小冰等)的NLP技术做出了不可替代的贡献。
以下为 AI 前线(ID:ai-front)独家整理的周明老师课程内容(略有删减)
对于搜索引擎来说,最重要的是两件事,第一是智能程度,指的是理解用户意图和文档,然后快速找出答案,这是智能部分;第二是自然程度(Naturalness),指的是根据用户输入的搜索请求,把搜索结果很自然地展现给用户,整体表现就是搜索非常流畅。自然语言从搜索引擎出现开始一直到今天为止,都对搜索引擎的智能和自然这两个方面起到了极为重要的作用。
搜索引擎背后的 NLP 技术
下图是一个典型的搜索引擎,我们以微软Bing搜索为例回顾一下搜索引擎的工作过程,再看看其中涉及到哪些自然语言技术。
![1d92ef3a102bb30ec8b06fc75eed361e.png](https://i-blog.csdnimg.cn/blog_migrate/1d8c1df4507fc60ac1908e18f89ba521.jpeg)
首先会有一个输入框,我们叫做Header&Search Box,用于输入Query。用户输入Query之后,它就要干一件事,叫Context&Query Understanding。搜索引擎首先要理解Context,就是什么人用了什么样的设备、在什么地点输入这样的Query,其次要理解用户的意图,就是用户输入这个Query是想搜什么。
基于理解的结果,再到网上去搜索。主要会搜出几件事,第一个就是Ten Blue Links即十个最重要的匹配文档。还有Super Fresh内容,就是新鲜的一些事物或者文档,比如新闻的有关结果搜出来。还有一些Instant Answer,就是涉及到天气、股票、交通等垂直领域的信息,我们一般都叫Instant Answer。还有一些Task&Social Pane,Task指的是基于搜索结果的页面上还可能要做新的任务,比如订票;Social Pane是列出相关的微信、微博或LinkedIn的各种信息。最后在以上的各种搜索结果基础上配上合适的广告。
这就是我们的搜索引擎基于一个用户Query到最后输出搜索结果的一个过程。然后我们要把这些结果体现在一个网页上,再对页面进行整体优化,适应于不同的设备、浏览器和屏幕(比如桌面和手机),页面布局要美观大方。
为了支持这个搜索过程,我们需要一些Offline的操作,最主要的就是Crawler和Index。Crawler指的是到网上把浩如烟海的各种文档爬下来,爬的越多越好;然后是Index,把重要的文档选出来,同时把每篇文档中其中的重要信息摘出来,一般是用关键词来做索引,然后入库;这个过程中需要把一些有极端倾向或者黄色的文档过滤掉。这些都是Offline要做的工作,最后要把结果体现到web index里面,供搜索的前端系统使用。
我们可以看到,整个搜索过程背后用到了很多自然语言技术,具体如下图。
![54e7492bf814773130b2047cec01f1cc.png](https://i-blog.csdnimg.cn/blog_migrate/fc515b687b0588edcf0fca2fb9803c6d.jpeg)
在搜索引擎初期,自然语言技术用的比较浅。随着自然语言技术快速发展并变得越来越成熟,我们把越来越多的自然语言技术(NLP)试探性地放到搜索引擎中,看它能起到什么样的效果,并不断加以改进直到稳定。NLP在搜索中的作用越来越重要。
今天的讲座主要回答两个问题,第一是自然语言处理到底有哪些新的进展;第二是这些新的进展给我们的搜索引擎带来了什么新的变化,或者未来可能会带来什么新的变化。
自然语言技术的重要组成
自然语言技术覆盖的领域可以总结为三方面,包括 NLP 基础、NLP 核心技术和 NLP 应用。
NLP基础包括词的表示,比如现在热门的word Embedding。词的表示包括上下文无关的表示和上下文有关的表示,前者就是静态的Word Embedding,后者现在一般使用各种预训练模型,根据当前的句子来体现一个词在特定上下文的的语境里面该词的语义表示。同样一个词,在不同的语境下,其语义表示也不一样。基于词的表示,我们就可以做很多应用,比如语言模型、分词、语言模型、句法语义分析、篇章分析、等等,这些都是NLP的基础。
基于 NLP 基础,我们又有很多 NLP 的核心技术,包括机器翻译、问答、信息检索、信息抽取、对话、知识工程,还有自然语言生成、推荐系统,等等。
基于 NLP 核心技术,我们就可以把 NLP 用在一些具体的应用中,比如搜索引擎、客服、商业智能和语音助手。
为了完成这些任务还需要很多底层支撑技术,包括用户画像建模、用于实现个性化的推荐技术、大数据能力、计算能力、机器学习和深度学习的能力、知识库、常识及推理的能力。
深度学习对自然语言技术的影响
深度学习先后对图像、语音、自然语言这些领域都产生了重要的影响。其中,深度学习对自然语言的影响主要体现在以下 6 个方面:
1. 端到端训练(End-end training)
过去做统计自然语言处理的时候,都是由专家去定义各种Feature,需要很多领域知识。有的时候不容易找到很好的Feature。而有了端对端的训练,只要有输入和输出的对照(输入-输出),把输入对应的输出标注好,形成训练数据集合。然后用神经网络通过自动训练就可以得到学习系统,不需要人为设定和优选Feature。这改变了很多自然语言技术的发展,大大降低了自然语言处理的技术门槛。这意味着,你只要有算力和标注数据,基本上可以“傻瓜式”地实现一个