论文阅读 - RnG-KBQA: Generation Augmented Iterative Ranking for Knowledge Base Question Answering

文章提出了一种名为RnG-KBQA的新方法,它解决了知识库问答中的覆盖问题和泛化挑战。通过结合排序器和生成器,RnG-KBQA在GRAILQA和WEBQSP数据集上表现出色,尤其是在处理看不见的KB模式和零样本泛化方面。排序器使用BERT对候选逻辑形式进行评分,而生成器则根据问题和排名靠前的候选者生成最终的逻辑形式,从而提高了性能和泛化能力。
摘要由CSDN通过智能技术生成

论文链接:https://arxiv.org/pdf/2109.08678v2.pdf

目录

摘要

1 简介

2 生成增强型 KBQA

2.1 初步准备

2.2 逻辑形式排序

2.3 目标逻辑形式生成

2.4 扩展:实体消歧排序

3 实验

3.1 实验:GRAILQA

3.2 实验: WEBQSP

5 结论


摘要

        现有的KBQA方法,尽管在i.i.d.上取得了强劲的表现。测试数据,通常难以概括涉及看不见的KB模式项的问题。先前基于排名的方法在概括方面取得了一些成功,但受到覆盖问题的困扰。我们提出了RnG-KBQA,这是一种KBQA(Rank and Generate)方法,该方法通过生成模型来解决覆盖问题,同时保留了强大的推广能力。

        我们的方法首先使用一个可转换的ranker对通过搜索知识图获得的一组候选逻辑形式进行排名。然后,它以问题和排名靠前的候选人为条件,引入了量身定制的生成模型,以组成最终的逻辑形式。我们在 GRAILQA 和 WEBQSP 数据集上取得了最新的最新成果。特别是,我们的方法在GRAILQA排行榜上大大超过了现有技术。此外,RnG- KBQA在流行的WEBQSP基准测试上优于所有现有方法,甚至包括使用oracle实体链接的方法。实验结果证明了排名和生成之间相互作用的有效性,这导致我们提出的方法在所有情况下都具有卓越的性能,并且在零样本泛化方面有了特别强的改进。

1 简介

        现代知识库 (KB) 是大量世界知识的可靠来源,但由于它们的规模非常大并且需要特定的查询语言 (例如Sparql) 才能访问,因此可能难以与之交互。知识库问题解答 (KBQA) 是查询KBs的用户友好方式,并引起了越来越多的关注 (Berant等人,2013; Cai和Yates,2013)。最近的研究试图建立系统在包含i.i.d.的几个公共基准上取得了良好的成绩。训练和测试分布,例如SIMPLEQ (Bordes等,2015) 和WEBQSP (Yih等,2016)。但是,用户经常想问一些问题,这些问题涉及看不见的组合或KB模式项 (请参见图5),这仍然是一个挑战。基于生成的方法 (例如,seq-to-seq解析器) 由于难以生成看不见的KB模式项而不足以有效地处理此类实际生成方案。

         基于排名的方法,该方法首先使用预定义的规则生成一组候选逻辑形式,然后选择根据这个问题,得分最高的一个已经显示出一些效果(Gu等人,2021)。但是,它遭受了覆盖问题,因为由于KB的规模,用尽所有规则来涵盖所需的逻辑形式通常是不切实际的。

        我们提出了 RNG-KBQA,这是一个针对 KBQA 任务中泛化问题的新框架。我们的方法结合了排序器和生成器,它解决了基于排序的方法中的覆盖问题,同时仍然受益于它们的泛化能力。

        如图1所示,我们首先使用ranker从通过搜索图形获得的候选逻辑形式池中选择一组相关的逻辑形式。所选的逻辑形式不需要涵盖正确的逻辑形式,而是在语义上连贯并与问题中的基本意图保持一致。接下来,我们介绍一个生成器,该生成器同时使用问题和排名前k位的候选者来组成最终的逻辑形式。

 (图1:我们的排名和生成方法概述。给定一个问题,我们首先根据预定义的规则对通过 KB 搜索获得的候选逻辑形式进行排序。在这里,ground truth 逻辑形式不在排名靠前的候选者中,因为它没有被规则涵盖。我们使用另一个生成步骤解决这个问题,该步骤根据排名靠前的候选生成正确的逻辑形式。最终的逻辑形式在 KB 上执行以产生答案。)

        我们方法的核心思想是排序器和生成器之间的相互作用:排序器向生成器提供 KB 模式项的基本成分,然后生成器通过补充缺失的结构或约束进一步细化排名靠前的候选者,因此允许覆盖范围更广的逻辑形式空间。

        我们的排名器和生成器都基于预训练的语言模型,以获得更好的泛化能力。与使用基于语法的解析器 (Berant et al., 2013) 或 seq-to-seq 解析器 (Gu et al., 2021) 对候选进行排序的先前系统不同,我们的排序器是基于 BERT 的(Devlin 等人., 2019) 双编码器(作为输入问题-候选对)经过训练以最大化ground truth逻辑形式的分数,同时最小化不正确候选的分数。这种训练模式允许从整个领域的候选之间的对比中学习,而基于先前解析的排序器(Berant 等人,2013 年;Gu 等人,2021 年)只学习鼓励基本事实逻辑的可能性形式。

        我们进一步开发了一种基于迭代引导程序的训练课程,以有效地训练排序器以区分虚假候选人(第 2.2 节)。此外,我们扩展了所提出的逻辑形式排序器,保持体系结构和逻辑相同,用于实体消歧任务,并展示其作为第二阶段实体排序器的有效性。我们的生成器是一个基于t5 (rafffel et al., 2020)的seq-to-seq模型,它融合了在前k候选对象中发现的语义和结构成分,以组成最终的逻辑形式。

        为了实现这一点,我们向生成器提供问题,然后是前 k 个候选者的线性化序列,这允许它提炼出一个精炼的逻辑形式,通过补充缺失的部分或丢弃不相关的部分来充分反映问题的意图必须学习低级动态。

        我们在两个数据集 GRAILQA 和 WEBQSP 上测试 RNG-KBQA,并与一系列强基线进行比较。在 GRAILQA 上,一个专注于 KBQA 泛化的具有挑战性的数据集,我们的方法设置了 68.8 精确匹配 74.4 F1 分数的新的最先进性能,大大超过了之前的 SOTA(58.1 精确匹配和 65.3 F1 分数)。在流行的 WEBQSP 数据集上,RNG-KBQA 也优于最佳先验方法(QGG(Lan 和 Jiang,2020)),并取得了 75.7 F1 分数的新 SOTA 性能。结果证明了我们的方法在所有设置中的有效性,尤其是在组合泛化和零样本泛化方面。        

2 生成增强型 KBQA

2.1 初步准备

        知识库收集以主题-关系-对象三元组(s,r,o)形式存储的知识数据,其中s是实体,r是二元关系,o可以是实体或文字(例如,日期时间,整数值等)。

        假设问题是 x,我们的任务是获得一个逻辑形式 y,它可以在知识库上执行以产生最终答案。继 Gu 等人之后。 (2021),我们使用 s 表达式来表示对知识库的查询。

        s-表达式 (图1中的示例) 使用在基于集合的语义上操作的函数 (例如,JOIN),并且消除了如在lambda DCS (Liang,2013) 中的变量用法。这使得s-表达式成为KBQA任务的合适表示,因为它平衡了可读性和紧凑性 (Gu等人,2021)。

        候选者枚举。回想一下,我们的方法首先使用排序模型对通过枚举获得的候选逻辑形式列表C=\{c_i\}^m_{i=1}进行评分。在深入研究排名和生成模型的细节之前,我们将首先介绍如何枚举候选。

        我们从问题中检测到的每个实体开始,并在知识库中查询两跳内可到达的路径。接下来,我们写下对应于每个路径的s表达式,它构成了一组候选路径。我们注意到我们在枚举时并没有穷尽所有可能的组合(例如,我们不包括比较操作和 argmin/max 操作),因此不保证覆盖目标 s 表达式。更全面的枚举方法是可能的,但会引入大量(对于某些查询大于 2,000,000)候选者。因此,在枚举时覆盖所有可能的逻辑形式是不切实际的,我们试图通过我们定制的生成模型来解决这个问题

2.2 逻辑形式排序

        我们的排名模型通过最大化问题和基本事实逻辑形式之间的相似性同时最小化问题和否定逻辑形式之间的相似性来学习对每个候选逻辑形式进行评分(图 2)。

        具体来说,给定问题 x 和候选逻辑形式 c,我们使用基于 BERT 的编码器,该编码器将问题和逻辑形式的串联作为输入,并输出表示它们之间相似性的 logit,公式如下:

        其中 BERTCLS 表示串联输入的 [CLS] 表示; LINEAR 是一个投影层,将表示减少为标量相似性分数。然后优化排序器以最小化以下损失函数: 

         这里的理念是促进基础真理的逻辑形式同时通过对比的目标来惩罚消极的真理。相比之下,在过去的工作中使用的排序器(Gu et al., 2021),一种seq-to-seq模型,旨在直接将问题映射到目标逻辑形式,仅利用来自ground truth的监督。因此,我们的排序器可以更有效地将正确的逻辑形式与虚假的逻辑形式区分开来(类似于但不等于基本事实)。

        Bootstrapping Negative Samples in Training 由于大量的候选者和有限的 GPU 内存,在训练排序器时,像公式(1)中那样提供所有候选者 c ∈ C 是不切实际的。因此,我们需要在每批次中抽取一个负逻辑形式 C' ⊂ C 的子集。对负逻辑形式进行采样的一种天真的方法是抽取随机样本。但是,由于与每批中允许的负样本大小相比,候选者的数量通常很大,因此可能无法在随机选择的样本中覆盖虚假的逻辑形式。

        我们建议通过引导对否定逻辑形式进行采样,其灵感来自Karpukhin等人 (2020) 中使用的否定采样方法。也就是说,我们首先使用几个时期的随机样本来训练ranker,以对其进行热启动,然后选择对模型造成混淆的虚假逻辑形式作为负样本,以进一步训练模型。我们发现,与使用随机负样本相比,ranker可以从这种先进的负抽样策略中受益,并且性能更好。

2.3 目标逻辑形式生成

        有了候选的排名列表,我们引入了一个生成模型,来组合以问题和前 k 个逻辑形式为条件的最终逻辑形式。我们的生成器是基于 transformer 的 seq-to-seq 模型 (Vaswani et al., 2017),从 T5 ((Raffel et al., 2020)) 实例化,因为它在与生成相关的任务中表现出强大的性能。如图 3 所示,我们通过连接问题和排名器返回的前 k 个候选者来构造输入,用分号分隔(即 [x;c_{t_1};...;c_{t_k}])。

        我们使用教师强制训练模型以交叉熵目标自回归地生成基本事实逻辑形式。在推理中,我们使用beam-search来解码top-k目标逻辑形式。为了构造训练生成器所需的前k逻辑表单候选,我们首先训练排序器,然后使用它在训练数据上产生的排名。

        由于生成模型现在可以利用问题和KB模式信息 (在候选者中包含),因此与仅对问题进行限定相比,上下文的指定要多得多。这使我们的生成器能够更有效地利用训练数据,只关注纠正或补充现有的逻辑形式,而不是同时学习逻辑形式的生成规则和正确性。

        执行-增强推理.我们使用没有语法约束的普通 T5 生成模型,它不能保证生成的逻辑形式的语法正确性和可执行性。因此,我们使用执行增强推理过程,该过程常用于先前的语义解析相关工作(Devlin 等人,2017 年;Ye 等人,2020b)。我们首先使用集束搜索解码前 k 个逻辑形式,然后执行每个逻辑形式,直到找到一个产生有效(非空)答案的逻辑形式。

        在前 k 个逻辑形式都不有效的情况下,我们返回使用排名器获得的排名最高的候选者作为最终逻辑形式,保证可执行。该推理模式可以确保为每个问题找到一种有效的逻辑形式。可以结合更复杂的机制来控制解码中的句法正确性(例如,使用基于语法的解码器(Rabinovich 等人,2017)或动态波束修剪技术(Ye 等人,2020a))。我们将这种扩展放在一边,因为我们发现生成的逻辑形式的可执行性不是瓶颈(见实验中的第 3.3 节)。

2.4 扩展:实体消歧排序

        我们的排名模型主要针对候选逻辑形式的排名任务提出。在这里,我们介绍了一种简单的方法来调整我们的排名模型以适应实体消歧任务。

        查找问题中提及的 KB 实体的常见范例是首先使用 NER 系统检测提及的实体,然后基于表面形式运行模糊匹配。这种范式已被用于各种方法中(Yih et al., 2015; Sun et al., 2019; Chen et al., 2021; Gu et al., 2021)。这种范式的一个问题在于实体消歧:一个提及项通常与知识库中多个实体的表面形式相匹配。

        消除匹配实体歧义的一种常见方法是根据 FACC1 项目(Chen 等人,2021 年;Gu 等人,2021 年)提供的流行度得分选择最受欢迎的一个,这在某些情况下可能不精确。我们在图 4 中展示了一个示例。考虑“更强的音乐视频是由谁导演的?”这个问题。取自 GRAILQA,其中最受欢迎的匹配实体是“Stronger”(m.02rhrjd,Kanye West 的歌曲)”,第二个也是“Stronger”(m.0mxqqt24,Britney Spears 的音乐视频)。表面形式匹配和流行度分数没有提供消歧所需的足够信息.

 (运行实体消歧作为排名的说明性示例。令人困惑的实体(红色)和正确的实体(绿色)都与问题中的表面形式相匹配。为了区分它们,我们按照与逻辑形式排序相同的架构训练实体消歧模型,但通过连接问题和关系来构造输入。)

        但是,可以利用与实体链接的关系信息来进一步帮助评估它是否与问题中的提及相匹配。通过查询KB上的关系,我们看到有关于mv director mv.directed_by链接到m.0mxqqt24的关系,但是没有与m.02rhrjd相关的这种关系。

        因此,我们将消歧问题转化为实体排名问题,并调整之前使用的排名模型来解决这个问题。给定提及,我们将问题与与提及相匹配的每个实体候选者的关系连接起来。我们重用与 2.2 节中相同的模型架构和损失函数来训练另一个实体消歧模型,以进一步提高目标实体的排名。我们在 GRAILQA 上应用我们的实体消歧模型,并在实体链接方面取得了实质性的改进。

3 实验

        我们主要在 GRAILQA (Gu et al., 2021) 上测试我们的方法,这是一个具有挑战性的数据集,专注于评估泛化能力。我们还在WEBQSP上进行了实验,并与一些先前的方法进行了比较,以证明我们的方法具有普遍适用性。

3.1 实验:GRAILQA

        GRAILQA 是第一个评估零样本泛化的数据集。

        具体来说,GRAILQA 总共包含 64,331 个问题,并仔细拆分数据以评估 KBQA 任务中的三个泛化水平,包括 i.i.d.设置,对不可见组合的组合泛化,以及对不可见 KB 模式的零样本泛化(图 5 中的示例)。

 (图 5:对 KB 模式项的新组合的组合泛化示例和对未见模式项的零样本泛化(红色)。)

        测试集中每个设置的分数分别为 25%、25% 和 50%。除了泛化挑战外,GRAILQA 在涉及的大量实体/关系、逻辑形式的复杂组合性(最多 4 跳)以及问题中提到的实体的噪音方面也提出了额外的困难(Gu 等人., 2021).

        实施细节 我们使用第 2.4 节中描述的方法将实体提及链接到知识库中的实体节点。我们首先使用 GRAILQA 作者提供的 BERT-NER 系统来检测问题中的提及跨度。对于每个提及跨度,我们将跨度与 FACC1 项目中的表面形式进行匹配(Gabrilovich 等人,2013 年),使用流行度得分对匹配的实体进行排名,并保留前 5 个候选实体。最后,我们使用在 GRAILQA 上训练的消歧模型为每个提及只选择一个实体。我们的实体行走模型是从 huggingface 库 (Wolf et al., 2020) 提供的 BERT-base-uncased 模型发起的,并以 1e-5 的学习率和 8 的批量大小对 3 个 epoch 进行了微调。                

        在训练ranker时,我们使用第2.2节中描述的策略对96个负候选者进行了抽样。使用1e-5的学习率和8的批量大小,我们的ranker从BERT- base-uncased微调了3个时期。我们在每个时代之后都做引导。还值得注意的是,我们在训练排名时执行教师强制,即我们使用ground truth实体链接进行训练。我们将生成模型基于T5-base (Raf- fel等人,2020)。我们使用ranker和finetune返回的前5名候选人进行10个时期,学习率为3e-5,批次大小为8。

        Metrics :对于 GRAILQA,我们使用精确匹配(EX)和 F1 分数(F1)作为度量标准,所有这些都是使用官方评估脚本计算的。

        结果 表 1 总结了 GRAILQA 的结果。其他方法的结果直接取自排行榜。 该方法在GRAILQA数据集上设置了新的最先进的性能,实现了68.8 EM和74.4 f1。这比其他方法有很大的差距: 我们的方法优于ReTrack (Chen等人,2021),10.7 EM和8.2 f1。

         此外,RNG-KBQA 在所有三个级别的泛化方面通常都表现良好,并且在零样本设置方面特别强大。我们的方法比 ReTrack 稍微好一点,并且比 i.i.d. 中的所有其他方法好得多。背景和构图背景。然而,ReTrack 无法泛化到未见的 KB Schema 项目,并且仅在零样本设置中表现不佳,而我们的方法是可泛化的,并且以 16.1 F1 的优势击败了 ReTrack。

        为了直接比较我们的排名生成框架与仅排名基线(BERT 排名)的有效性,我们还提供了没有实体消歧模型的 RNG-KBQA 变体的性能。在这个变体中,我们直接使用 Gu 等人的作者提供的实体链接结果 (2021)。在相同的实体链接性能下,我们的排序和生成框架能够将性能提高 11.4 EM 和 8.2 F1。此外,我们的模型没有实体消歧模块的变体(RnG-KBQA w/o 实体消歧)仍然大大优于所有其他方法。特别是,即使 ReTrack 包含可产生更好实体链接性能的实体消歧模型,此变体仍以 3.3 EM 和 2.1 F1 击败 ReTrack。有关实体链接性能的更多讨论,请参阅附录 A。

3.2 实验: WEBQSP

        WEBQSP是一个流行的数据集,它在i.i.d.设置中评估KBQA方法。它总共包含4,937个问题,并且需要最多2跳的推理链。由于没有官方开发拆分,我们从训练集中随机抽取200个示例进行验证。

        实现细节 对于 WE-BQSP 上的实验,我们使用 ELQ (Li et al., 2020) 作为实体链接器,它在 WEBQSP 数据集上进行训练以执行实体检测和实体链接,因为它产生更精确的实体链接结果并因此导致每个问题的候选逻辑形式数量较少。

        因为ELQ总是只将提及链接到一个实体,所以对于WEBQSP数据集,我们不需要实体消歧步骤。类似地,我们使用bert -base uncase初始化逻辑表单排序器,使用T5-base初始化生成器。我们还为每个问题采样了 96 个负样本候选,并将前 5 个候选提供给生成模型。排名器经过 10 个时期的训练,我们每 2 个时期运行一次引导程序;生成器训练了 20 个epoch。

        指标。F1用作主要评估指标。此外,对于能够选择实体集作为答案的方法,我们报告了官方评估中使用的精确匹配 (EM)。对于只能预测单个实体的基于信息检索的方法,我们报告 Hits(如果预测的实体在ground truth实体集中),这被认为是 EM 的松散近似。

        结果对于基线方法,我们直接采用相应原始论文中报告的结果。如表 1 所示,RNG-KBQA 达到了 75.6 F1,比现有技术水平 (QGG) 高出 1.6。我们的方法还获得了 71.1 的最佳 EM 分数,超过了 CBR(Das 等人,2021)。我们使用 ELQ 预测实体链接获得的方法的性能优于所有先前的方法,即使它们被允许使用 oracle 实体链接注释(在顶部表示为 *)。同样值得注意的是,CBR 和 QGG 这两种实现最接近我们方法的强大性能的方法都使用与我们的方法具有相同或更好性能的实体链接器。特别是,CBR 还使用 ELQ 进行实体链接。

        QGG 使用实体链接器实现 85.2 实体链接 F1(使用公共可用代码计算),这比我们实现 84.8 实体链接 F1 稍好。总而言之,WEBQSP 上的结果表明,除了出色的泛化能力外,我们的方法在解决 i.i.d. 中更简单的问题方面也同样强大。

5 结论

        我们提出了 RNG-KBQA 用于知识库的问答。 RNG-KBQA 由排序步骤和生成步骤组成。我们使用迭代自举策略训练的排序器比之前的 seq-to-seq 排序器可以更好地区分正确的逻辑形式和虚假的逻辑形式。我们的生成器可以进一步补救排名靠前的逻辑形式中未发现的操作或隐式提及的约束。在两个数据集 GRAILQA 和 WEBQSP 上的实验结果表明我们的方法具有强大的性能:RNG-KBQA 在两个数据集上都实现了最新的性能,特别是在泛化设置方面大大优于先前的方法.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值