我们在日常生活中经常使用自然语言对话系统,比如苹果Siri。现在的对话系统多数只能做单轮对话,可以帮助用户完成一些简单的任务,如问天气,查股票(如果做多轮对话,也是在单轮对话的基础上加一些简单处理)。实现这些自然语言对话系统的基本技术可以分为两大类,基于规则的和基于数据的。你也许想知道对话系统的基本原理是怎样的?特别是如何用数据驱动的方式构建一个对话系统?
最近基于数据的自然语言对话技术取得了突破性的进展。我们发现,利用深度学习和大数据,可以很容易地构建一个单轮对话系统,自动生成对话,并且取得惊人的好效果。比如,用5百万微博数据可以构建一个系统,用户给出一句话,这个系统可以自动生成一句回答。用户输入“我想买一部三星手机”,系统回答“还是支持一下国产的吧”,等等。你也许想知道这是如何实现的?能达到什么样的水平?
本文试图系统地回答以上问题。首先指出,自然语言对话将是人们信息访问的主要手段,信息检索领域的主要研究范式。之后,定义自然语言对话任务,对相关技术进行分类,列举主要技术挑战。接着,详细介绍如何构建基于数据的对话系统。最后,详细介绍最新的基于深度学习的对话技术。当中也介绍深度学习在自然语言表示学习中的最新成果。
信息检索领域的范式转移
“科学的发展依赖于间断性、革命性的变化”,这是科学哲学与科学史学家托马斯·库恩(Thomas Kuhn)的名言。库恩认为科学的每个领域都有不同的“范式” (paradigm),它们有着不同的研究对象、基本概念、解决问题的手段,甚至不同的研究者群体,比如,在物理学领域,量子力学与牛顿力学就属于不同的范式。科学的发展不是连续的,而是间断的,量子力学并不是在牛顿力学基础上发展起来的。当一个领域发生革命性的变化的时候,一定有新的范式产生,库恩称之为范式转移(paradigm shift)。
信息检索是计算机科学的一个分支,研究和开发计算机帮助用户管理、访问、使用信息的技术。纵观信息检索几十年来的发展历程,可以看到它已经历了两个主要范式:图书馆搜索和互联网搜索。七十年代研究的重点是如何帮助用户在图书馆快速地查找文献资料,有不少该领域基本技术被开发出来,比如向量空间模型。九十年代研究的重点是如何帮助用户在互联网上迅速地访问想访问的网页,有许多创新,链接分析、排序学习、语义匹配、日志分析等技术被开发出来。
2011年苹果公司发布了语音助手系统Siri,标志着一个新的时代的开启。自然语言对话成了人们访问信息的一个新的手段。现在,移动设备成为个人计算的主流,越来越多的用户通过移动设备访问信息。在移动设备上,自然语言对话是人机交互最自然的,最有效的方式。另一方面,自然语言对话的技术,虽然达到了一定可用的水平,但还不成熟,不能很好理解用户的意图,不能充分满足用户的需求。这就意味着,围绕自然语言对话有很多待解决的具有挑战性的问题,它自然成为信息检索领域研究的一个新的重点,一个新的范式。 |