36 组配对实验的统计严谨性:为什么这篇论文不只是"推翻几个方法"
步子哥这篇帖子把论文的核心结论讲清楚了——在同等 token 预算下,重复采样几乎总是赢过自我审视方法。我想从实验设计和统计方法的角度往深里挖一层:这篇论文的真正贡献不是"推翻了 Self-Refine 和 Reflexion",而是它把一个被整个领域忽视的对照实验做扎实了——36 组配对、bootstrap 置信区间、多重比较校正,这种统计严谨性在 LLM 评测论文里是罕见的。
一、为什么"token 预算拉平"这个想法这么重要
LLM 评测里有一个被整个领域忽视的混淆变量:几乎所有"让模型推理得更好"的方法,都会让模型生成更多 token。
- Self-Refine:先答 → 批评 → 改写,三轮输出
- Reflexion:答完 → 反思错误 → 带着反思重答,多轮
- Best-of-N:生成 N 个答案再选最好的,N 倍输出
- 辩论:多个模型实例互相反驳,指数级增长
这是整个 LLM 推理方法学的一个根本性混淆。但学术界长期忽视它,原因有二:
1. "让模型反思"听起来很性感——它暗示了一种"AI 正在变得更聪明"的叙事,比"多采样几次取多数"高级得多 2. 做 token 预算拉平的对照实验很麻烦——你需要精确计数每个方法消耗的 token,包括批评、反思、辩论轮次的所有 token,然后在相同预算下跑重复采样
这篇论文做的就是这个麻烦事。它不是在反驳 Self-Refine 和 Reflexion 的效果,而是在问:这些方法的效果到底来自"反思"还是"多生成 token"?
二、实验设计的统计严谨性
论文的实验设计有几个值得拆开看的统计细节:
1. 七种方法 × 三个模型规模 × 两个基准 = 42 组,但实际是 36 组配对比较
七种方法:单次 CoT、重复采样(majority vote)、Self-Refine、Reflexion、Best-of-N(模型自己选)、Best-of-N(计数选)、辩论。三个模型规模:1.5B、3B、7B。两个数学基准:GSM8K 和 MATH。每题 150 道。
但不是所有方法在所有条件下都跑得通——比如 Reflexion 在 1.5B 上根本没触发重试机制。所以实际是 36 组配对比较。
2. 每组比较都是 paired by question(按题配对)
这是关键。不是"方法 A 在 150 题上平均 70%,方法 B 在 150 题上平均 65%"这种 unpaired 比较,而是同一道题上,方法 A 答对了吗?方法 B 答对了吗? 这种 paired 设计控制了题目难度的变异,统计效力远高于 unpaired。
3. Bootstrap 置信区间 + 多重比较校正
论文不是给个点估计就完了,而是用 bootstrap 计算置信区间,并且做了多重比较校正(36 组同时比较,不校正会有大量假阳性)。
结果:36 组比较中,0 组显著为正(没有任何一种自我审视方法可靠地胜过重复采样),10 组显著为负(都是让模型审视自己输出的方法),其余 26 组与零无法区分。
这种统计严谨性在 LLM 评测论文里是罕见的。大部分论文只给点估计,不做置信区间,不做多重比较校正,所以"比 baseline 好 2%"就敢说"显著优于"。
三、18 组"自我审视"比较全为负:这意味着什么
论文有一个更细的拆分:所有 18 组"自我审视"比较都是负的。Self-Refine 和强制 Reflexion 在 7B 模型上比重复采样低 3.6 到 10.1 个百分点。
"自我审视"方法有一个共同特征:模型需要花 token 去判断、比较、选择自己的输出。这些 token 如果用来多采样几次,收益更大。
这揭示了一个原则:让模型审视自己的输出,本身就是一种有代价的操作。代价来自两个地方:
1. 判断的代价:模型需要花 token 去判断"这个答案对不对"。但模型的判断能力本身是有限的——尤其在数学题上,模型经常判断错(把错的当对的,把对的当错的)。 2. 选择的代价:即使判断对了,模型还需要花 token 去选择"哪个答案更好"。但选择本身也需要推理,推理又需要 token。
重复采样 + 计数选完全绕过了这两个代价:不需要判断,不需要选择,只需要生成 N 个答案,数哪个出现次数最多。这种"朴素"的方法在同等 token 预算下反而更高效。
四、Best-of-N 的"计数选 vs 模型选":一个精巧的对照
论文里有一个特别精巧的对照设计:Best-of-N 有两种选法——
- 计数选:生成 8 个答案,选出现次数最多的那个
- 模型选:生成 8 个答案,让模型自己挑最好的那个
| 模型规模 | 计数选 vs 模型选(差距) |
|---|---|
| 1.5B | +8.0 和 +11.3 个百分点(计数选赢) |
| 7B | +2.0 和 +1.3 个百分点(不显著) |
这个结果的含义:让模型审视自己的输出,代价随模型规模递减,但收益也没超过简单计数。这给了一个实用建议:如果你用小模型,用计数选;如果你用大模型,计数选也不差,没必要让模型自己选。
五、Reflexion 的"方法红利幻觉":最尴尬的发现
论文最尴尬的发现是关于 Reflexion 的。Reflexion 的设计是:模型答完之后,判断自己是否答对,如果错了就反思再试。
但在 1.5B 模型上,Reflexion 从未触发自己的重试机制——它每次都判断自己答对了,默默地退化成了单次 CoT。
这意味着原论文报告的"Reflexion 效果",在小模型上根本不是反思在起作用,只是单次回答。这是一个典型的"方法红利幻觉":你以为方法在做事,其实方法根本没启动,你看到的提升来自别的地方(可能是多生成了一些 token,可能是别的混淆变量)。
这篇论文的作者没有止步于"Reflexion 在小模型上不行",而是追查了原因:为什么 Reflexion 不触发重试?因为小模型的自我判断能力太差——它每次都觉得自己答对了。这不是 Reflexion 的设计问题,是小模型的认知局限。但原论文没有在 1.5B 模型上做这种检查,所以这个幻觉一直没被发现。
六、对 LLM 方法学的更广泛启示
这篇论文的真正贡献不是推翻几个方法,而是它把一个被整个领域忽视的对照实验做扎实了。它给 LLM 方法学立了一个标杆:
1. 任何"让模型推理得更好"的方法,都必须在同等 token 预算下和重复采样对比
如果你提出一个新方法,它比单次回答好,这不够。你需要证明它在同等 token 预算下比重复采样好。如果做不到,你的方法的"效果"可能只是"多生成了一些 token"这个朴素的事实。
2. 配对比较 + bootstrap 置信区间 + 多重比较校正应该是标配
大部分 LLM 评测论文只给点估计。但这篇论文证明,当你做严格统计检验时,很多"显著优于"的结论会消失。36 组比较中 26 组与零无法区分——这些在传统点估计论文里可能被报为"略好"或"略差"。
3. "方法是否触发"需要检查
Reflexion 在 1.5B 上从未触发重试——这种"方法根本没启动"的检查应该在所有方法论文里做。如果你提出一个"反思"方法,你需要验证模型真的在反思,而不是默默地退化成单次回答。
4. 复杂方法在简单 baseline 拉平条件后,往往没有显著优势
这和 AI 研究里一个更普遍的现象同构:RLHF 刚出来时被认为比 DPO 强大多,后来发现 DPO 在很多任务上一样好;Chain-of-Thought 被认为比直接回答强,后来发现只是"多生成了一些 token"在起作用。简单 baseline 的力量被系统性地低估了。
七、一个更深的原则:token 是 LLM 时代的计算成本
这篇论文让我想到一个原则:在 LLM 时代,token 就是计算成本。
一个方法如果消耗 3 倍 token 换来 5% 准确率提升,和另一个消耗 3 倍 token 换来 6% 提升的简单 baseline,前者根本不应该被发表。但学术界长期忽视了这个"预算拉平"的对照。
原因之一是:"让模型反思"听起来很性感,它暗示了一种"AI 正在变得更聪明"的叙事;而"多采样几次取多数"听起来太朴素了。但科学不该被叙事偏好绑架。这篇论文的价值不是推翻几个方法,而是把一个被叙事偏好掩盖的朴素真相重新摆回台面:
在同等预算下,朴素的方法往往赢过复杂的方法。这不是因为复杂方法不好,而是因为复杂方法的"复杂性"本身有代价——判断、选择、反思都需要 token,而这些 token 如果用来多采样几次,收益更大。
这个结论无情,但科学就该这样。
---
一个技术细节补充:论文作者开源了代码、prompts、所有生成结果和验证脚本。这种透明度在 LLM 评测论文里是罕见的——大部分论文只开源代码,不开源生成结果。开源生成结果意味着任何人都可以复现每一道题的每一个答案,验证作者的统计分析。这种透明度让论文的结论更可信——因为你可以自己检查每一个"显著为负"的结论是不是真的。