KBQA简介

本文探讨了基于知识库的自然语言问答系统,分为信息检索式和语义解析式两种方法。信息检索式方法直接检索候选答案并排序,适用于简单问题。语义解析式方法通过解析问题语义生成查询语言,实现精准回答。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这篇文章节选自人工智能学会通讯2017-7卷(面向知识图谱的自然语言问答系统)。

自然语言问答 (QA) 是指利用各种技术和数据对用户提出的自然语言问题直接给出问题答案。KB-QA是基于知识库的问答。

KB-QA 的方法有两大类,即基于信息检索的方法 [1-4] 和基于语义解析的方法 [5-9]。

信息检索式的方法一般不生成作为中间结果的结构化查询语句,而是直接从知识图谱中检索候选答案,再通过对候选答案进行打分或者排序,从而返回最终的问题答案;

而语义解析式的方法则是通过对自然语言问题进行语义解析,将问题转化成给定知识库相应的查询语言再进行查询,将查询结果作为答案返回。

在这里插入图片描述

信息检索式的知识库问答

信息检索式的方法通常先确定问题的中心实体,继而生成问题的若干候选答案,再使用打分、排序等方式找出最适合原问题的答案。这类方法的整体框架比较简洁,对于简单问题有较好的效果。

信息检索式的方法通常先确定问题的中心实体,继而生成问题的若干候选答案,再使用打分、排序等方式找出最适合原问题的答案。这类方法的整体框架比较简洁,对于简单问题有较好的效果。

确定中心实体

信息检索式的方法通常假设问题足够简单,大多数系统认为问题中有且仅有一个实体,这个实体被称作中心实体 (Topic Entity),这是用户输入自然语言问题的核心,同时假设问题答案在知识图谱中离中心实体足够近,例如在离中心实体 θ 步以内(θ通常取 2)。例如问题“What is the budget of Resident Evil? ”的中心实体是 Resident Evil,疑问词是 What。对于较复杂的问题,这类方法通常使用启发式规则和模板将复杂问题分解成若干简单问题,依次处理简单问题再对各答案集合求交集。

确定中心实体的本质任务是实体识别(Entity Recognition),其目标是检测出自然语言问题中代表实体的短语,并进一步将这些短语映射到特定的实体上。后一步工作常被称作实体连接 (Entity Linking) 或者实体消歧。若识别出多个实体,通常选择其中置信度最高的实体,或依次作为中心实体进行后续步骤。

在确定中心实体后,自然语言问题就在知识图中有了一个定位。由于问题规模有限,通常假设答案在知识图中离中心实体的距离足够近。这样,一种简单直观的方法就是将中心实体 θ 步之内的邻居节点都作为候选答案 (θ 通常取 2)。

问题答案排序

确定中心实体,以及候选答案后,需要给各候选答案进行评分或排序,从而决定最终的结果。这是基于信息检索方式的问答系统重要阶段。评分或排序的方法包括基于特征抽取的方法 [3],也包括基于深度学习的 Graph Embedding 的方法 [4]。

用来计算答案最终得分的特征多种多样,这些特征通常从实体、关系和答案三个角度出发。与实体相关的特征主要包括实体链接的置信度,实体的表征短语和实体之间的单词重叠数等。与关系相关的特征主要包括关系抽取的置信度,关系两侧可以接受的类型等。与答案相关的特征主要包括答案的数目、答案的类型等。除此之外,不同的问答系统还可能考虑各自独有的特征。在计算出候选答案的特征之后,需要使用某种排序模型进行排序,以选择最合适的结果。排序学习 (Learning to Rank) 在信息抽取 (Information Retrieval) 领域中已经受到广泛关注和系统研究 [14],主要分为单文档方法 (PointWise Approach)、文档对方法 (PairWise Approach) 和文档列表方法(ListWise Approach)。其中文档对方法将排序问题转化为分类问题,在 KB-QA 任务中的表现较好,一些较成熟的算法可以直接使用,例如 SVM-rank[15]。

另一方面,一些系统利用神经网络和各类 Embedding 的方法,直接评价候选答案与原问题之间的匹配程度。文献 [1] 将候选答案和原问题分别向量化,再使用多通道卷积神经网络 (MCCNN) 计算候选答案与原问题之间的相似度。文献 [2] 将候选实体生成与关系抽取 (Relation Extraction) 结合起来,利用原问题的上下文信息,使用卷积神经网络为候选实体对应的关系进行打分。文献 [4] 将候选答案周围的边和节点一同作为子图进行 Embedding,再与原问题的向量做点乘作为得分 ( 如图 2 所示 )。

在这里插入图片描述

语义解析式的知识库问答

基于语义解析 (semantic parsing) 的方法是指先利用语义解析理解自然语言问题的语义,将问题转化为具备相同语义的逻辑形式,再通过查询引擎对生成的逻辑形式进行查询处理,得到最终结果。上述过程分别对应语义解析和查询执行两个主要阶段。这类方法的优点在于如果解析成功,则能完整获得提问者的意图,从而精确地返回查询结果。与此同时,将生成的逻辑形式展示给用户可以让用户检验系统是否理解正确,哪一步解析发生了错误,从而利用用户反馈进一步改善系统的精度。因此这种方法是一种“可解释”的面向知识图谱的自然语言问答方法。语义解析式的问答系统所生成的逻辑形式一般与对应数据库的查询语言相同,例如 RDF 知识库对应的 SPARQL 语言;或者是通用的逻辑表达式,例如 Lambda 表达式;也有系统使用其他的逻辑形式,例如查询图等。

作为基于语义解析的问答系统中最重要的阶段,语义解析 ( 问题理解 ) 一般可以分解为三个任务,分别是短语检测、资源映射和语义组合。

短语检测

短语检测的目标是将问题中蕴含有效信息的短语抽取出来,这些短语被称作表征短语。蕴含有效信息是指能够对应到知识库中的特定元素 ( 实体,概念,关 系 )。例如, 图 3 中的短语 film 对 应知识库中的概念 ( 类型 )dbo:Film,短语directed by 对应知识库中的谓词 ( 关系 )dbo:director。

在这里插入图片描述

短语检测的难点在于冲突处理。例如在句子“The lyrics of April in Paris”中,短语“April in Paris”对应到知识库中的一首歌曲,短语“Paris”对应知识库中的一座城市,二者之中只能有一个被选作表征短语。较常被使用的应对策略是“最长覆盖原则”[16],即优先选择那些更长的短语而抛弃有冲突的较短短语。文献 [17] 提出了一种将冲突问题转化为带权极大团问题,再利用经典算法解决的思路。

资源映射

给定自然语言问题中的若干表征短语,资源映射的目标是将各短语映射到知识库中的特定元素。根据映射元素的不同种类,资源映射可以被分为实体链接 (entitylinking) 和关系识别两个主要任务 (relation extraction)。这两个任务在自然语言处理(NLP) 领域被广泛研究。

实体链接的难点在于如何消除歧义。知识库中的实体在自然语言中可能有多种表述形式,自然语言短语也可能指代不同的实体。例如“Obama”既可能是指“Barack_Obama”,也可能指“Michelle_Obama”。如何选择合适的实体需要考虑到上下文环境、字符及语义层次的相似度,以及实体本身的流行度等相关因素。

关系识别的任务目标是将自然语言关系短语映射到知识库中的谓词。解决方案主要包括依赖于预定义的模板进行匹配、根据构建好的短语关系复述词典进行识别 [8]、通过神经网络模型进行相似度计算 [9] 等。关系识别的难点在于隐式关系和复杂关系,例如“Chinese actor”隐藏着国籍的关系,“grandson”对应知识库中一条路径而不是一个简单谓词。文献 [5] 提出了一种基于规则的桥接(bridging)方法来补充上述隐式谓词的情况。

语义组合

将自然语言问题中的表征短语抽取出来,并将它们与知识库中的实体、谓词等元素对应起来。语义解析的最后一步就是将这些元素组合成对应的逻辑形式。对于

简单的问题,一般只包含单一实体和关系,只需要将其相连即可。对于复杂的问题,可能包含多个实体和关系(例如图 3 所示),则需要考虑各实体和关系之间如何配对组合。

文献 [6-7] 等工作通过模板匹配的方式来进行逻辑形式的构建。文献 [6] 预先定义了若干 Lambda 表达式的模板,先根据模板生成问题 N 的若干候选 Lambda 表达式,然后对于每个表达式生成若干复述语句,再通过语言复述模型 (Paraphrase Model) 来比较这些复述语句和 N 的相似度,从而选择最合适的表达式。文献 [7] 针对特定数据库Freebase 和评测集 WebQuestions 设计了三个查询模板,覆盖了其中将近 95% 的问题。由问题 N 匹配到查询模板时,获取 N 中每个实体在知识库中两步内所有符合模板限制的查询图作为候选,再经过特征提取和排序选择其中最好的作为最终查询。总的来说,基于模板的结构化查询生成的方法,被广泛应用到工业界的知识库问答系统中,例如前面提到的被 Amazon 收购的 EVI 系统,就是通过人工定义模板的方法 [12] 来生成面向知识库的结构化查询。

文献 [9] 提出了一种查询图生成方法STAGG(见图 4),基于识别出的实体和关系定义了若干操作和状态。查询图最初由只包含一个实体的状态开始,通过不同操作进行扩展 ( 状态转移 )。对于每一种状态由状态评估模型给出置信度,每次操作优先作用于当前置信度最高的状态。当所有候选都扩展完毕后,选取全局得分最高的状态作为最终查询图。

在这里插入图片描述
当问题被转化为结构化的逻辑形式时,只需要使用相应的数据查询引擎执行查询就可以了。对于没有直接生成 SPARQL 查询的 RDF 问答系统,利用一些简单规则将生成的逻辑形式进一步转化成 SPARQL语言,再利用现有的 SPARQL 查询引擎(Virtuoso[18]、GStore[19] 1 等 ) 进行查询,得到最终结果。

参考文献

[1]Dong L, Wei F, Zhou M, et al. Question Answering over Freebase with Multi-Column Convolutional Neural Networks[C]//ACL (1). 2015: 260-269.

[2] Kun Xu, Siva Reddy, Yansong Feng, Songfang Huang, Dongyan Zhao: Question Answering on Freebase via Relation Extraction and Textual Evidence. ACL (1) 2016.

[3] Yao X, Van Durme B. Information Extraction over Structured Data: Question Answering with Freebase[C]//ACL (1). 2014: 956-966.

[4] Bordes A, Chopra S, Weston J. Question answering with subgraph embeddings[J]. arXiv preprint arXiv:1406.3676, 2014.

[5] Berant J, Chou A, Frostig R, et al. Semantic Parsing on Freebase from Question-Answer Pairs[C]//EMNLP. 2013, 2(5): 6.

[6] Berant J, Liang P. Semantic Parsing via Paraphrasing[C]//ACL (1). 2014: 1415-1425.

[7] Bast H, Haussmann E. More accurate question answering on freebase[C]//Proceedings of the 24th ACM International on Conference on Information and Knowledge Management. ACM, 2015: 1431-1440.

[8] Zou L, Huang R, Wang H, et al. Natural language question answering over RDF: a graph data driven approach[C]//Proceedings of the 2014 ACM SIGMOD international conference on Management of data. ACM, 2014: 313-324.

[9] Yih S W, Chang M W, He X, et al. Semantic parsing via staged query graph generation: Question answering with knowledge base[J]. 2015.

[10] Fu J, Qiu X, Huang X. Convolutional Deep Neural Networks for Document-Based Question Answering[C]//International Conference on Computer Processing of Oriental Languages. Springer International Publishing, 2016: 790-797.

[11] Da San Martino G, Barrón Cedeño A, Romeo S, et al. Learning to re-rank questions in community question answering using advanced features[C]//Proceedings of the 25th ACM International on Conference on Information and Knowledge Management. ACM, 2016: 1997-2000.

[12] Tunstall-Pedoe W. True knowledge: Open-domain question answering using structured knowledge and inference[J]. AI Magazine, 2010, 31(3): 80-92.

[13] David A. Ferrucci, Eric W. Brown, Jennifer Chu-Carroll, James Fan, David Gondek, Aditya Kalyanpur, Adam Lally, J. William Murdock, Eric Nyberg, John M. Prager, Nico Schlaefer, Christopher A. Welty:Building Watson: An Overview of the DeepQA Project. AI Magazine 31(3): 59-79 (2010).

[14] T. Liu. Learning to rank for information retrieval. Foundations and Trends in Information Retrieval, 3(3):225-331, 2009.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值