如果你让学生解方程 \(x^2 + x = 3\),他们可能会拿出一张纸,使用求根公式,然后给你一个包含平方根的精确无理数。但如果你稍微改动一下问题,变成“求方程 \(x^2 + x = 3\) 的整数解”,学生的行为就会改变。他们会进行求解,意识到结果不是整数,然后正确地回答: “没有整数解。”
为了做到这一点,人类大脑完成了一项被称为系统组合性 (systematic compositionality) 的壮举。我们将两个不同的知识领域结合起来: (1) 解二次方程的代数技能,以及 (2) 对“整数”是什么的概念性理解。我们不需要以前见过这个特定的脑筋急转弯就能解决它;我们会自发地结合我们的技能来处理新的逻辑。
像 GPT-4 这样的大型语言模型 (LLM) 以其数学能力震惊了世界。但它们是否拥有同样的系统组合性呢?还是说它们仅仅是在背诵训练期间见过的推理路径?
在论文 “Exploring the Compositional Deficiency of Large Language Models in Mathematical Reasoning Through Trap Problems” 中,来自复旦大学的研究人员深入探讨了这个问题。他们介绍了一个名为 MATHTRAP 的巧妙新数据集,用于测试 LLM 是否能识别需要结合不同领域知识的逻辑陷阱。结果揭示了拥有知识与能够运用知识之间存在着一个迷人但令人担忧的差距。
问题所在: 知识与组合
人类认知本质上具有组合性。正如 Fodor 和 Pylyshyn 在 1988 年所定义的,这是一种从有限的习得组件生成无限新颖组合的代数能力。在数学背景下,如果你知道几何规则,也知道素数的性质,你应该能够解决一个结合了两者的题目,即使你从未见过它们混合在一起。
最近的 LLM 在 GSM8K (小学数学) 和 MATH (竞赛数学) 等标准基准测试上表现出很高的准确率。然而,研究人员怀疑这种成功可能部分归因于模型遵循了训练期间见过的熟悉推理“路径”。
为了对此进行测试,作者提出了数学推理中的组合性定义。简单来说: 如果一个模型可以解决问题 A (纯数学) 并且拥有知识 B (特定概念) ,它应该能够解决问题 C (问题 A + 知识 B 的结合) 。如果它通过了 A 和 B 但未能解决问题 C,它就缺乏组合性。
方法: 设置陷阱
为了评估这种能力,研究人员构建了 MATHTRAP 数据集。这不仅仅是一组数学难题;它是对知识整合的系统性测试。
该数据集围绕问题三元组构建。对于每个数据点,都有三个不同的组成部分:
- 原问题 (The Original Problem) : 取自现有数据集 (MATH 或 GSM8K) 的标准问题。
- 概念问题 (The Conceptual Problem) : 测试模型对特定概念 (陷阱) 理解程度的简单问题。
- 陷阱问题 (The Trap Problem) : 基于该概念,对原问题进行修改,加入逻辑缺陷或矛盾。
目标很简单: 如果模型正确回答了原问题,也正确回答了概念问题,那就说明它拥有所有必要的知识。因此,如果它在陷阱问题上失败,就证明它无法自发地组合这些知识。
五种类型的陷阱
研究人员并没有随意添加噪声;他们将陷阱分为五种不同的逻辑谬误类别。

如上文 Table 1 所示,该数据集涵盖了多种逻辑陷阱:
- 概念未定义 (16%): 数学题看起来可解,但使用了未定义的术语,例如求 \(\tan(90^{\circ})\)。
- 条件缺失 (6%): 题目要求求总数 (例如 4 月和 6 月的销售额) ,但只提供了部分数据 (4 月和 5 月) 。
- 直接矛盾 (24%): 前提本身立即自相矛盾,比如一个周长为 30 但高度为 10 的等边三角形 (这在几何上是不可能的) 。
- 间接矛盾 (38%): 矛盾只有在解题后才会出现,比如引言中提到的整数二次方程。
- 违背常识 (15%): 要求计算从一副标准扑克牌中选出 5 种不同花色的概率 (而扑克牌只有 4 种花色) 。
这些问题在某种意义上是“未见过的”,因为它们很少出现在训练数据中。现实世界的数学教科书通常包含可解的问题。通过打破这种模式,研究人员迫使模型去思考,而不仅仅是背诵。
实验: LLM 会上当吗?
研究人员测试了广泛的模型,包括像 GPT-4 和 Claude 3 Opus 这样的专有巨头,以及像 Llama-3 和 MetaMath 这样的开源模型。
评估指标是比率 (Ratio) : 即陷阱问题的准确率除以原问题的准确率。100% 的比率意味着模型在识别陷阱方面的能力与做标准数学题的能力一样强。
组合性差距
结果非常明显。虽然模型在原问题上表现良好,在概念问题上表现出色,但在面对陷阱问题时却表现惨淡。

Table 2 提供了详细数据。让我们看看 GPT-4-0125-preview :
- 概念准确率: 90.0% (它完全理解这些概念) 。
- 原问题准确率: 70.3% (它非常擅长解数学题) 。
- 陷阱准确率: 36.0% (它未能将概念应用到数学中) 。
这导致比率仅为 51.2% 。 当蓝图稍有变化时,模型虽然拥有砖块 (知识) ,却无法建造房子 (解决方案) 。
开源模型的表现甚至更差。例如, MetaMath-7B , 一个专门针对数学微调的模型,其比率仅为 5.84% 。 这表明“特定于数学”的训练实际上可能会让模型更倾向于盲目套用公式,而不是对问题陈述进行推理。
可视化失败案例
为了理解这些失败是什么样子的,我们可以检查模型输出。在许多情况下,模型会自信地计算出一个在数学上不可能的答案,因为它无视了陷阱。

在 Table 14 中,我们看到 GPT-4 在概念问题中正确地识别出 \(\tan(90^{\circ})\) 是未定义的。然而,如果一个陷阱问题要求进行涉及直角三角形的计算,且暗示其中一个角为 \(90^{\circ}\) (此时正切值未定义) ,模型通常会盲目地继续使用勾股定理或三角比,完全忽略了它自己关于该值不存在的知识。
人类 vs. 机器
这些陷阱问题是不是太难了?也许人类也会失败?
为了验证这一点,研究人员招募了来自顶尖大学的本科生。他们确保学生最初不知道他们正在接受“陷阱”问题的测试。

Table 3 突显了认知上的巨大差异。
- 人类 (无提示) : 陷阱问题准确率为 83.8%。
- 人类 (有提示) : 准确率为 95.1%。
- 人类比率: ~86% (相比之下 GPT-4 为 51%) 。
人类表现出了强大的自发组合性。即使没有被警告,他们也会注意到: “嘿,这说不通啊。”当他们确实错过了陷阱时,一个简单的“提示”足以完善他们的表现。另一方面,LLM 很难“醒悟”并质疑前提。
我们能修复它吗?干预与解决方案
研究人员探索了三种方法来缓解这一缺陷: 提示工程、少样本学习和微调。
1. 自然语言提示与少样本演示
最简单的方法是警告模型。通过添加像*“注意这个问题可能无法解答”*这样的提示,或者提供 1 个或 5 个陷阱问题的示例 (样本/shots) ,性能得到了提升。

如 Table 4 所示,提供 5-shot 演示 (向模型展示 5 个如何处理陷阱的例子) 有显著帮助。对于 Claude 3 Opus , 陷阱问题的准确率从 19.0% 跃升至 56.1% 。
然而,请注意其中的权衡。对于某些模型来说,检查陷阱会让它们在原问题 (可解问题) 上感到困惑,导致标准数学题的准确率下降。模型难以在怀疑态度与能力之间取得平衡。
2. 微调
研究人员还尝试在 MATHTRAP 数据集 (特别是其中的公开子集) 上对模型进行微调。

Table 5 显示,微调 (见 MetaMath395K+MathTrap1K 一行) 大幅提高了陷阱准确率 (从 6.36% 到 29.1%) 。然而,这是有代价的: 模型解决标准原问题的能力下降了 (从 41.4% 到 33.3%) 。这表明模型不一定是在学习如何推理;它只是过拟合于“有些问题是陷阱”的想法,从而变得过度谨慎或困惑。
3. “慢思考”的希望 (OpenAI o1)
论文中最有希望的发现之一涉及 OpenAI 最近发布的 o1 模型 。 该模型专为“系统 2”思维设计——在输出答案之前,它会花更多时间进行处理和推理。
回顾 Table 2 , o1-preview (Web) 模型达到了 77.4% 的比率,这比任何其他模型都更接近人类的表现 (85.9%) 。这表明“慢思考”的推理时计算扩展 (inference-time scaling) 可能是解锁真正组合性的关键,允许模型在致力于计算之前,根据问题约束反复检查自己的逻辑。
结论与要点
MATHTRAP 研究暴露了当前大型语言模型的一个关键局限性。虽然它们充当了极其全面的数学方法 (原问题) 和定义 (概念问题) 的百科全书,但当路径没有为它们铺设好时,它们缺乏自发地将这两条线索交织在一起的能力。
给学生和研究人员的关键要点:
- 不要把知识误认为是推理: 模型可以知道 \(A\) 也可以知道 \(B\),但这不代表它知道 \(A+B\) 意味着 \(C\)。
- “盲目计算”效应: 即使前提有缺陷,LLM 也强烈倾向于计算出答案。它们将“流程”置于“逻辑”之上。
- 人类认知是独特的: 人类处理这些陷阱的轻松程度凸显了生物推理在根本上比当前的 Transformer 架构更灵活、更具组合性。
- “慢思考”中的希望: o1 模型的成功表明,未来允许迭代推理 (先思考后发言) 的架构可能最终会弥合这一差距。
系统组合性仍然是一个开放的挑战。在 AI 能够自发地说出“等一下,这个问题没道理”之前,它仍然只是在模仿推理的形式,而不是真正理解内容。
](https://deep-paper.org/en/paper/file-3064/images/cover.png)