针对复杂问题的知识图谱问答最新进展

本文探讨了知识图谱问答(KBQA)在处理复杂问题上的挑战,介绍了WebQuestions、QALD和LcQuAD等数据集,以及Semantic Parser、Information Retrieval等主流方法。重点讨论了Semantic Parser的查询图方法、Encoder-Decoder模型和Memory Network在复杂问题解析中的应用,并分析了未来发展趋势,包括模型的鲁棒性和多轮交互能力的增强。

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

作者|付彬、唐呈光、李杨、余海洋、孙建

单位|阿里巴巴达摩院小蜜Conversational AI团队


背景介绍

知识图谱问答(KBQA)利用图谱丰富的语义关联信息,能够深入理解用户问题并给出答案,近年来吸引了学术界和工业界的广泛关注。KBQA 主要任务是将自然语言问题(NLQ)通过不同方法映射到结构化的查询,并在知识图谱中获取答案。

小蜜团队研发的知识图谱问答系统(KBQA)目前已广泛应用于电信运营商、保险、税务等领域,但是在真实的客服场景中,KBQA 在处理复杂问句上仍然面临着挑战。

用户在咨询问题时,倾向于表达非常具体的信息,以便快速的获得答案,比较常见问句类型的有:

1)复杂条件句:“小规模纳税人季度销售额未超过 30 万,但是要开具 5 万元的的专票,需要缴纳附加税费吗?”;

2)并列句:“介绍下移动大流量和畅享套餐”;

3)推理型问句:“你们这最便宜的 5G 套餐是哪个?”等,这给 KBQA 提出了新的挑战:如何有效地利用深度学习模型规模化地处理复杂句问答?

为了应对该问题,我们调研了 KBQA 方向最近几年的关键进展,并着重关注了含有复杂句的数据集及相关的方法。

本文会先介绍 KBQA 主流相关数据集,然后详细介绍两类在相关数据集上的典型方法以及每种方法的代表性模型,最后我们对 Semantic Parsing + NN 的方法进行一个系统性总结,并介绍小蜜团队的 Hierarchical KB-Attention Model。


数据集简介

随着 KBQA 技术的发展,对应的数据集从简单的单跳问答向包含复杂问题转变;问答形式从单轮问答数据集,向面向对话的多轮问答数据集转变(HotpotQA [1] 和 CSQA [2])。表1 列举问答数据集部分属性,同时介绍了相关的三个典型通用知识图谱。

▲ 表一. KBQA评测数据集列表

2.1 WebQuestions及其衍生数据集

WebQuestions [3] 是为了解决真实问题构造的数据集,问题来源于 Google Suggest API,答案使用 Amazon Mechanic Turk 标注生成,是目前使用最广泛的评测数据集,但该数据集有 2 点不足:

①  数据集中只有问答对,没有包含逻辑形式;

②  简单问题占比在 84%,缺乏复杂的多跳和推理型问题;

针对第一类问题,微软基于该数据集构建了 WebquestionsSP [4],为每一个答案标注了 SPARQL 查询语句,并去除了部分有歧义、意图不明或者没有明确答案的问题。

针对第二类问题,为了增加问题的复杂性,ComplexQuestions [5] 在 WebQuestions 基础上,引入包含类型约束、显式或者隐式的时间约束、多实体约束、聚合类约束(最值和求和)等问题,并提供逻辑形式的查询。

2.2 QALD系列(Question Answering over Linked Data)

QALD 是 CLEF 上的一个评测子任务,自 2011 年开始,每年举办一届,每次提供若干训练集和测试集,其中复杂问题占比约 38% [6]。

该数据集不仅包括多个关系和多个实体,如:“Which buildings in art deco style did Shreve, Lamb and Harmon design?”;还包括含有时间、比较级、最高级和推理类的问题,如:“How old was Steve Jobs’s sister when she first met him?”[7]。

2.3 Large-Scale Complex Question Answering Dataset (LcQuAD)

Trivedi [8] 等人在 2017 年公布了一个针对 DBpedia 的复杂问题数据集,该数据集中简单的单跳问题占比 18%,典型的问句形式如:“What are the mascots of the teams participating in the turkish handball super league?”。

该数据集的构建,先利用一部分 SPARQL 模板,一些种子实体和部分关联属性通过 DBpedia 生成具体的 SPARQL,然后再利用定义好的问句模板半自动利用 SPARQL 生成问句,最后通过众包形成最后的标注问题。

Dubey 等人也使用同样的方法,构建了一个数据量更大更多样的数据集 LcQuAD 2.0 [9]。

KBQA核心方法介绍

随着数据集的演变和 KBQA 技术的发展,我们认为 KBQA 当前主要面临两个核心挑战:

1. 复杂问题理解难:如何更恰当地通过知识图谱建模并理解用户复杂问题,并增强方法的可解释性;

2. 模型推理能力弱:如何减少对于人工定义模板的依赖,训练具备推理能力、泛化性强的 KBQA 深度模型;

现在 KBQA 的主流方法主要分为两类:1) Semantic Parser + NN (SP);2) Information Retrieval (IR),因此我们总结了这两类方法中的一些经典论文在 WebQuestions 上的结果,图 1 所示, 从整体趋势来看,结合深度学习的 Semantic Parser 方法效果要略优于 IR 的方法。

▲ 图1.各方法在WebQuestions上的Benchmark

从上图中我们可以看到,早期研究人员利用传统方法, 通过手工构建模板和规则的方式解析复杂问题,但是此类方法的不足在于需要较专业的语言学知识且可扩展性不强。

随着深度学习在 NLP 领域的应用,研究人员将 QA 问题视为用户 Query 与答案的二分类或者排序问题(IR),利用不同的网络结构(CNN or Attention),并结合 KG 中不同的上下文信息来编码候选答案和 Query 的分布式表示,最后通过计算两者间的匹配度选出最终的答案。

此类方法将语义解析问题转化为大规模可学习的匹配问题,它的优点在于减少了对于人工模板的依赖,而缺点是模型的可解释性不强且整体效果欠佳。

与此同时,研究人员将 NN Based 的方法引入到 Semantic Parser 范式中来增强语义解析能力。早期比较主流的方法是利用查询图(Query Graph)生成过程来模拟语义解析过程,对问句进行解析。

随着 Encoder-Decoder 模型在翻译领域的应用,也有研究人员试图将语义解析问题看做是翻译问题,通过设计不同的树形解码器来得到 Query 的语义表示。

最近,借助 KV Memory Network 中的多个记忆槽来解决 KBQA 中多跳推理问题成为了一个趋势,它的优点在于不依赖于人工模板且可解释性较强,缺点是仍然不能很好地解析序数推理和显隐式时间约束的问题。

同时,我们关注到最近出现了基于神经符号机 [10](Neural Symbolic Machine)的解决方案。接下来,我们将详细介绍这些主流方法。

3.1 Semantic Parser

基于 Semantic Parser 的方法通常将自然语言转化成中间的语义表示(Logical Forms),然后再将其转化为可以在 KG 中执行的描述性语言(如 SPARQL 语言)。

3.1.1 传统方法

传统的 Semantic Parser 方法主要依赖于预先定义的规则模板,或者利用监督模型对用户 Query 和语义形式化表示(如 CCG [11]、λ-DCS [12])的关系进行学习,然后对自然语言进行解析。

这种方法需要大量的手工标注数据,可以在某些限定领域和小规模知识库(如 ATIS [13]、GeoQuery)中达到较好的效果,但是当面临 Freebase 或 DBpedia 这类大规模知识图谱的时候,往往效果欠佳。

3.1.2 查询图方法(Query Graph)

上述传统方法除了适用领域较窄外,大多没有利用知识图谱的信息来进行语义解析。论文 [14] 提出了一种基于 Semantic Parser 的知识图谱问答框架 STAGG (Staged Query Graph Generation)。

该框架首先定义了一个可以直接转化为 Lambda 演算的查询图(Query Graph),然后定义了如何将 Semantic Parser 的过程演变为查询图生成过程(4 种 State+4 种 Action)。

最后通过 LambdaRank 算法对生成的查询图进行排序,选出最佳答案。查询图生成过程一共有三个主要步骤:实体链接、属性识别和约束挂载。

针对 Query:“Who first voiced Meg on Family Guy?”,查询图生成过程如图 2 所示:

1. 实体链接部分采用论文 [15] 的实体链接系统得到候选实体和分数;

2. 属性识别阶段会根据识别的实体对候选的属性进行剪枝,并采用深度卷积模型计算 Query 和属性的相似度;

3. 约束挂载阶段会根据预定义的一些规则和匹配尝试进行最值、实体约束挂载;

4. 最后会根据图本身特征和每一步的分数特征训练一个 LambdaRank 模型,对候选图进行排序。

此方法有效地利用了图谱信息对语义解析空间进行了裁剪,简化了语义匹配的难度,同是结合一些人工定义的处理最高级和聚合类问题的模板,具备较强理解复杂问题的能力,是 WebQuestions 数据集上强有力的 Baseline 方法。

而且该方法提出的 Semantic Parser 到查询图生成转化的思想也被广泛地采纳,应用到了 Semantic Parser+NN 方法中。

▲ 图2.查询图生成过程图

微软的论文 [5] 在此基础上,扩展了约束类型和算子,新增了类型约束、显式和隐式时间约束,更加系统地提出利用 Multiple Constraint Query Graph(MultiCG)来解决复杂问题的方法。

同时也针对 WebQuestions 数据集复杂问题较少的问题,公开了一个复杂问题数据集 ComplexQuestions。该方法在 WebQuestions 和 ComplexQuestions 数据集上,表现都优于 STAGG 方法。

IBM [16] 沿用 STAGG 的框架,针对属性识别准确率较低的问题,在属性识别阶段,将 Query 和属性名称的字和词 2 个维度进行编码,利用 Hierarchical Residual BiLSTM(HR-BiLSTM,图4所示)计算相似度,提升了属性识别关键模块的准确率,该方法在 SimpleQuestions 数据集上有着优秀的表现,很好地弥补了 Semantic Gap 问题,但是并没有在复杂问题地处理上进行过多地改善。

▲ 图5.HR-BiLSTM框架

之前的几种方法虽然取得了不错的效果,但在 Query 与对应的 Query Graph 排序时,没有显式地将 Query Graph 利用神经网络进行泛化性强地语义特征提取,而是利用不同步骤的分数作为特征进行排序。

论文 [17] 提出了一种 Semantic Matching Model(如图5),分别对 Query 和查询图进行编码。

首先对去掉实体的 Query 利用双向 GRU 进行全局编码得到 ,然后对 Query 进行依存分析,并利用 GRU 对依存路径进行编码,收集句法和局部语义信息,得到 ,最后两者求和得到 query 编码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值