1.5 智能问答技术

从早期的数字图书馆、专家系统到如今的搜索引擎,人们一直致力于追求快速、准确的信息获取方法。目前,网络上的数据资源浩如烟海、错综复杂,而用户的信息需求又千变万化、千姿百态,基于关键词组合的信息需求表示方式和基于浅层分析的语义分析这类传统的信息检索技术俨然不能满足当下用户的需求,智能问答技术通过对数据的深度加工和组织管理,以更自然的交互方式满足用户更精确的信息需求。

智能问答技术可以追溯到计算机诞生初期的上世纪五六十年代,其中,代表性的系统包括 Baseball [1]和 Lunar [2] 。Baseball 是最早的以“未来的人机交互将是以自然语言进行的交流方式”为目标构建的系统。Lunar 系统是为了方便月球地质学家查询、比较和分析美国阿波罗计划从月球带来的大量岩石和土壤分析数据而开发的问答系统。早期的这些系统大多针对特定领域而设计,一般处理的数据规模不大,因为只接受限定形式、限定领域的自然语言问句,也不需要强大的自然语言理解技术,其性能也与系统针对特定领域的定制程度相关。这类系统终归因为没有足够支撑应用的大量数据资源而难以被广泛应用。

进入到 20 世纪 90 年代,随着互联网技术的发展,人们希望利用日益丰富的网络数据资源解决智能问答中的数据匮乏问题,特别是随着 90 年代中期的 TREC -QA [3] 评测技术的推动,检索式问答技术取得了巨大的进展,这种系统的主要特点是:利用信息检索以及浅层自然语言处理技术从大规模本或网页库中抽取答案。但是,由于用户需求的多样性和自然语言的复杂性这种浅层的语义分析技术难以提取出有用的信息和准确理解用户查询意图 ( 比如,大部分检索式问答系统假设包含答案的句子至少含有一个问句中的词汇,但是这一假设在很多情况下不适用 ),因此这类检索式问答技术也未得到真实应用。

长期以来,阻碍智能问答技术发展的两大瓶颈是高质量的知识资源和精准的自然语言分析技术。随着Web2.0 的兴起,包括 Wikipedia 1 、ODP 2 等应用在内的众多基于用户协同生成内容(User-Generated Content,UGC) 的互联网服务产生了越来越多的高质量数据资源,以此为基础,大量的知识库以自动或半自动方式构建了起来(比如 Freebase 3 、YAGO 4 、DBpedia 5 等)。另外,随着 90 年代初统计机器学习方法和经验主义方法的兴起,自然语言处理中的各个任务都取得了突飞猛进的进展,无论是在基于语义分析的知识工程(如Reverb [4] )还是在大规模开放域问句深度理解方法都取得了长足的进步(如 SEMPRE [5] )。可以说,智能问答系统中所需要的知识资源和自然语言分析技术正逐步被科研人员解决。

近年来,不少智能问答产品取得的成果引起了社会公众对智能问答技术的关注,例如:IBM 研发的问答机器人 Watson 在美国智力竞赛节目《Jeopardy! 》中战胜人类选手;苹果公司研发的 Siri 系统在智能终端中的真实应用取得了良好的效果。实际上,Siri 系统内部的知识问答是提交给 WolframAlpha 6 处理的。Watson和 WolframAlpha 成功的关键因素包括:① 强大的知识资源:前者定义了自己的知识框架,并从大约 2 亿页的图书、新闻、电影剧本、辞海、文选和《世界图书百科全书》等资料中抽取知识,而后者对各个领域定义了自己的知识结构并抽取大量事实;② 深层语义分析技术:Watson 开发的 DeepQA 系统集成了统计机器学习、句法分析、主题分析、信息抽取、知识库集成和知识推理等深层技术。

值得注意的是,以智能问答技术为核心的智能聊天机器人近年来在国内发展的如火如荼,除了已面世的微软公司的“小冰”、百度公司的“度秘”和华为公司的“小诺”,众多企业和研究团体也在该领域发力突破。这类聊天机器人从目前来看虽然还不能解决太多真实信息需求,但是可以把智能问答的研究进展以用户喜闻乐见的方式带给大众是使其走向成熟的关键步骤。下面将介绍智能问答系统中涉及的主要关键技术:知识抽取、问句理解和知识推理。