0. 摘要

ReClor 和 LogiQA 等最近的机器阅读理解数据集需要对文本执行逻辑推理。传统的神经模型不足以进行逻辑推理,而符号推理器不能直接应用于文本。为了迎接挑战,我们提出了一种神经符号方法,该方法为了预测答案,通过表示文本单元之间逻辑关系的图传递消息。它结合了一个自适应逻辑图网络(AdaLoGN),它自适应地推断逻辑关系以扩展图,并且本质上实现了神经推理和符号推理之间的相互迭代强化。我们还实现了一种新颖的子图到节点消息传递机制,以增强上下文选项交互以回答多项选择问题。我们的方法在 ReClor 和 LogiQA 上显示出可喜的结果。

1. 引言

机器阅读理解(MRC)引起了广泛的研究关注。对于最先进的神经方法来说,早期的 MRC 数据集并不难。事实上,BERT 在 SQuAD 上的表现优于人类。

最近的数据集变得更具挑战性。例如,ReClor 和 LogiQA 需要对文本中描述的逻辑关系进行理解和推理,其中神经方法表现不佳。例如,考虑图 1 中的 MRC 任务。上下文由一组文本命题组成,描述了基本话语单元 (EDU) 之间的逻辑关系。例如,第一句话描述了两个 EDU 之间的含义:“公司获得项目 A”意味着“产品 B 可以按时投放市场”。在命题演算的帮助下,人类可以形式化命题,然后在命题中应用推理规则逻辑来证明选项 C 中的命题。但是,机器如何解决这样的任务?

现有方法和局限性:为了解决这个问题,传统的神经模型不足以提供所需的推理能力,而符号推理器不能直接应用于非结构化文本。一个有希望的方向是考虑神经符号解决方案,例如最近的 DAGN 方法,它将上下文和每个选项分解为一组 EDU,并将它们与语篇关系连接为一个图,然后执行基于 GNN 的推理来预测答案。

但是,我们在此方法中确定了两个限制。 ①尽管有图表示,但它主要是一种针对话语关系的神经方法。对逻辑关系(例如,暗示、否定)所需的符号推理是否可以适当地近似是有争议的。②图通常是松散连接的,由长路径组成。在现有 GNN 模型中实现的节点到节点消息传递容易造成上下文和选项之间交互不够充分,从而无法解答问题。

我们的方法。虽然我们遵循 DAGN 的一般框架,即图构建和基于图的推理,但我们通过一种新的神经符号方法克服了它的两个限制。

为了解决①,采用图 3 的方法。具体来说,建议构建一个表示 EDU 及其逻辑关系而不是话语关系的文本逻辑图 (TLG),因此我们可以显式地执行符号推理来扩展具有推断逻辑关系的 TLG(图2a)。推断的关系可以提供用于后续基于图的消息传递的关键连接,即符号推理加强了神经推理。此外,虽然简单地计算和承认演绎闭包可能会扩展 TLG 与不相关的连接,这会误导消息传递,但我们利用来自神经推理的信号来自适应地承认相关扩展,即神经推理加强了符号推理。此外,我们通过在每次迭代中使用前一次迭代的信号重新开始推理来迭代上述相互强化,以适应推理过程的校正并允许足够的神经符号交互(图2b)。

为了解决②,我们在 TLG 的上下文子图中聚合信息,并采用新的子图到节点消息传递机制来增强整体上下文的交互子图到选项子图中的每个节点,反之亦然。我们将上述两个想法融入到我们新的自适应逻辑图网络(AdaLoGN)中(图2b)。

总而言之,我们的技术贡献包括:

  • 新的神经符号方法,其中神经和符号推理相互并迭代地相互加强。
  • 在基于 GNN 的神经推理中,基于聚合子图的消息传递的增强。

image-20220322134128124

  • 图1:示例 MRC 任务(改编自 LogiQA 中的任务)。逻辑连接词以斜体突出显示。 X标记正确答案。

image-20220322134707104

  • 图2:a 是 TLG 图。b 是扩展的 TLG:虚线节点和边分别表示自适应推断的 EDU 和逻辑关系,子图到节点的边表示子图到节点的消息传递。

2. 方法

MRC 任务 <c,q,O> 由上下文 c、问题 q 和一组选项 O 组成。O 中只有一个选项是给定 c 的 q 的正确答案。任务的目标是找到这个选项。

图 4 概述了本文实现。对于每个选项 o ∈ O,通过预训练语言模型(第 2.1 节)生成 c,q,o 的表示(即分别为 gc,gq,go),并构建一个原始 TLG,其中节点(即 u1,...,u|V |)表示从 c,q,o 中提取的 EDU,边表示它们的逻辑关系(第 2.2 节)。利用从预训练语言模型中获得的初始表示(即 h(0)u1 ,...,h(0)u|V |),以迭代方式自适应地扩展 TLG(即符号推理) 然后传递消息(即神经推理)以更新节点表示(即 h(l+1)u1 ,...,h(l+1)u|V |)以生成 TLG 的表示(即 hG)(第 2.3 节)。最后,我们根据上述表示预测 o(即 scoreo)的正确性(第 2.4 节)。

image-20220322135221143

  • 图4:方法示意图

2.1 文本编码

使用预训练的语言模型 RoBERTa 对三个标记序列 c = c1···c|c|、q = q1···q|q| 和 o = o1···o|o| 进行编码。它们由分类器标记 s 和 /s 连接。

image-20220322135333968

输出向量表示被平均以形成 c,q,o 的表示:

image-20220322135354469

2.2 文本逻辑图 TLG

除了直接编码文本外,还从文本中提取逻辑关系作为称为 TLG 的图。首先介绍 TLG 的定义。

对于一段文本,它的 TLG 是一个有向图 G = <V,E> 其中 V 是代表文本的 EDU 的一组节点,并且 E ⊆ V × R × V 是一组标记的有向边,表示文本中描述的 EDU 之间的逻辑关系。我们考虑六种常见的逻辑关系 R = {conj, disj, impl, neg, rev, unk},合取 (conj)、析取 (disj)、蕴涵 (impl) 和否定 (neg) 是命题逻辑中的标准逻辑连接词,同时引入反向蕴涵 (rev) 来表示 impl 的逆关系,unk 表示未知关系。由于 conj、disj、neg 和 unk 是对称关系,用它们标记的边是双向的。

本文的 TLG 与 DAGN 中考虑的基于话语的逻辑图之间的区别:TLG 中的边表示逻辑关系,而 DAGN 中的边表示话语关系。因此,可以显式地对 TLG 进行符号推理。

随后介绍 TLG 的构建方法。首先忽略 q,因为它在现有数据集中通常没有信息,只从 c 和 o 初始化一个原始 TLG。具体来说,使用 Graphene 从 c 和 o 中提取 EDU 及其修辞关系。修辞关系通过表 1 中的映射转换为逻辑关系。请注意,每个 impl 边总是与反向 rev 边配对,反之亦然。

此外还定义了少量的句法规则来识别相互否定的 EDU,并将它们与 neg 连接起来。这些规则基于词性标签和依赖关系。例如,一个这样的规则检查两个 EDU 是否仅通过副词的反义词来区分。

对于文本中相邻的每对 EDU(包括 c 的最后一个 EDU 和 o 的第一个 EDU),如果没有上述五种逻辑关系,就采用 unk 关系进行标注。

image-20220322135726017

  • 表1:修辞关系和逻辑关系的转换。

2.3 自适应逻辑图网络

由于 TLG 由逻辑关系组成,因此可以通过应用推理规则来显式执行符号推理,以使用推理的逻辑关系扩展 TLG,这有助于后续的神经推理。然而,不希望地提供太多与回答问题无关的逻辑图以免误导神经推理,这里就可以利用来自神经推理的信号来识别和承认相关的扩展来执行自适应扩展。

对于神经推理,我们执行消息传递以更新节点表示,最终将其汇集到 TLG 的表示中以用于后续答案预测。通过在每次迭代中使用来自前一次迭代的信号重新开始对原始 TLG 的推理来迭代上述过程,以适应推理过程的更正,并让符号推理和神经推理充分相互作用。模型为 AdaLogN,如图 4 所示,详细信息如下。

推理规则:令 G = <V,E> 为原始 TLG。为了对 G 中的逻辑关系进行符号推理,我们应用了两条关于命题逻辑中蕴涵的推理规则。其他规则留待未来工作。

  • 假定推理:(图5a)。

image-20220322142140407

  • 交换位置:(图 5b )。

image-20220322142207574

  • 邻居传递:例如,如果 E 包含两条边 <ui,conj,uj> 和 <ui,unk,uk>,可以将 uk 和 uj 之间的双向 conj 边添加到 E(图5c)。这个是本文假设的一种方法,用来解决 unk 关联的。虽然这条规则可能会产生错误的命题,但希望自适应推理器能够正确应用它。例如,它对于处理以下句子很有用:“......组中只有 1 人知道组 (uk) 的 3 个,3 人知道组 (ui) 的 2 个,4 人知道组的 1 个(uj)。” Graphene 识别了〈ui,conj,uj〉和〈ui,unk,uk〉,但遗漏了〈uk,conj,uj〉,这可以通过应用这个规则来生成。

image-20220322140315456

  • 图5:通过应用推理规则来推断虚线节点和边。?表示 {conj, disj, impl, rev} 中的任何逻辑关系。通过这个方法就能够实现基于规则的扩展

TLG 的自适应扩展:符号推理是适应性的,依靠来自神经推理的信号来决定哪些推理步骤与回答问题相关,因此可以扩展 TLG。具体来说,每个候选扩展对一组节点 V ⊆ V 应用推理规则,平均它们的向量表示以形成:

image-20220322142610678

由于是为了预测 o 的正确性,将 h 与 o 的表示进行交互,以预测相关性得分,其中‖表示向量连接

image-20220322142635926

设定一个阈值,超过阈值的扩展都加入到图里面。此外,神经符号推理是迭代的(从而用于消除之前的错误扩展,并补充新的扩展。这个思想在很多新论文里面都有)。在第 (l+1) 次迭代中,使用原始 TLG 重新开始符号推理,并使用来自第 l 次迭代中神经推理的节点表示 h(l)ui 重新计算方程。初始节点表示 h(0)ui 是从预训练的语言模型中获得的。具体来说,按照它们在文本中出现的顺序将 V 扁平化为一系列节点。回想一下,V 分为 Vc = {u1,...,u|Vc|} 和 Vo = {u|Vc|+1,...,u|V |} 分别表示从 c 和 o 中提取的节点.每个节点 ui 是一个记号序列 ui = ui1···ui|ui|。我们使用 RoBERTa 对由 s 和 \s 连接的 Vc 和 Vo 进行编码,其中 Vc 和 Vo 内部的节点由特殊标记“|”分隔。输出向量表示被平均以形成每个节点 ui ∈V 的初始表示

image-20220322142837599

image-20220322142852037

消息传递:为了让 TLG 中的节点相互交互并融合它们的信息,神经推理执行基于图的消息传递以在每次迭代中从 h(l)ui 到 h(l+) 更新节点表示 ui 。由于 TLG 是包含多种类型边的异构图,我们将 R-GCN 中的节点到节点消息传递机制作为基础。此外,观察到 TLG 通常是松散连接的,并且容易在有限迭代中通过长路径导致 Vc 和 Vo 之间的交互不足,这不能通过简单地增加迭代次数来缓解,因为它会引发其他问题,例如过度平滑。为了增强这种对预测 o 的正确性至关重要的交互,我们结合了一种新颖的子图到节点消息传递机制(这个思想在 QA-GNN 里面也出现过,是图神经网络里面很有用的方法,就是把一个子图当做一个节点加入到图神经网络中),以将从子图聚合的信息整体传递到节点。具体来说对于每个 ui ∈ Vo,我们通过 Vc 上节点表示的注意力加权和来计算 Vc 的 ui-attended 聚合表示:

image-20220322142947144

设 Ni 为 ui 的邻居集。令 Nir ⊆Ni 为逻辑关系 r ∈R 下的子集。我们通过从邻居和 Vc 向 ui 传递消息来更新 ui 的表示。其中 W(l)r ,W(l) 0 ,W(l) 子图是可学习参数的矩阵,idx(ai,j) 返回 ai,j 在 |Ni| 维向量 [.. .; ai,j; ...]ᵀ。

image-20220322143004956

以类似的方式,对于每个 ui ∈Vc,计算由 h(l) Vo,ui 表示的 Vo 的 ui-attended 聚合表示并更新 h(l+1)ui。首先,我们结合子图到节点的消息传递,并通过门控机制(即 βi)对其进行控制。其次,我们通过注意力机制(即αi, j)对节点到节点的消息传递进行加权。

图池化:在 L 是超参数的 L 次迭代之后,对于每个节点 ui ∈V,我们将其在所有迭代中的表示与残差连接融合在一起(也就在多轮迭代中考虑历史信息,类似 LSTM)

image-20220322143104517

我们将所有输入双向残差 GRU 层(Res-BiGRU)以最终确定节点表示

image-20220322143118379

我们通过计算一个加权和来聚合这些节点表示

image-20220322143144621

image-20220322144858131

我们将 HV 和相关性分数连接起来以形成图的表示,E(l) 是第 l 次迭代中的候选扩展集。通过消息传递和图池化,实现网络的训练。

image-20220322143206477

2.4 答案预测

我们融合 c,q,o 和 TLG 的表示来预测选项 o 的正确性:

image-20220322143246624

2.5 损失函数

设 ogold ∈O 为正确答案,通过标签平滑优化交叉熵损失。其中 γ 是预定义的平滑因子。

image-20220322143301789

image-20220322143311332

3. 实验

3.1 数据集

使用了两个基于推理的 MRC 数据集。 ReClor由 6,138 个四选项多项选择题组成,这些问题是从 GMAT 和 LSAT 等标准化考试中收集的。这些问题分为 4,638 个用于培训、500 个用于开发和 1,000 个用于测试。测试集进一步分为 440 个简单问题(Test-E),其中每个问题都可以通过一些强基线方法正确回答,仅使用选项并忽略上下文和问题,其余 560 个困难问题(Test-H)。LogiQA 由从中国国家公务员考试中收集的 8,768 道四选项多项选择题组成,并被翻译成英文。问题分为 7,376 个用于训练、651 个用于开发和 651 个用于测试。

3.2 细节

在每个数据集的开发集上调整了超参数。具体来说,对于文本编码,我们使用了 RoBERTa-large,隐藏层 = 24,隐藏单元 = 1,024。对于消息传递,我们的实现基于 DGL。

3.3 基线

BERTLARGE、RoBERTaLARGE、DAGN、Focal Reasoner、LReasoner。

3.4 评价指标

精确度。

3.5 实验结果

在 ReClor 上,AdaLoGN 在测试集上的表现至少比所有基线方法高出 1.30%,除了 LReasoner (w/DA),它执行数据增强,因此比较可能不公平。 AdaLogN 和 LReasoner (w/DA) 均超过 60%,与人类水平的性能 (63%) 相当。在 LogiQA 上,AdaLogN 优于测试集上的所有基线方法,包括 LReasoner (w/DA)。尽管如此,结果 (40.71%) 仍无法与人类水平的表现 (86%) 相提并论。特别是在 ReClor 和 LogiQA 上,AdaLoGN 在测试集上超过 DAGN 1.39%–1.90%,这证明了方法在解决第 1 节中提到的 DAGN 限制方面的有效性。

image-20220322143824391

  • 表2:ReClor 数据集结果

image-20220322143838464

  • 表3:LogiQA 数据集效果

3.6 消融研究

我们进行了一项消融研究,以评估我们方法中两个主要技术贡献的有效性:TLG 的自适应扩展和子图到节点的消息传递。我们将标准版本的 AdaLogN 与两个去除自适应扩展的变体进行了比较(无扩展,以及完全扩展而不考虑图神经网络判定是否需要加入扩展)。分析了候选扩展的相关性分数的分布,通过设置阈值 τ = 0.6,我们分别承认了 ReClor 和 LogiQA 上 19.57% 和 4.86% 的扩展。

image-20220322145100553

image-20220322143856728

  • 表4:ReClor 消融研究

image-20220322143913511

  • 表5:LogiQA 消融研究

image-20220322143953153

  • 图6:候选扩展的相关性分数分布。上图:Reclor 的开发集上;底部:在 LogiQA 的开发集上

3.7 错误分析

我们将 AdaLogN 的标准版本与两个变体进行了比较,删除了子图到节点的消息传递或以不同的方式实现它。 • AdaLogNn2n 仅以标准方式执行节点到节点的消息传递。 • AdaLogNn2n+ 仅执行节点到节点的消息传递,但作为我们整体子图到节点消息传递的替代方案,它在上下文子图中的每个节点和选项中的每个节点之间添加了一条双向 unk 边子图以增强上下文选项交互。在 ReClor 上,如表 4 所示,两种变体在测试集上的准确率都大幅下降了 1.60%–2.60%。在 LogiQA 上,如表 5 所示,下降幅度也很大,在测试集上下降了 1.69%–1.85%。结果证明了我们的子图到节点消息传递的有效性。与 AdaLoGNn2n 相比,AdaLoGNn2n+ 在 ReClor 上取得了更好的结果,但在测试集上的 LogiQA 上取得了更差的结果,表明上下文选项交互的朴素增强可能会产生负面影响。

image-20220322144003791

  • 图7:AdaLoGN 错误分析

4. 相关研究

4.1 基于推理的阅读理解(MRC)

虽然简单的 MRC 任务已经得到很好的研究,但需要各种推理能力的复杂 MRC 任务正受到越来越多的研究关注。其中,HotpotQA 和 WikiHop 中的多跳 MRC 任务需要检索和阅读多个支持段落来回答问题。它们可以通过在连接相互重叠或共现的段落的图上构建和推理来解决,通过词权重隐式监督检索器,或者通过迭代应用密集检索。 DROP 中的 MRC 任务需要离散推理,例如加法、计数和排序。神经网络已扩展为包含可以对给定上下文中提到的数字和日期执行此类推理的模块。对于 CommonsenseQA 中针对常识知识和推理的 MRC 任务,最近的方法将外部常识知识与预训练用于推理的语言模型。还有关于需要空间/地理推理和时间/因果推理的 MRC 任务的研究。

与上述推理能力不同,本文考虑的 MRC 任务需要逻辑推理,例如对充分必要条件、分类、合取和析取的推理。仅预训练的语言模型在 ReClor 和 LogiQA 的此类任务上表现不佳,并且远远落后于人类水平,因为它们在逻辑推理方面存在缺陷。在解决此类任务的现有方法中,DAGN 和 Focal Reasoner 从文本中提取话语或共指关系,并表示为文本单元图。然后他们使用 GNN 传递消息并更新表示以预测答案。

与它们的神经性质不同,我们的方法通过对提取的逻辑关系应用推理规则来扩展图,从而象征性地执行此类任务所需的逻辑推理。此功能类似于 LReasoner,它通过推断的逻辑关系扩展上下文以有利于后续的神经推理。然而,与 LResoner 计算演绎闭包并通过以无监督方式与选项重叠的文本识别相关扩展不同,我们的方法以监督方式基于来自神经推理的信号预测相关性,并且我们的预测在足够多的迭代后演变符号推理和神经推理之间的相互作用。所有这些特性都帮助我们的方法在实验中获得了更好的性能。

4.2 神经符号推理

本文方法代表了神经符号推理的一种新实现,它不同于以下现有方法。神经符号推理的一种范式是逻辑驱动的神经推理。例如,可以通过增加损失函数调整网络结构将逻辑约束编译成神经网络。逻辑连接词、量词和一致性检查也可以通过神经网络来近似。虽然这些方法通过仿真将逻辑推理整合到神经推理中,但我们的方法通过在逻辑关系上应用推理规则来明确执行逻辑推理。这种精确推断比基于仿真的近似更准确

另一种范式是神经驱动的逻辑推理。例如,神经网络已被用于在回答一阶逻辑查询时预测原子的真实性,并在概率逻辑编程中实现谓词。这些方法和我们的方法处理不同的问题,因此使用不同的技术。具体来说,虽然这些方法用神经推理产生的额外事实来补充逻辑推理,但我们的方法根据来自神经推理的信号过滤推理的逻辑关系。此外,观察到上述方法中的神经符号交互是单向的,即它们利用符号推理或神经推理来加强另一个。相比之下,我们允许双向神经符号交互,其中神经和符号推理相互并迭代地相互加强以获得更好的性能。

5. 结论

为了应对基于推理的 MRC 的挑战,本文提出了一种神经符号方法,其中神经和符号推理通过我们的新 AdaLogN 模型相互迭代地相互加强。本文还通过一种新颖的子图到节点消息传递机制增强了基于图的神经推理。由于这些想法非常普遍,相信它们在 MRC 之外的各种应用中具有巨大潜力,例如链接预测。本文的方法依靠依靠句法工具从文本中提取原始 TLG。需要探索其他提取方法以获得更高的质量。文章作者还计划应用更多的推理规则并结合量词来提高符号推理的表达能力。