


论文地址:
https://arxiv.org/abs/2105.11644
(或点击文末“阅读原文”跳转)

图1:对于复杂KBQA问题“Who is the first wife of TVproducer that was nominated for The Jeff Probst Show?”的解答的推理过程。在这个例子中包含了多跳推理、约束关系、数值计算等逻辑过程。
现有基于SP的方法中所用的解析器(parser)难以覆盖多样的复杂查询(如多跳推理、约束关系、数值运算)。类似地,之前的基于IR的方法也可能无法回答复杂查询,因为它们的排序是在缺乏可视化推理的情况下对小范围内的实体执行的; 在复杂问题中,更多的关系和主题实体意味着更大的潜在逻辑形式的搜索空间,这将显著增加计算成本。更多的关系和主题实体同样会妨碍基于IR的方法检索所有相关实体进行排序; 两种方法都把问题理解作为主要步骤。当问题在语义和句法方面都变得复杂时,就要求模型具有较强的自然语言理解能力和泛化能力; 对于复杂问题,为答案标记正确的推理路径(参见图1中的例子)代价非常高昂。通常,数据集只提供问题的正确答案。这意味着基于SP的方法和基于IR的方法需要分别在没有正确逻辑形式和推理路径标注的情况下进行训练。这种弱监督模式给两种方式都带来了困难。
-问题背景-


理解复杂语义和语法。在基于SP的方法的第一步问题理解中,需要将自然语言问题转化成结构化表示进行进一步的解析。相比于简单问题,复杂问题包含更复杂的查询类型和复合语义,从而进一步增大了问题理解的难度。为了缓解这个问题,许多现行的方法使用语法解析(syntactic parsing)信息,如依存句法树 [Abujabal etal., 2017; Abujabal et al., 2018; Luo et al., 2018] 和抽象意义表示(Abstract Meaning Representation,AMR)[Kapanipathi et al., 2020],使问题成分与逻辑形式更好地对齐。但是,对于复杂问题,特别是长距离依赖问题的语法解析准确度存在不足。为了缓解语法解析的错误回传,Sun et al. [2020] 使用了骨干解析将复杂问题分解为简单问题的分支。另一类方法关注于利用逻辑形式的结构性质(如树结构或图结构)对候选解析结果进行打分。研究者们通过尝试使用结构特征编码器[Zhu et al., 2020],细粒度插槽匹配 [Maheshwariet al., 2019],添加查询结构相关的约束条件以过滤错误查询 [Chen et al., 2020] 从而更好地匹配自然语言问题和逻辑形式; 解析复杂查询。传统的方法可以很好地解析简单问题,如CCG [Cai and Yates, 2013; Kwiatkowski et al., 2013; Reddy et al.,2014]。但是,由于本体错误匹配的问题 [Yih et al., 2015],这些方法可能不能很好地适用于复杂问题。因此,在解析阶段利用KB的结构是非常必要的。为了满足复杂问题的各种特征,研究者提出了多种逻辑结构作为解析目标。Bast and Haussmann [2015] 设计了三种模板,可以表征单跳、两跳和带有一条对于关系的限制的问题。这个设计显然不能覆盖许多复杂问题。Yih et al. [2015] 提出了查询图作为解析目标。查询图是一种与KB数据库模式相匹配的图状结构,在复杂KBQA任务中展现了强大的表达能力。但是,这种查询图的生成过程通常依赖于人工预定义规则,不能很好地适用于大规模数据集和长尾复杂查询类型。为了缓解这一问题,Ding et al. [2019] 提出了通过利用高频出现的查询的子结构辅助查询生成。Abujabalet al. [2017] 利用了语义标注提高查询图的结构复杂性。Hu et al. [2018b] 应用了更多的聚合操作(如合并)和共指消歧技术以适应复杂问题; 链接中巨大的搜索空间。知识库链接将逻辑形式实例化,形成可执行查询。由于KB中的实体可能连接了成百上千条边,因此搜索所有可能的逻辑形式会造成高昂的计算代价和时间开销。研究者们提出了多种策略解决这一问题。Zheng et al. [2018b] 将复杂问题分解为简单问题,分别解析其对应的逻辑形式,执行得到中间查询结果,并根据这些中间结果得到最终答案。这一“分解-执行-合并”策略可以有效缩减搜索空间。Bhutaniet al. [2019] 也采用了类似的策略,并利用依存句法关系减少了人工标注。同时,其他的一些工作采用了“扩展-排序”策略,使用集束搜索缩减搜索空间。Chen et al. [2019] 首先采用了每跳贪心搜索生成查询图。Lan et al. [2019c] 提出使用迭代匹配模块解析问题。这种策略只适用于多跳问题,而不能很好地处理约束条件和数值计算。Lan and Jiang [2020] 为三种典型复杂查询定义了更多操作,从而极大地缩减了搜索空间; 弱监督训练。基于强化学习的优化策略被广泛应用于训练数据不足或受限的场景[Liang et al., 2017; Qiu et al., 2020b]。在这种场景下,模型只能在查询执行后得到最终反馈,使得奖励稀疏且数据不足。为了解决这些问题,一些工作对于解析结果使用了奖励构造策略。Saha et al. [2019] 在模型生成与正确答案相同类型的实体时提供了额外的奖励。Hua et al. [2020b] 在评价生成的逻辑形式时将其与之前缓存的高奖励逻辑形式相对比,并对中间结果也提供了奖励。Qiu et al. [2020b] 将查询图生成定义为分层决定问题,并基于分层强化学习和内在性质提供中间奖励。为了加速、稳定训练过程,他们同时使用伪正确结果(人工规则生成的高奖励结果)对模型进行预训练。考虑到这些结果同样可由模型生成,Liang et al. [2017] 提出使用迭代最大似然估计自举训练,并维护伪正确结果。
知识库的不完整性。基于IR的方法首先需要从KB中抽取问题相关的子图,再在此基础上进行推理。简单问题只要求单跳推理,因此较少遇到这种问题。但在复杂问题中,这个问题可能变得非常严重,正确的推理路径甚至可能没有包含在我们抽取的子图之中。并且,这种不完整性还使得编码实体时邻居信息的传递效率降低,为推理带来了额外的难度。为了解决这一问题,研究者们尝试利用额外信息扩充知识来源。直觉上,从Wikipedia中提取的问题相关的文本语料可以提供大量非结构化知识辅助推理。Sunet al. [2018] 和Sun et al. [2019] 提出使用与问题相关的文本语句补全知识库子图形成一个异构图,并在此异构图上进行推理。Xiong et al. [2019] 和 Han et al. [2020a] 提出将文本信息与结点表示融合从而提供辅助知识。他们首先在问题基础上编码文本和实体,然后通过聚合句子表示以改善实体表示。除了文本语料外,知识库嵌入也被用以预测知识库的缺失关系,缓解知识库的稀疏性。受到KB补全任务的启发,Saxena et al. [2020] 利用预训练的知识库嵌入扩充实体表示并解决KB的不完整性问题; 理解复杂语义。一般来说,基于IR的方法通过神经网络(如LSTM)直接将问题编码成低维向量生成推理指令。这种生成的静态推理指令不能有效表示复杂问题的组合语义。为了有效理解问题,最近的工作动态地在推理阶段更新推理指令。为了关注推理时尚未分析的问题成分,Miller et al. [2016],Zhou et al. [2018] 和 Xu et al. [2019] 提出在推理阶段使用信息检索更新推理指令。He etal. [2021] 提出使用动态注意力机制关注问题的不同成分。这种机制可以促进模型关注问题传达的其他信息,并为后续推理步骤提供指导。除了分解问题语义的思路以外,Sun et al. [2018] 提出用图的上下文信息来增强问题的表示。他们通过每步聚合来自主题实体的信息更新推理指令; 推理的不可解释性。传统的基于IR的方法通过计算问题和实体的语义相似度进行排序,这种模式下中间过程的可解释性不强。由于复杂问题往往涉及多条事实,系统需要更透明的推理过程才能更好地预测答案。多跳推理是提高推理的透明度的一种方法。Zhou et al. [2018] 和 Xu et al. [2019] 提出让每步预测的关系或实体可追溯和观察。他们输出中间预测结果作为可解释的推理路径。但是,这种方法不能完全利用关系的语义信息进行边到边的推理。因此,Han et al. [2020b] 通过确定一组由相同关系连接的实体构造了一个更稠密的“超图”,以模拟人的每步关系推理过程并输出序列化的关系路径使得推理过程可解释; 弱监督训练。类似于基于SP的方法,在弱监督的情况下,模型缺乏中间结果的标注,会使得奖励信号稀疏,训练难度更大。这种情况会导致虚假推理的问题出现 [He et al., 2021]。为了缓解这一问题,Qiu et al.[2020a] 将推理过程形式化定义为在KB上扩展推理路径的过程,并采用奖励构造策略提供中间奖励。为了检验每步的推理路径,他们使用了问题和推理路径的语义相似度提供反馈。在此之外,一个更直接的想法是导出伪中间状态并利用这些信号辅助训练。受到图上双向搜索策略的启发,He et al. [2021] 提出通过同步双向推理过程学习中间推理实体分布。但是,少有研究者关注实体链接步骤。研究者们利用现有的工具定位主题实体,这可能会对后续推理产生错误回传问题。为了在没有标注的情况下精确定位主题实体,Zhang et al. [2018] 提出通过变分学习算法联合建模主题实体识别和后续推理以训练实体链接模块。
渐进式的KBQA系统。现存的方法大多先线下在数据集上训练,然后部署上线回答用户问题。这种泾渭分明的两阶段设计不能适应现实世界中的知识的爆炸性增长速度,从而不能很好地回答新问题。用户的反馈可能为KBQA系统提供改善的机会。Abujabal et al. [2018] 使用用户反馈纠正答案并进一步提升。Zheng et al. [2018a] 设计了一种交互性的方法使得用户直接参与解析过程。在未来,渐进式的KBQA系统是使得线上系统表现持续改善的关键; 鲁棒性与可解释性。现存的方法在假数据设独立同分布的数据集上取得了良好的表现,但却不能很好地回答分布外的问题。在少量学习(few-shot learning)的场景下,只有小规模的可用的训练数据。之前的一些研究 [Hua et al., 2020a; He et al., 2021] 对此问题略有探讨,但还远远没有分析具体的挑战并给出解决方案。组合泛化(compositional generalization)是另一个典型的场景,其中一些推理元素在训练集中高频出现。为了支持这个领域的更多研究工作,Gu et al. [2020] 和 Keysers et al. [2020] 提出了相关的数据集GrailQA和CFQ。模型期望能够处理分布外的数据,进行可视化的推理过程。设计可解释的和鲁棒的KBQA算法也是未来研究的重要方向; 更多通用知识库。由于知识库的不完整性,研究者们常常引入额外信息补全知识库以提升复杂KBQA的表现。也有一些其他的任务(如图像问答、常识回答)可以被形式化定义成建立在不同KB上的KBQA问题。例如,在图像问答中,从图片中提取的场景图(scene graph)可以被认为是一种特殊的KB [Hudson and Manning, 2019]。除了由显式的结构化知识构成的KB以外,一些研究者还提出在隐式的知识库上进行推理。Petroni et al. [2019] 分析了预训练模型中的关系化知识,一些后续的工作 [Bouraoui et al., 2020; Jiang et al., 2020] 进一步证明了这在完形填空任务中的有效性。在未来,更宽泛的KB可能在KBQA研究中展现更大的影响力。

相 关 链 接

文章转载自图谱学苑,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




