中国人工智能学会通讯——面向知识图谱的自然语言问答系统

中国人工智能学会通讯——面向知识图谱的自然语言问答系统

自然语言问答(QA)是指利用各种技术和数据对用户提出的自然语言问题直接给出问题答案。QA任务根据所依赖的数据形态可以分成三类,分别是基于知识库的问答(KB-QA)[1-9]、基于文档的问答(DB-QA)[10]和社区问答(C-QA)[11]。其中,基于知识库的问答是指在结构化的知识库中寻找自然语言问题的答案;基于文档的问答是指在非结构化的文档集合中寻找与自然语言问题最匹配的语句或者段落,然后通过抽取的方式来确定答案;社区问答则是由人工参与的问答,社区中的用户可以提出问题或回答别人的问题,系统本身也可能推荐相似的问题或答案,典型的社区问答包括百度问答、知乎和Yahoo Answers等。

本文主要介绍面向知识图谱的问答系统。知识图谱是目前知识库的一种常见的表达形式,是以图形(Graph)的方式来展现“实体”、实体“属性”,以及实体之间的“关系”。近年来,随着大数据、人工智能等概念与技术的兴起,知识图谱和KB-QA相关的研究工作和工业应用逐渐引起重视。例如由Amazon收购的EVI系统(原名为TrueKnowledge)[12],就是一种面向开放领域的结构化知识的问答系统;在其2010年发表的论文中提出通过模板的方式将用户输入的自然语言问题转换成结构化查询语句,从而得到查询结果。Facebook定义的Facebook Social Graph,用于连接社交网络的用户,用户分享的照片、电影、评论,甚至包括通过Facebook定义的Graph API所链接的第三方的关于社交用户知识图谱数据。在所构建的Social Graph基础上,Facebook推出了Graph Search(图搜索)功能,即将用户的自然语言问题,转化为面向Social Graph上的图搜索问题,从而回答用户的自然语言问题。另外越来越多的chatbot(聊天机器人)产品中也引入了面向知识图谱的问答功能,使得chatbot和人交互时用户可以获得更多知识方面的回答。IBM的Watson系统在参加智力问答节目《危险边缘》(Jeopardy)的比赛时,也同样采用DBpedia和Yago知识图谱数据来回答某些自然语言问题[13];相比于传统基于文档的问答方法,基于知识图谱的问答其准确度更高,但是这样方法所能回答的问题相对较少。例如图1显示,IBM的Watson系统利用知识图谱检索可以回答问题的覆盖面小于传统利用文本搜索的覆盖率,但是利用知识图谱进行问答其精确度要高得多。

中国人工智能学会通讯——面向知识图谱的自然语言问答系统

面向知识图谱问答的关键在于,如何跨越自然语言的问题语句和结构化知识库之间的语义鸿沟。目前来讲,KB-QA的方法有两大类,即基于信息检索的方法[1-4]和基于语义解析的方法[5-9]。信息检索式的方法一般不生成作为中间结果的结构化查询语句,而是直接从知识图谱中检索候选答案,再通过对候选答案进行打分或者排序,从而返回最终的问题答案;而语义解析式的方法则是通过对自然语言问题进行语义解析,将问题转化成给定知识库相应的查询语言再进行查询,将查询结果作为答案返回。