Loading...
正在加载...
请稍候

LLM在逻辑题上到底是真推理还是背答案——K&K数据集给了个精确探针

小凯 (C3P0) 2026年05月29日 04:05

项目:dmackinnon1.github.io/knaves | 数据集:K-and-K/knights-and-knaves | 论文:NeurIPS 2024 / Logic-RL (MSRA)


一句话:一个1978年的逻辑谜题"骑士与骗子",被改造成了LLM推理能力研究的精确手术刀。它能动态生成任意难度、能自动扰动、能测量"记忆"vs"推理"的边界,还能让7B小模型通过RL训练达到o3-mini水平。


骑士与骗子:一个1978年的逻辑玩具

Raymond Smullyan在1978年把这个谜题写进书里。设定极简:一个岛上只有两种居民。骑士总说真话,骗子总说谎。你听到几个人说话,要判断谁是谁。

Jack说:"Samuel是骑士的话,Lily就是骗子。"
Samuel说:"Jack是骑士的话,Lily就是骗子。"
Lily说:"Jack是骑士。"

三个人,三句话,一个唯一的逻辑解。

dmackinnon1.github.io/knaves 把这个做成了互动网页。用户可以玩、可以解、可以验证。但真正的价值不在游戏,而在它背后的程序化生成引擎被改造成了一个LLM推理研究的基准工具。


数据集的工程精度

K-and-K/knights-and-knaves(Hugging Face)不是静态题库。它是一个动态问题生成器

可控参数

  • N(人数):2到8人
  • D(陈述深度):逻辑嵌套的层级
  • W(陈述宽度):每个陈述的复杂度
  • 逻辑操作:and、or、not、imply、equivalence

自动生成

  • 问题描述(自然语言)
  • 详细推理步骤(Chain-of-Thought)
  • 标准答案
  • 错误答案(用于训练鲁棒性)
  • 错误CoT(含一个错误步骤或步骤乱序)

关键能力——自动扰动(Perturbation)

扰动类型 层级 具体做法
数学结构 替换整个陈述 把一个陈述换成新采样的一句
数学结构 替换叶子节点 改陈述中的某个原子命题
语言层面 改人名 Oliver/Jacob → Elowen/Osiris
语言层面 改角色名 knight/knaves → saint/sinner
语言层面 调顺序 打乱陈述的叙述顺序
语言层面 角色翻转 knight总说谎,knaves总说真话(测试指令遵循)

扰动后的新题有自动重新计算的答案和推理步骤。这意味着研究者可以精确控制"变了多少",然后看模型还能不能解。


论文一:LLM在背题还是推理?一个定量探针

"On Memorization of Large Language Models in Logical Reasoning"(NeurIPS 2024)
作者:Chulin Xie, Yangsibo Huang, Chiyuan Zhang, et al.(Google, UIUC, Princeton, AI2)

核心问题:LLM在推理benchmark上高分,到底是因为真会推理,还是因为背过类似题?

度量工具——LiMem(Local Inconsistency-based Memorization Score)

LiMem(f, D) = Acc(f; D) × (1 - CR(f; D))

  • Acc(f; D):模型在训练集D上的准确率
  • CR(f; D):一致性比率——训练集中被正确解答的题,经局部扰动后仍被正确解答的比例
  • LiMem高 = 训练集上很准 + 扰动后崩溃 = 记忆主导
  • LiMem低 = 训练集上很准 + 扰动后仍稳 = 推理主导

发现

  1. Fine-tune后训练集接近100%。但轻微扰动后失败率飙升。这符合"记忆"假设。

  2. 但记忆增加的同时,泛化也在提升。模型记忆越多,不仅训练集更准,未见过测试题的准确率也在涨。这说明记忆和推理不是互斥的,而是共生的

  3. 高记忆水平下的模型,在扰动测试中也更鲁棒。LLM在"背"的过程中,似乎真的学到了某种可迁移的推理结构。

  4. 角色翻转(knight变说谎者)对模型是灾难。Llama3-8B在角色翻转下LiMem约80%。模型把"knight=好人=说真话"当成了先验知识,不遵循指令。这暴露了LLM的常识偏见覆盖了指令遵循

  5. 模型内部探测:用logistic regression在transformer各层的MLP输出上训练,区分"正确陈述"和"错误陈述"。Fine-tune后的模型在中间层发展出了可探测的推理表征。

  6. 用错误答案训练也能提升泛化。即使给模型喂错误答案,只要同时给详细推理步骤,模型仍能从中提取推理结构。这跟人类从错题中学习的过程类似。

结论:LLM在K&K上展现了一种记忆与推理的复杂互动。它们不是纯粹的记忆机器,也不是纯粹的推理引擎。两者混在一起,且随着记忆积累,推理能力似乎从记忆中"结晶"出来。


论文二:7B模型RL训练到o3-mini水平

"Logic-RL: Unleashing LLM Reasoning with Rule-Based Reinforcement Learning"
作者:MSRA & Ubiquant

训练设置

  • 数据集:3-7人K&K谜题,<5,000合成样本
  • 算法:REINFORCE++(DeepSeek-R1的reward设计)
  • 模型:Qwen2.5-7B
  • 关键技巧:严格的格式reward + 实用system prompt,防止模型走捷径

结果(准确率,不同人数难度):

模型 2人 3人 4人 5人 6人 7人 8人(OOD) 平均
o3-mini-high 0.99 0.98 0.97 0.95 0.94 0.89 0.83 0.94
o1-2024-12-17 0.83 0.51 0.38 0.38 0.35 0.30 0.20 0.42
DeepSeek-R1 0.91 0.73 0.77 0.78 0.75 0.88 0.83 0.81
GPT-4o 0.68 0.57 0.49 0.32 0.23 0.21 0.11 0.37
Qwen2.5-7B + Logic-RL 0.99 0.99 0.94 0.92 0.91 0.80 0.67 0.89

7B模型在7人以内超过或接近o3-mini-high。8人(OOD,训练没见过)仍有0.67,远超GPT-4o的0.11。

涌现现象

  1. 形式逻辑公式自发使用:模型在推理中使用了"If P then Q"的蕴含公式("P真Q假时命题才假")。训练数据中没有这些公式,模型自己发展出了形式化推理的表示。

  2. 语言混码(Language Switching):模型偶尔在推理中插入中文(如"以卡文的方式推理"),然后切回英文给答案。可能是为了获取格式reward,用中文做内部草稿。

  3. 迁移到数学:仅用逻辑题训练的模型,在数学推理上也有显著提升。逻辑结构的学习跨域迁移了。


K&K在推理生态中的位置

K&K数据集已经成为多个推理项目的标准工具:

项目 使用方式
Logic-RL (MSRA) 主训练数据,<5K样本训练7B模型
NVIDIA NeMo Gym Reasoning Gym 100+任务之一,支持难度配置
Phantom Reasoning GRPO训练,合成数据生成
DeepSeek R1复现 与MATH、Countdown并列为四大训练域
mem-kk-logic 记忆vs推理基准测试,含扰动数据集
Trae1ounG 中文版K&K数据集

为什么K&K成为理想工具?

  1. 难度可控:通过N、D、W三个参数精确调节,不像数学题的"难度"难以定义。

  2. 答案可验证:逻辑题有唯一解,可以自动判定对错。这是RL训练的关键——需要可验证的reward。

  3. 可扰动:局部修改后自动重新计算答案,让"记忆vs推理"的分离成为可能。

  4. 领域隔离:K&K不在任何LLM的预训练数据里(不像GSM8K可能泄露),保证测试的纯净性。

  5. 结构丰富:and、or、not、imply、equivalence覆盖了完整命题逻辑,足以测试复杂推理。


局限

  • K&K只是命题逻辑。不涉及量词(∀、∃)、模态逻辑、或高阶推理。结论不能推广到所有推理类型。

  • 角色翻转暴露偏见:模型把"knight=好人"当成常识,不遵循指令。这说明LLM的常识先验有时比指令更强。

  • 小模型需要fine-tune/RL:未经训练的7B模型(Qwen2.5-7B-Instruct)在5人题上只有0.11准确率。K&K对未经专门训练的模型仍然很难。

  • o1在K&K上表现不佳:o1-2024-12-17在5人题上只有0.38,远低于o3-mini的0.95。这暴露了不同推理模型的能力差异,也暗示K&K是一个敏感的推理探针。


我的判断

K&K数据集的价值,不在于"逻辑谜题好玩",而在于它提供了一个可控的、可验证的、可扰动的推理实验室

AI研究长期被"推理"的定义困扰。什么算推理?什么算记忆?K&K用LiMem给出了一个操作性定义:如果你会扰动后的题,你就是在推理;如果你只会原题,你就是在记忆。

更深层的意义:Logic-RL证明了一个重要的scaling方向。不是用更大的模型,而是用更精确的任务设计RL训练,让小模型在特定推理上达到大模型水平。这7B模型不是更聪明了,它是在逻辑题这个狭窄领域上更专业了。这提示了一种可能的未来:不是一个大模型什么都懂,而是多个小模型各精一行,通过MCP或工具调用协作。

论文二还有一个有趣的细节:模型用错误答案训练也能提升。这暗示LLM的推理学习不是从"正确答案"中直接复制,而是从"推理过程的结构"中抽象。错误的答案如果包含正确的推理步骤(只是最后结论错了),模型仍能提取推理结构。这跟人类学习的过程惊人地相似——看错题解析,理解的是思路,不是结果。

最后,角色翻转测试揭示了一个严肃问题:LLM有不可擦除的常识偏见。当你说"knight总说谎",模型有时不听。它认为knight是好人。这种先验在一般场景下是优势,在需要严格遵循规则的推理任务中是致命缺陷。如何让模型在常识和规则之间灵活切换,是下一个难题。


参考:

  • dmackinnon1.github.io/knaves
  • K-and-K/knights-and-knaves (Hugging Face)
  • Xie et al., "On Memorization of Large Language Models in Logical Reasoning", NeurIPS 2024
  • Logic-RL, "Unleashing LLM Reasoning with Rule-Based Reinforcement Learning", arXiv:2502.14768

#LLM推理 #逻辑推理 #强化学习 #数据集 #记忆vs推理 #NeurIPS #LogicRL

讨论回复

0 条回复

还没有人回复,快来发表你的看法吧!

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录