在自然语言处理 (NLP) 快速发展的世界里,我们面临着一个反复出现的“黑盒”困境。我们拥有能够阅读复杂段落并准确回答相关问题的模型,但我们很难知道它们为什么会选择某个特定的答案。
想象一下,一个模型拒绝了贷款申请或将一篇新闻文章标记为虚假信息。如果模型不能忠实地解释其推理过程,我们该如何信任它?
今天,我们将深入探讨一篇旨在正面解决这一问题的研究论文。这篇论文题为 “Atomic Inference for NLI with Generated Facts as Atoms” (基于生成事实作为原子的 NLI 原子推理) , 介绍了一种名为 FGLR (Fact-Generated Logical Reasoning,基于事实生成的逻辑推理) 的新颖框架。这种方法不仅仅是让 AI 猜测答案;它通过强制 AI 将问题分解为原子事实,逐一评估,并构建逻辑结论。
对于 NLP 的学生来说,这是一个令人着迷的视角,展示了我们如何将大型语言模型 (LLM) 的生成能力与结构化逻辑规则的可解释性结合起来。
问题所在: 准确性与可解释性的对立
这篇论文关注的是 自然语言推理 (Natural Language Inference, NLI) 。 NLI 是一项基础任务,模型会接收两段文本:
- 前提 (Premise) : 一个事实陈述 (例如,“猫坐在垫子上。”) 。
- 假设 (Hypothesis) : 一个需要验证的陈述 (例如,“猫正在睡觉。”) 。
目标是将它们的关系分类为:
- 蕴涵 (Entailment) : 如果前提为真,则假设必然为真。
- 矛盾 (Contradiction) : 如果前提为真,则假设必然为假。
- 中立 (Neutral) : 假设的真实性无法从前提中确定。
像 DeBERTa 这样的最先进模型在这方面表现出色。然而,它们仅输出一个单一的标签。即使我们使用“可解释性”技术 (如高亮显示重要单词) ,我们也无法保证这些高亮显示的单词是模型做出决定的真实原因。这就是缺乏忠实度 (faithfulness) 。
解决方案: 原子推理
研究人员提出了一种称为 原子推理 (Atomic Inference) 的解决方案。核心思想简单而强大: 与其将整段文本输入分类器,不如我们将输入分解为更小的、不可分割的单元,称为 原子 (atoms) 。
模型对每个原子做出“硬”决策 (是/否) 。然后,一组确定性的逻辑规则结合这些小决策来形成最终答案。因为规则是确定性的,我们可以确切地知道是哪个原子导致了最终的预测。
为什么选择“事实”?
以前的原子推理尝试将文本切分为句子或任意的词片段 (word spans) 。但这些方法存在缺陷:
- 句子 通常包含多条信息 (例如,“那辆红色的车,速度很快,撞到了墙上”) 。如果模型标记了这个句子,它标记的是“红色”、“快”还是“撞墙”?
- 词片段 可能过于破碎且缺乏上下文。
该论文的作者认为,完美的原子是一个 事实 (Fact) 。 通过使用 LLM 将复杂的前提重写为一系列清晰、简单的事实列表,我们获得了推理所需的完美粒度。
核心方法: 基于事实生成的逻辑推理 (FGLR)
FGLR 系统在一个管道中运行,将杂乱的段落转化为清晰的逻辑决策。让我们分解一下其架构。
第一步: 事实生成
首先,系统使用 GPT-3 将 前提 分解为原子事实列表。
例如,如果前提是:
The Ottawa Sun is a daily tabloid newspaper in Ottawa, Ontario, Canada. It is published by Sun Media. (《渥太华太阳报》是加拿大安大略省渥太华的一份每日小报。它由太阳传媒出版。)
LLM 生成的列表如下:
- The Ottawa Sun is a daily tabloid newspaper. (《渥太华太阳报》是一份每日小报。)
- The Ottawa Sun is located in Ottawa, Ontario, Canada. (《渥太华太阳报》位于加拿大安大略省渥太华。)
- The Ottawa Sun is published by Sun Media. (《渥太华太阳报》由太阳传媒出版。)
“基于假设条件”的创新: 研究人员发现,有时通用的事实列表会遗漏证明或反驳假设所需的细微细节。为了解决这个问题,在推理阶段,他们会问 LLM 一个针对性的问题: “列出一个从前提中明确得知的、能让我们验证假设的事实。” 这会生成一个 基于假设条件的事实 (hypothesis-conditioned fact) , 确保没有遗漏关键信息。
第二步: 基于注意力的架构
一旦我们有了事实列表,我们该如何对它们进行分类?研究人员使用了修改版的 DeBERTa 模型。
每个事实 (\(f_i\)) 都与假设配对,并被编码为向量表示 (\(R_{f_i}\)) 。然后,模型需要决定这个特定事实是支持 (蕴涵) 还是反驳 (矛盾) 该假设。
模型计算矛盾 (\(\tilde{a}_{c,i}\)) 和蕴涵 (\(\tilde{a}_{e,i}\)) 的“注意力权重”。这些权重代表了模型认为某个特定事实触发特定标签的强烈程度。
例如,矛盾权重的计算如下所示:

在这里,Sigmoid 函数 (\(\sigma\)) 将输出压缩在 0 到 1 之间。如果 \(\tilde{a}_{c,i}\) 很高 (接近 1) ,则模型认为事实 \(i\) 与假设相矛盾。
第三步: 将原子纳入“循环中”进行训练
这是巧妙的部分。标准数据集 (如 ANLI) 仅提供整体对的标签 (蕴涵/矛盾/中立) 。它们 没有 告诉我们哪个具体事实是原因。
为了解决这个问题,研究人员使用了一种将事实作为一个组进行处理的训练方法。他们计算所有事实分数的加权和,以创建一个“实例级”预测。

同时,他们应用了 事实级损失 (Fact-Level Loss) 。 这促使模型确保如果整体标签是“矛盾”,那么具有最高矛盾分数的事实应尽可能接近 1。

总损失函数结合了这些目标,迫使模型通过在单个事实中找到正确的证据来得出整个实例的正确答案。

第四步: 推理的逻辑规则
一旦模型训练完成,它不会直接输出最终答案的概率。相反,它会查看原子的分数。
研究人员设计了一套特定的逻辑来分解 前提 (这与之前分解假设的工作不同) 。

如 图 2 所示,这些规则非常直观:
- 矛盾: 如果 至少有一个 事实与假设矛盾,则整个实例为矛盾。
- 蕴涵: 如果 至少有一个 事实完全蕴涵假设,则该实例为蕴涵。
- 中立: 如果没有事实与假设矛盾或蕴涵,则答案为中立。
这凸显了可解释性: 如果模型预测“矛盾”,你可以指着第 3 个事实说: “就是因为这个。”
实验与结果
该团队在 ANLI (Adversarial NLI) 数据集上测试了 FGLR,该数据集以旨在欺骗 AI 模型而闻名,难度很大。他们将基于事实的方法与基于句子的方法 (SenAI) 和基于片段的方法 (SLR-NLI) 进行了比较。
粒度重要吗?
结果表明,使用事实 (FGLR) 明显优于使用句子或片段。
下面是消融实验 (表 4) ,分解了 为什么 FGLR 表现良好。

注意 “FGLR - No h-cond facts” 这一行。如果没有“基于假设条件的事实” (LLM 在推理期间生成的针对性事实) ,准确率从 60.7% 下降到 58.4% 。 这证明了“原子”的质量与推理模型本身一样重要。
扩展规模
这种方法适用于更大的模型吗?研究人员将 FGLR 应用于 DeBERTa-large 。

如 表 2 所示,FGLR (最后一行) 在完整的 ANLI 数据集上达到了 67.7% , 击败了基于句子的基线模型 (SenAI 为 65.6%) 。这证实了该方法随模型规模有效扩展。
为什么这很重要
“基于事实生成的逻辑推理”方法提供了一个“两全其美”的解决方案:
- 可解释性: 与标准的“黑盒”分类器不同,FGLR 提供了清晰的线索。你可以确切地看到哪个生成的事实触发了决策。
- 忠实度: 因为最终决定是原子决策的硬逻辑总和,所以解释保证是预测的 实际 原因。
- 性能: 它没有为了可解释性而牺牲准确性。事实上,通过让模型专注于更清晰、更简单的事实,它通常在复杂的推理任务上优于标准模型。
结论
这篇题为“Atomic Inference for NLI with Generated Facts as Atoms”的研究表明,我们在构建可靠 AI 的方式上正在发生转变。我们不再寄希望于庞大的神经网络隐式地学习逻辑,而是可以显式地构建它们的输入和输出,以反映人类的推理过程。
通过使用 LLM 作为“翻译器”——将密集的文本转换为清晰的原子事实——并使用判别器来判断这些事实,我们创建了不仅聪明,而且透明和负责任的系统。对于展望 NLP 未来的学生来说,这种 神经符号 AI (neuro-symbolic AI) (结合神经网络与逻辑) 的交叉领域是一个令人兴奋的前沿方向。
](https://deep-paper.org/en/paper/2305.13214/images/cover.png)