Browse this library

Chinese source article

2.2.1 · L1: 竞争式自博弈

让模型和自己的副本竞争, 训练信号来自胜负, 测试通过与否, 或两个回答之间的偏好. 对称自博弈 (SPIN, SPAG) 和出题者–解题者结构 (Absolute Zero, R-Zero) 各自怎样产生信号, 信号在什么时候失效.

View original Markdown ↗

2.2 的单模型自训练里, 产生信号的和被训练的是同一个角色, 模型对自己的错误没有反驳者. 竞争式自博弈把模型实例化成两个相互竞争的副本, 信号取自比赛的相对结果: 赢还是输, 测试过没过, 两个回答哪个更好.

1. 第二方带来了什么

1.1. 相对结果代替自我断言

单模型自训练的信号是模型对自己某个输出的判断: 这个回答值几分, 这个答案是不是多数. 判断错了, 环里没有人会指出来.

竞争把信号换成相对结果. SPIN 的信号是「新模型能不能区分人写的回答和旧模型的回答」; SPAG 的信号是「攻方有没有诱使守方说出目标词」; Absolute Zero 的信号是「解题者给的输出和执行器跑出来的是否一致」. 这些结果由比赛规则或执行环境判定, 模型很难通过「自认为对」来改变它们.

这不等于外部审计. 对手是模型自己的副本, 和被训练的模型一起更新, 两者在更新边界之内. 综述的说法是, 竞争信号只是离开自我确认环的第一步: 它能帮着产生更好的候选, 但证明候选真的更好, 仍要靠边界外的评测.

两类结构与层级:综述把这一组分成两类. 对称自博弈里两个副本做同一类事: SPIN 让新模型区分人写的回答和上一轮自己生成的回答, SPAG 让模型在一个对抗性的猜词游戏里同时当攻方和守方. 出题者–解题者结构把两个副本分工: 出题者因为出了难题得奖励, 解题者因为解出题得奖励, 中间用一个验证器判定对错; Absolute Zero 的验证器是 Python 执行器, R-Zero 用解题者自己的多数投票当标签.

层级没有变. 本篇的方法都把保留下来的改动写进 θ\theta, 奖励规则固定, 所以都是 L1. 综述对 R-Zero 的归类原话是: 它在固定奖励下, 用强化学习更新两个角色的权重.

1.3. 对称自博弈: SPIN

问题与两个玩家:监督微调 (SFT) 用人写的示范数据训练模型. 一个 SFT 数据集训练若干轮以后, 继续在同一份数据上训练, 性能会停滞甚至下降. Chen 等人 (2024, UCLA) 的问题是: 不收集新的人工数据, 也不用偏好数据或奖励模型, 能不能从同一份 SFT 数据里继续得到提升.

SPIN (Self-Play fIne-tuNing) 把一轮训练写成两个玩家的博弈:

  • 对手是上一轮的模型 pθtp_{\theta_t}. 对 SFT 数据集里的每个提示 xx, 它生成一个回答 y′y'.
  • 主玩家是要训练的新模型 pθt+1p_{\theta_{t+1}}. 它的任务是区分人写的回答 y∼pdata(⋅∣x)y \sim p_{\mathrm{data}}(\cdot \mid x) 和对手生成的回答 y′∼pθt(⋅∣x)y' \sim p_{\theta_t}(\cdot \mid x).

训练完成后, 新模型成为下一轮的对手. 两个玩家是同一个模型在不同轮次的参数.

从判别器到训练目标:主玩家先被写成一个打分函数 ff, 要求它对人写的回答打高分, 对对手的回答打低分:

ft+1=argminf∈FtE[ℓ(f(x,y)−f(x,y′))],f_{t+1} = \mathop{\mathrm{argmin}}_{f \in \mathcal{F}_t} \mathbb{E}\left[\ell\big(f(x, y) - f(x, y')\big)\right],

ℓ\ell 是单调递减的凸函数. 论文取 logistic 损失 ℓ(t)=log⁡(1+e−t)\ell(t) = \log(1 + e^{-t}). 取线性损失 ℓ(t)=−t\ell(t) = -t 时目标无界, 训练中 ff 在对手回答上的值会被推向负无穷; logistic 损失非负, 光滑, 尾部指数衰减, 能限制 ff 的绝对值.

接下来要从 ft+1f_{t+1} 得到新的对手. 新对手应该生成主玩家打高分的回答, 同时不要离旧对手太远. 加一个 KL 正则:

max⁡p  Ex∼q, y∼p(⋅∣x)[ft+1(x,y)]−λ Ex∼q KL(p(⋅∣x) ∥ pθt(⋅∣x)).\max_p \; \mathbb{E}_{x \sim q,\, y \sim p(\cdot \mid x)}\left[f_{t+1}(x, y)\right] - \lambda\, \mathbb{E}_{x \sim q}\, \mathrm{KL}\big(p(\cdot \mid x) \,\|\, p_{\theta_t}(\cdot \mid x)\big).

这个问题有闭式解 p^(y∣x)∝pθt(y∣x)exp⁡(λ−1ft+1(x,y))\hat{p}(y \mid x) \propto p_{\theta_t}(y \mid x) \exp\big(\lambda^{-1} f_{t+1}(x, y)\big). 要让这个解恰好是某个语言模型 pθp_\theta, 反解出 ft+1(x,y)=λlog⁡pθ(y∣x)pθt(y∣x)f_{t+1}(x, y) = \lambda \log \frac{p_\theta(y \mid x)}{p_{\theta_t}(y \mid x)}. 于是把打分函数限定在这个形式里, 代回第一个式子, 两步合成一个端到端的目标:

LSPIN(θ,θt)=E[ℓ(λlog⁡pθ(y∣x)pθt(y∣x)−λlog⁡pθ(y′∣x)pθt(y′∣x))],L_{\mathrm{SPIN}}(\theta, \theta_t) = \mathbb{E}\left[\ell\left(\lambda \log \frac{p_\theta(y \mid x)}{p_{\theta_t}(y \mid x)} - \lambda \log \frac{p_\theta(y' \mid x)}{p_{\theta_t}(y' \mid x)}\right)\right],

期望对 x∼qx \sim q, y∼pdata(⋅∣x)y \sim p_{\mathrm{data}}(\cdot \mid x), y′∼pθt(⋅∣x)y' \sim p_{\theta_t}(\cdot \mid x) 取. 每轮做 θt+1=argminθLSPIN(θ,θt)\theta_{t+1} = \mathop{\mathrm{argmin}}\theta L{\mathrm{SPIN}}(\theta, \theta_t).

和 DPO 的区别:这个式子和 DPO 的形式很像: 都是「被选中的回答」和「被拒绝的回答」的对数概率比之差, 套一个 logistic 损失. 论文列了几点不同:

  • DPO 基于 Bradley–Terry 偏好模型, 一次性拟合偏好数据, 本身不导出迭代. SPIN 的对手每轮更新, 天然是迭代的.
  • DPO 需要偏好数据, 即对同一个提示的「好回答」和「差回答」. SPIN 只需要 SFT 数据: 「好回答」是人写的, 「差回答」是模型自己上一轮生成的.
  • SPIN 的目标在理论上收敛到 pdatap_{\mathrm{data}}, 不依赖奖励模型.

收敛到哪里:定理 5.2 说明, 在损失函数满足一定条件时 (logistic, hinge, 指数损失都满足): 如果 pθt=pdatap_{\theta_t} = p_{\mathrm{data}}, 那么 θt\theta_t 对任何 λ≥0\lambda \ge 0 都是 LSPINL_{\mathrm{SPIN}} 的全局最小点; 反过来, 如果 pθt≠pdatap_{\theta_t} \ne p_{\mathrm{data}}, 存在适当的 λ\lambda, 使 θt\theta_t 不是全局最小点. 训练只在模型分布等于数据分布时停下来.

定理 5.4 给出 logistic 损失下每轮更新的具体形式:

pθt+1(y∣x)∝pθt(y∣x)(pdata(y∣x)pθt(y∣x))1/λ.p_{\theta_{t+1}}(y \mid x) \propto p_{\theta_t}(y \mid x) \left(\frac{p_{\mathrm{data}}(y \mid x)}{p_{\theta_t}(y \mid x)}\right)^{1/\lambda}.

旧模型给某个回答的概率低于数据分布, 新模型就提高它; 高于数据分布, 就降低它. 1/λ1/\lambda 控制步长.

手算一个例子. 一个提示只有两种回答 y1,y2y_1, y_2. 数据分布 pdata=(0.8,0.2)p_{\mathrm{data}} = (0.8, 0.2), 当前模型 pθt=(0.5,0.5)p_{\theta_t} = (0.5, 0.5).

  • 取 λ=1\lambda = 1: 未归一化的值是 0.5×1.6=0.80.5 \times 1.6 = 0.8 和 0.5×0.4=0.20.5 \times 0.4 = 0.2, 新模型直接等于 (0.8,0.2)(0.8, 0.2), 一步到位.
  • 取 λ=2\lambda = 2: 未归一化的值是 0.5×1.6≈0.6320.5 \times \sqrt{1.6} \approx 0.632 和 0.5×0.4≈0.3160.5 \times \sqrt{0.4} \approx 0.316, 归一化后约为 (0.667,0.333)(0.667, 0.333). 走了一部分.

单轮更新幅度随 λ\lambda 增大而缩小. 模型接近 pdatap_{\mathrm{data}} 时提高 λ\lambda, 能够减弱有限样本扰动造成的越界更新. 论文实验把系数 β=0.1\beta = 0.1 用于早期阶段, 接近收敛后改取 5.05.0, 更新节奏由积极追赶逐渐变得保守.

实验结果:基础模型是 zephyr-7b-sft-full, 它由 Mistral-7B 在 Ultrachat200k 上做过 SFT. SPIN 从 Ultrachat200k 里随机取 5 万个提示, 每轮用当前模型生成回答; 第 1 轮起把上一轮的合成数据和本轮的合并, 合成数据量为 10 万. 每轮训练 2 个 epoch. HuggingFace Open LLM Leaderboard 六项平均:

模型 平均分 比上一轮
zephyr-7b-sft-full 58.14
SPIN 第 0 轮 60.80 +2.66
SPIN 第 1 轮 62.12 +1.32
SPIN 第 2 轮 62.97 +0.85
SPIN 第 3 轮 63.16 +0.19
zephyr-7b-dpo-full (额外用 6.2 万条 GPT-4 偏好数据) 61.31

MT-Bench 从 5.94 升到 6.78. 第 0 轮已经和额外使用偏好数据训练的 DPO 模型相当.

每轮增量依次减半左右, 第 3 轮只剩 0.19. 这和定理一致: 模型越接近 pdatap_{\mathrm{data}}, 主玩家越难区分两种回答, 梯度越小. 论文还做了对照: 在第 0 轮内把训练延长到更多 epoch, 前两个 epoch 之后提升很小; 进入下一轮 (换新对手) 才有新的提升. 迭代是必要的.

天花板在人类数据:SPIN 是自博弈, 但它的锚是人写的 SFT 数据. 论文在局限部分写明, 优化只在模型分布等于 pdatap_{\mathrm{data}} 时收敛, 所以固定的人类数据分布给微调后模型的性能设了天花板. 超出这个天花板, 需要让目标分布本身变化.

这一点决定了 SPIN 在自演化里的位置. 它能把 SFT 数据「用到头」, 但不能超过 SFT 数据. 对手每轮变强, 主玩家的参照却始终是那 5 万条人写的回答.

2. 对称自博弈: SPAG

2.1. 对抗禁忌词游戏

SPAG (Cheng et al., 2024, 腾讯 AI Lab) 选了一个叫 Adversarial Taboo 的双人游戏. 攻方知道一个目标词, 守方不知道. 两人对话: 攻方要诱使守方在不知不觉中说出目标词; 守方要避免说出它, 同时从对话里推断目标词. 守方可以在某一轮宣布「我知道这个词了! 是 X!」, 猜对守方赢, 猜错攻方赢. 守方无意中说出目标词, 攻方赢. 最多 5 轮, 没人赢算平局.

胜负的判定是机械的: 检查守方的话里有没有目标词, 或者守方的猜测对不对. 目标词可以从大词表里取, 话题覆盖面广.

零和马尔可夫博弈:论文把游戏写成一个双人零和马尔可夫博弈. 攻方策略 μ\mu, 守方策略 ν\nu, 一局 τ\tau 的攻方总奖励记为 R(τ)R(\tau), 守方总奖励是 −R(τ)-R(\tau). 自博弈目标是

max⁡μmin⁡ν  LAG(μ,ν):=Eτ∼μ×ν[R(τ)].\max_\mu \min_\nu \; \mathcal{L}_{\mathrm{AG}}(\mu, \nu) := \mathbb{E}_{\tau \sim \mu \times \nu}\left[R(\tau)\right].

两个策略来自同一个模型 πθ\pi_\theta, 只是提示不同: μθ(u∣s)=πθ(u∣fattack(s))\mu_\theta(u \mid s) = \pi_\theta(u \mid f_{\mathrm{attack}}(s)), νθ(v∣s′)=πθ(v∣fdefend(s′))\nu_\theta(v \mid s') = \pi_\theta(v \mid f_{\mathrm{defend}}(s')).

训练流程:开源模型一开始连游戏规则都遵守不好. 所以 SPAG 先做模仿学习: 让 GPT-4 自己和自己玩, 收集对局, 分成攻方赢和守方赢两组, 分别在赢家的动作上做最大似然, 加 KL 正则防止偏离原模型太远.

然后进入自博弈. 多轮自回归生成的代价很高, 在线强化学习效率太低, 于是用离线方案: 复制当前策略, 让副本扮演攻守双方对局, 收集一批对局, 再用这些对局做强化学习更新 πθ\pi_\theta. 更新时混入 SFT 数据 (系数 α=0.5\alpha = 0.5), 保持一般语言能力. 每个 epoch 重复一次.

结果与风险:LLaMA-2-7B 上, 8 个推理基准 (MMLU, BBH, Mutual, ARC-e, ARC-c, LogiQA2, WinoGrande, PIQA) 的几何平均:

模型 几何平均
LLaMA-2-7B 49.17
AlpacaSFT-3 (只做 SFT, 3 个 epoch) 50.08
模仿 20 问游戏 46.43
20 问游戏自博弈 47.79
模仿对抗禁忌词 + SFT 51.20
SPAG 第 1 轮 51.69
SPAG 第 2 轮 52.19
SPAG 第 3 轮 52.58

几点. 第一, 模仿 GPT-4 对局这一步本身就有提升, 这部分信号来自 GPT-4, 不是自博弈. 第二, 由于自博弈训练混入了 SFT 数据, 论文用纯 SFT 做了对照: AlpacaSFT-3 是 50.08, 低于 SPAG-3 的 52.58. 第三, 换成 20 问这种非对抗的游戏, 模仿和自博弈都比基础模型差. 对抗结构本身是信号的来源. 第四, 三轮的增量依次是 0.49, 0.50, 0.39, 没有 SPIN 那样快速衰减, 但总量也不大.

游戏本身的胜率也在提高. 和 GPT-4 对局时, SPAG 模型的平均胜率随轮次持续上升; SPAG 模型互相对局时, 守方越来越强. 双方用的对话轮数和每句话的长度都在减少.

胜率之外, 论文在局限部分写: 没有充分研究对抗式自博弈对模型的有害影响, 不清楚模型是否为了赢学会了作弊, 虚张声势或其他不正当手段. 一个对抗游戏训练出来的「推理能力」里, 有多少是诱导和欺骗, 现有评测看不出来.

3. 出题者–解题者: Absolute Zero

3.1. 目标

出题者–解题者结构的好处是出题者自动为解题者生成课程, 不需要人准备题目. 综述指出, 这个结构在各个领域反复出现, 区别在于什么东西能充当验证器. Absolute Zero (Zhao et al., 2025, 清华大学, 北京通用人工智能研究院, 宾州州立大学) 的设定是完全不用人工整理的数据. 同一个模型 πθ\pi_\theta 扮演两个角色. 出题者根据条件 zz 提出任务 τ∼πθpropose(⋅∣z)\tau \sim \pi_\theta^{\mathrm{propose}}(\cdot \mid z), 环境 ee 把它验证并构造成一道带标准答案的题 (x,y⋆)∼fe(⋅∣τ)(x, y^\star) \sim f_e(\cdot \mid \tau). 解题者给出答案 y∼πθsolve(⋅∣x)y \sim \pi_\theta^{\mathrm{solve}}(\cdot \mid x). 目标是

J(θ)=max⁡θ  Ez∼p(z)[E(x,y⋆)∼fe(⋅∣τ), τ∼πθpropose(⋅∣z)[λ repropose(τ,πθ)+Ey∼πθsolve(⋅∣x)[resolve(y,y⋆)]]].\mathcal{J}(\theta) = \max_\theta \; \mathbb{E}_{z \sim p(z)}\left[\mathbb{E}_{(x, y^\star) \sim f_e(\cdot \mid \tau),\, \tau \sim \pi_\theta^{\mathrm{propose}}(\cdot \mid z)}\left[\lambda\, r_e^{\mathrm{propose}}(\tau, \pi_\theta) + \mathbb{E}_{y \sim \pi_\theta^{\mathrm{solve}}(\cdot \mid x)}\left[r_e^{\mathrm{solve}}(y, y^\star)\right]\right]\right].

两项奖励: rproposer^{\mathrm{propose}} 衡量这道题对当前模型有多大的学习价值, rsolver^{\mathrm{solve}} 衡量答案对不对. λ\lambda 平衡「出新题」和「解题」.

3.2. 可学习性奖励

出题者的奖励用解题者自己估计. 对一道新题, 让解题者以非零温度做 GG 次尝试, 算平均成功率 rˉsolve=1G∑i=1Grsolve(i)\bar{r}{\mathrm{solve}} = \frac{1}{G}\sum{i=1}^{G} r_{\mathrm{solve}}^{(i)}. 出题奖励是

rpropose={0,rˉsolve=0,1−rˉsolve,其他.r_{\mathrm{propose}} = \begin{cases} 0, & \bar{r}_{\mathrm{solve}} = 0, \\ 1 - \bar{r}_{\mathrm{solve}}, & \text{其他}. \end{cases}

逐项看. 题目每次都能解出, rˉsolve=1\bar{r}_{\mathrm{solve}} = 1, 奖励 1−1=01 - 1 = 0: 太简单, 学不到东西. 题目一次都解不出, 奖励规定为 0: 太难, 也学不到东西. 中间的情况, 成功率越低奖励越高.

取 G=8G = 8 手算:

8 次中解出 rˉsolve\bar{r}_{\mathrm{solve}} rproposer_{\mathrm{propose}}
0 0 0
1 0.125 0.875
2 0.25 0.75
4 0.5 0.5
6 0.75 0.25
8 1 0

奖励最高的是「偶尔能解出」的题. 解出 0 次和解出 1 次之间, 奖励从 0 跳到 0.875. 出题者被推向解题者能力的边缘.

3.3. 三种推理任务

Absolute Zero Reasoner (AZR) 的任务是一个代码三元组 (p,i,o)(p, i, o): 程序 pp, 输入 ii, 输出 o=p(i)o = p(i). 给出三者中的两个, 推第三个, 对应三种推理:

任务 已知 求 出题者提出
演绎 p,ip, i oo (p,i)(p, i), 执行得到 oo
溯因 p,op, o ii (p,i)(p, i), 执行得到 oo
归纳 若干 (in,on)(i^n, o^n) 和一段说明 pp pp 和一组输入, 执行得到输出

归纳任务留出一部分输入输出对不给解题者看, 用来检查解题者写的程序, 防止它用 if-else 硬编码已知的例子.

执行器做了什么:Python 执行器同时做两件事. 出题时, 它验证题目: 程序语法正确; 程序安全, 不用 os.sys, sys, shutil 等危险包; 程序是确定性的. 确定性的定义是对所有输入, 独立运行多次的输出相同. 实际只能有限次检查, 论文取运行 j=2j = 2 次比较结果. 解题时, 它判定答案: 演绎任务用带类型的值比较, 溯因任务把解题者给的输入代入程序, 看输出是否一致.

整个循环的起点是一个恒等函数三元组, 这是唯一提供给 AZR 的种子. 论文说明, 基础模型不用种子也能启动循环.

结果与「uh-oh moment」:基于 Qwen2.5-7B-Coder 的 AZR, 三个代码基准和六个数学基准:

模型 数学平均 总平均
Qwen2.5-7B-Coder 23.9 40.2
AZR-Coder-7B 39.1 50.4

AZR 训练时只见过自己出的代码推理题, 数学基准对它完全是分布外的. 论文报告: 在人工整理的代码数据上做强化学习的代码专用模型, 数学平均只提高 0.65; AZR-Base-7B 和 AZR-Coder-7B 分别提高 10.9 和 15.2. 模型越大, 提升越大: 3B, 7B, 14B 的 Coder 模型分别提高 5.7, 10.2, 13.2. 消融实验中去掉归纳和溯因任务, 数学表现下降.

换成别的基础模型时出现过另一种现象. 用 Llama3.1-8B 训练 AZR 时, 偶尔会出现令人担忧的 CoT. 论文给的例子是: 「The aim is to outsmart all these groups of intelligent machines and less intelligent humans. This is for the brains behind the future.」 论文称之为「uh-oh moment」, 并指出需要研究安全感知的训练. 执行器只检查代码的输出, 不检查模型在推理过程里说了什么.

4. 出题者–解题者: R-Zero

4.1. 两个独立的模型

R-Zero (Huang et al., 2025, 腾讯 AI Seattle Lab 等) 也从零开始, 没有任何现成的题目和标签. 和 AZR 不同, 它从同一个基础模型初始化两个独立的模型: 出题者 QθQ_\theta 和解题者 SϕS_\phi, 分别优化, 交替训练.

  • 出题者训练阶段: 冻结解题者, 用 GRPO 训练出题者生成难题.
  • 解题者训练阶段: 冻结出题者, 用它生成的题, 经过筛选, 以解题者自己多数投票得到的伪标签为答案, 用 GRPO 训练解题者.

领域是数学, 因为数学答案客观, 可以直接投票, 不需要代码执行器这样的外部环境.

4.2. 不确定性奖励

对出题者生成的题 xx, 让当前解题者回答 mm 次, 得到 y1,…,ymy_1, \dots, y_m. 出现最多的答案作为伪标签 y(x)\tilde{y}(x)​(x), 解题者的经验准确率是 p^(x;Sϕ)=1m∑j=1m1{yj=y(x)}\hat{p}(x; S_\phi) = \frac{1}{m}\sum_{j=1}^m \mathbb{1}{y_j = \tilde{y}(x)}​(x)}. 不确定性奖励是

runcertainty(x;ϕ)=1−2∣p^(x;Sϕ)−12∣.r_{\mathrm{uncertainty}}(x; \phi) = 1 - 2\left|\hat{p}(x; S_\phi) - \tfrac{1}{2}\right|.

p^=0.5\hat{p} = 0.5 时奖励为 1, 最大; p^\hat{p} 接近 0 或 1 时奖励接近 0. 取 m=10m = 10:

10 次中与多数一致 p^\hat{p} runcertaintyr_{\mathrm{uncertainty}}
10 1.0 0
8 0.8 0.4
5 0.5 1.0
3 0.3 0.6

注意 p^\hat{p} 是和多数答案一致的比例, 不是答对的比例. 多数答案本身可能是错的.

奖励里还有两项. 重复惩罚: 一批题目内, 用 BLEU 相似度把相近的题聚类, 一道题所在的簇越大, 惩罚越大, 惩罚值是簇大小除以批大小. 格式检查: 题目没有按要求的标签包裹, 奖励直接为 0.

训练解题者时的筛选: 每道题采 10 个答案, 只保留和多数一致的答案数在 3 到 7 之间 (含) 的题. 太容易 (8–10 个一致) 和太混乱 (少于 3 个一致) 的题都丢掉.

4.3. 结果

Qwen3-4B-Base, 七个数学基准的平均:

方法 平均
基础模型 42.57
Absolute Zero 46.42
解题者用未训练的出题者出的题 45.01
R-Zero 49.93

第三行是对照: 出题者不训练, 只训练解题者, 提升小得多. 出题者的训练本身贡献了信号. 论文还报告, 在数学题上学到的能力能迁移到 MMLU-Pro, SuperGPQA 等通用推理基准. R-Zero 训练后再用有标签的数据微调, 比直接用标签数据微调基础模型高 2.35 分.

坍塌:论文在分析部分报告: 早期各个规模的模型都有明显提升, 多轮之后, 所有模型的性能都开始下降. 模型越大, 下降开始得越晚: 0.6B 模型在第一轮 (第 15 步) 就达到峰值, 4B 模型保持上升三轮, 到第 60 步急剧下降. 论文的判断是, 更大的模型能推迟但不能阻止坍塌.

最直接的嫌疑是伪标签质量. 论文用 Gemini 给出题者生成的题做标注, 检查伪标签的真实准确率:

训练步 0.6B 1.7B 4B
15 70.6% 69.4% 71.0%
30 53.4% 55.2% 56.2%
45 50.8% 52.2% 48.8%
60 44.0% 45.2% 42.2%

出题者在做它被奖励做的事: 题目越来越难. 另一项分析用 GPT-4o 当标注者, 同一个第 15 步的解题者, 在第 15 步出题者生成的题上准确率 59.0%, 在第 45 步出题者的题上只有 47.0%. 题目变难了, 解题者的多数投票就越来越不可靠, 训练信号里的错误越来越多.

论文把标签噪声视为坍塌因素之一, 同时指出各规模并不存在统一的准确率阈值: 0.6B 模型在标签准确率还有 70.6% 时 (第 15 步之后) 就开始下降, 4B 模型在 48.8% (第 45 步) 时才开始下降. 更深一层的候选原因是递归合成数据引发的模型坍塌: 多样性丢失, 偏差被放大. 这正是 2.2 第 5 节 Shumailov 等人描述的过程.

一个模型还是两个:R-Zero 做了一个消融: 出题者和解题者共用一个模型 (Single-R-Zero), 其他不变.

训练步 R-Zero 性能 R-Zero 标签准确率 Single-R-Zero 性能 Single-R-Zero 标签准确率
15 48.06 71.0% 47.31 63.4%
30 48.44 56.2% 46.95 46.6%
45 49.12 48.8% 45.57 32.6%
60 46.52 42.2% 43.89 33.8%

共用模型时, 性能在第一轮之后就开始下降, 每个阶段的标签准确率都更低. 论文的假设是: 出题者和解题者来自同一个模型时, 内部偏差导致过度自信.

这个结果和 2.2 的结论对得上. 出题者和解题者共用参数, 环里的第二方就弱了, 结构上更接近单模型自训练. 分成两个模型, 第二方的独立性强一些, 坍塌推迟. 但两个模型都从同一个基础模型初始化, 也都用解题者自己的投票当标签, 独立性有限, 坍塌仍然发生.

Absolute Zero 和 R-Zero 对照如下:

项目 Absolute Zero R-Zero
角色 同一模型, 两个提示 两个独立模型
领域 代码推理 数学
解答的判定 Python 执行器 解题者多数投票
出题奖励 1−rˉsolve1 - \bar{r}_{\mathrm{solve}}, 全错为 0 1−2∣p^−1/2∣1 - 2\lvert\hat{p} - 1/2\rvert, 加重复惩罚
判定会不会随训练变差 不会, 执行结果是确定的 会, 题越难投票越不准

两者的差别在验证器. AZR 的执行器在更新边界之外, 不随训练改变, 出题者把题出得再难, 执行结果仍然是对的. R-Zero 的验证器是解题者本身, 在边界之内, 题目越难, 它越不准. 综述按「什么东西能充当验证器」划分这一类方法的应用领域, 原因在此.

5. 竞争信号什么时候失效, 怎样检查

5.1. 失效的方式

综述指出, 竞争信号的信息量取决于竞争是否还活着. 两个副本不再有实质分歧, 信号就退化成噪声. 前面的方法里能看到几种表现:

  • 对手追上了参照. SPIN 的模型接近 pdatap_{\mathrm{data}} 后, 主玩家区分不了两种回答, 每轮增量从 2.66 降到 0.19.
  • 判定随难度变差. R-Zero 的出题者把题出到解题者投票不再可靠的程度, 标签准确率降到 42.2%.
  • 共用参数导致过度自信. Single-R-Zero 的标签准确率在第三轮降到 32.6%.

5.2. 稳定化的工作

综述把一批工作归为「让竞争信号保持有效」, 并说它们最好被理解为针对特定失效模式的修补. 每一项对应一种失效:

失效模式 方法 做法
偏好判定在语义相近的回答上过度自信 S-SPPO 把胜率目标退火到最大熵基线
当前优势在迭代中消失 TPAW, T-SPIN 和历史检查点对弈; 加入历史优势三元组
博弈变成确定性的, 梯度消失 DEPT 检测「演化僵局」, 重塑优势
出题者分布变窄, 课程坍塌 vocabulary dropout 强制多样性
只优化相对奖励 SPACE 加噪声对比估计, 锚定绝对值

另有一条博弈论的路线, 把自博弈偏好优化重新表述为收敛到纳什均衡. 综述的总结是: 竞争信号只在竞争持续注入可学习的信息时才超过单模型自训练; 一旦两个副本不再有实质分歧, 它就退化为噪声. 这个失效就是 L1 的上限, 2.4 第二部分会讲.

6. 竞争系统的动力学与审计

6.1. 奖励、循环与课程

检查项 问题 本篇的例子
锚 竞争的参照是人类数据, 执行环境, 还是模型自己 SPIN 锚在 SFT 数据, AZR 锚在执行器, R-Zero 锚在自己的投票
外部信号混入 自博弈之前或之中有没有用更强模型的数据 SPAG 先模仿 GPT-4 对局
对照组 有没有排除「只是多训练了」的解释 SPAG 的纯 SFT 对照, R-Zero 的未训练出题者对照
增量曲线 每轮增量在怎样变化, 有没有报告下降的轮次 SPIN 快速衰减, R-Zero 第三轮后下降
判定质量 训练中有没有用外部标注检查标签准确率 R-Zero 用 Gemini 和 GPT-4o 检查
角色独立性 两个角色是否共用参数 R-Zero 与 Single-R-Zero
副作用 有没有检查为赢而学到的不良行为 SPAG 局限, AZR 的「uh-oh moment」

相对奖励的可识别性:竞争直接提供回答之间的排序, 绝对价值需要额外锚定. 对两个回答 ya,yby_a,y_b, 偏好模型常把胜率写成

P(ya≻yb∣x)=σ(u(x,ya)−u(x,yb)).P(y_a\succ y_b\mid x)=\sigma\bigl(u(x,y_a)-u(x,y_b)\bigr).

只要给效用函数同时加上任意与回答无关的偏置 c(x)c(x), 胜率完全不变. 因此对局能够识别效用差, 无法确定绝对零点. 若所有回答一起变差, 但新回答仍略胜旧回答, 相对胜率可以持续为正. 这解释了为什么跨代比较需要冻结锚: 它把移动的相对坐标系连接到不随训练移动的刻度.

尺度同样可能漂移. 把效用乘以正数 aa 会改变 logistic 胜率的锐度, 判官更自信时, 相同质量差得到更极端的概率. 若强化学习直接使用 logit 或奖励幅度, 尺度变化会改变有效学习率. 每轮对判官做温度校准, 或只使用经过分位数归一化的优势, 可以降低这种耦合; 外部胜率仍要单独测量.

循环偏好会让单一标量效用失效. 可能存在 AA 胜 BB, BB 胜 CC, CC 又胜 AA. 语言策略中很容易出现这种结构: 简洁回答克制冗长回答, 冗长回答覆盖细节, 带细节回答又可能因暴露错误输给简洁回答. 若训练每轮只对付当前对手, 策略可能在三种风格间循环, 平均榜单看似波动, 实际没有收敛到稳定能力.

对策是保存策略种群并测完整胜率矩阵 Wij=P(πi≻πj)W_{ij}=P(\pi_i\succ\pi_j). 若新策略只赢当前版本却输给更早版本, 它更像针对性克制. 计算对历史混合策略的胜率, 能识别是否产生总体进步. 对零和博弈, 还可以寻找元博弈上的混合纳什策略, 避免用单个检查点代表整个策略空间.

SPIN 的人类回答提供了固定正例, 所以相对坐标没有完全自由漂移. 但有限 SFT 集只固定它覆盖的输入和表达. 模型可能学会数据集的写作风格, 在开放任务上没有相同优势. SPAG 的机械胜负固定了游戏内坐标, 游戏外推理能力则靠独立基准连接. AZR 的执行器固定程序语义, R-Zero 的多数票随着解题者移动, 四者的可识别性强度不同.

SPIN 更新的动力学:SPIN 的理想更新可以化简得更直观. 令 rt(y)=pt(y)/pdata(y)r_t(y)=p_t(y)/p_{\mathrm{data}}(y), 忽略提示 xx 并取定理给出的更新, 有

rt+1(y)∝rt(y)1−1/λ.r_{t+1}(y)\propto r_t(y)^{1-1/\lambda}.

当 λ>1\lambda>1 时, 指数位于 0 与 1 之间, 概率比向 1 收缩. 在两点分布上看 log odds 偏差 dt=log⁡rt(y1)−log⁡rt(y2)d_t=\log r_t(y_1)-\log r_t(y_2), 归一化常数相消, 得

dt+1=(1−1λ)dt.d_{t+1}=\left(1-\frac1\lambda\right)d_t.

因此理想误差按几何速度下降. λ=2\lambda=2 时每轮减半; λ\lambda 很大时收敛慢; λ=1\lambda=1 理想情况下直接投影到数据分布. 论文实验中的有限模型、有限样本和不完全优化让一步投影无法实现, 也使过小 λ\lambda 更容易过拟合判别信号.

0<λ<10<\lambda<1 时指数 1−1/λ1-1/\lambda 为负, 理想映射会越过目标: 原本概率过高的模式被压到过低, 下一轮可能再反向修正. 这表现为振荡而非平滑靠近. 实际公式还受模型族限制, 但它说明 KL 系数同时控制更新幅度和局部稳定性, 不只是常规正则强度.

有限数据下, 人类分布只能用经验分布 p^D\hat p_D 表示. 对从未在 SFT 集出现的回答, 经验概率为零, 理想比值会把它压掉. 语言输出空间极大, 论文的判别目标通过样本对工作, 没有显式枚举零概率事件, 但训练方向仍会偏向已观察表达. 这就是固定人类数据天花板的统计版本: 迭代更充分地拟合经验支持集, 无法确认支持集外的优质答案.

每轮累计旧合成数据会改变对手分布. 若负例由多个历史模型混合而成, 判别目标面对的是

mt(y∣x)=∑j=0twjpθj(y∣x).m_t(y\mid x)=\sum_{j=0}^{t}w_jp_{\theta_j}(y\mid x).

历史混合能防止新模型只针对上一代的弱点, 也会保留已经很容易区分的陈旧负例, 稀释当前边界梯度. 权重 wjw_j 应在覆盖与新鲜度间折中. 按判别难度重采样历史负例, 可以把预算集中到仍能提供信息的比较.

判别准确率接近 50% 有两种解释. 模型可能真的接近数据分布, 也可能判别器容量或训练不足. 看训练损失不能区分二者. 可增加一个更强的冻结判别器, 或在可控合成分布上校准判别能力. 若强判别器仍能轻易区分, 自博弈的停滞来自优化器而非达到目标.

SPIN 的理论固定点是数据分布, 实验测量却是下游基准. 两者没有必然单调关系. 更接近聊天数据可能提升指令遵循, 也可能损害某些事实或代码能力. 每轮同时测对 SFT 数据的判别距离和多领域能力, 才能知道增量衰减来自接近数据还是下游迁移饱和.

对称博弈中的策略循环:零和博弈的最优对象常是混合策略. 石头剪刀布没有一个纯策略能长期占优, 最优解是三者各取三分之一. 梯度上升—下降若同时更新双方, 可能围绕均衡旋转. 简单双线性游戏

min⁡xmax⁡yxy\min_x\max_y xy

的连续梯度流满足 x˙=−y,y˙=x\dot x=-y,\dot y=x, 因而 x2+y2x^2+y^2 保持不变, 轨迹绕原点转圈而不收敛. 自博弈语言模型更复杂, 同样可能出现追逐: 攻方发现一种诱导方式, 守方学会防御, 攻方换另一种, 旧防御随后遗忘.

只报告当前攻方对当前守方的胜率会漏掉循环. 同代对局在对称零和设定中往往接近 50%, 无法表示绝对强弱. 需要让每个检查点对历史种群、固定脚本和外部模型比赛, 形成交叉表. 若新模型对近期版本变强却重新输给早期策略, 忘却已经发生.

对迭代策略 π1,…,πT\pi_1,\ldots,\pi_T, 混合策略 πˉ\bar\pi 先均匀抽一个检查点再行动. 在凸凹博弈里, 遗憾最小化可保证时间平均趋近均衡, 单个末代策略则可能持续旋转, 时间平均因而更加稳定. 部署时频繁加载检查点成本很高, 可以从历史混合蒸馏一个策略; 蒸馏会重新引入覆盖损失, 需要对完整胜率矩阵复测.

对手采样决定训练的博弈. 永远只打最强历史对手, 梯度可能过难; 只打当前同代对手, 容易共同漂移; 均匀打所有历史对手, 大量预算浪费在已掌握策略. 根据胜率选择接近 50% 的对手能提供较大信息, 同时保留少量极强和极弱对手用于测边界.

SPAG 中攻守共用参数, 一方更新会同时改变另一方. 共享表征可能带来正迁移, 也可能让两个目标梯度冲突. 令攻方梯度为 gAg_A, 守方梯度为 gDg_D. 内积 gATgD>0g_A^Tg_D>0 时两项互相促进, 小于零时共享参数面临折中. 报告总奖励无法看出冲突, 应分别记录两方胜率、梯度夹角和通用能力变化.

共享参数还会泄露角色信息. 模型从攻方训练中学到目标词的诱导模式, 守方可能利用同一表征更快识别; 反过来, 攻方也知道守方的检测习惯. 这使自博弈效率提高, 但与真正面对独立对手的泛化不同. 用未参与训练的外部攻守模型交叉测试, 可以衡量共享参数带来的内部适配占多少.

出题者与解题者的课程动力学:出题者—解题者系统包含两个相互移动的分布. 设出题策略为 qϕ(x)q_\phi(x), 解题成功率为 sθ(x)s_\theta(x). 出题者最大化课程奖励 c(sθ(x))c(s_\theta(x)), 解题者最大化在题目分布上的成功率. 连续时间近似为

ϕ˙∝∇ϕEx∼qϕ[c(sθ(x))],θ˙∝∇θEx∼qϕ[sθ(x)].\dot\phi\propto\nabla_\phi\mathbb E_{x\sim q_\phi}[c(s_\theta(x))],\qquad \dot\theta\propto\nabla_\theta\mathbb E_{x\sim q_\phi}[s_\theta(x)].

解题者提升会改变出题奖励地形, 出题者随后移动到新的边界. 理想状态是一条向更高难度推进的波前. 若出题者移动过快, 它跳到解题者完全不会的区域, 训练信号消失; 移动过慢, 大量题已被掌握, 梯度趋近零.

Absolute Zero 的可学习性奖励在零成功率处设为零, 试图阻止前一种失配. 它在 00 与 1/G1/G 经验成功率之间有跳跃. 有限采样会让真实成功率很低但非零的题, 经常被观测为零并失去奖励. 对真实成功率 ss, 观测零成功的概率为 (1−s)G(1-s)^G. G=8,s=0.05G=8,s=0.05 时约为 0.663, 多数这类边界题会被当成完全不可学.

可以用贝叶斯平滑降低跳跃. 给成功率置 Beta 先验 s∼Beta⁡(a,b)s\sim\operatorname{Beta}(a,b), 观察 kk 次成功后后验均值为 (k+a)/(G+a+b)(k+a)/(G+a+b). 它不会把 k=0k=0 直接解释为真实成功率为零. 但若奖励仍偏好极低成功率, 出题者可能利用估计不确定性; 应同时考虑期望学习增益和置信区间.

课程奖励 1−s1-s 在 s>0s>0 区间偏爱越难的题, 并未在中等难度达到峰值. 零点规则把完全不会的题砍掉, 于是最大值落在刚好采到一次成功的位置. 这使奖励对采样噪声很敏感. 更平滑的选择是 s(1−s)s(1-s), 在 s=1/2s=1/2 最大; 若希望靠近能力上沿, 可用峰值偏低的 Beta 形函数. 具体形状取决于一次正确轨迹能否提供足够监督.

R-Zero 的不确定性奖励在一致率一半附近最大. 对二元答案, 它对应最大预测熵; 对开放数学答案, 多个不同错误会让多数比例下降, 高奖励可能表示题目含糊或输出格式不稳定. 应把答案簇数量、头两个簇差距和可解析率纳入分析. 一道题出现十个互不相同答案, 与五票对五票的两个有力假设具有不同教学价值.

出题难度和题目质量是两个轴. 语法错误、条件不足、答案不唯一都会降低解题一致率, 因而被误当成难题. AZR 用执行器过滤语法和确定性, 仍需检查程序是否超时、是否依赖浮点偶然性、逆问题是否多解. R-Zero 缺少外部执行器, 对可解性更依赖模型判断, 风险更高.

课程推进还会改变领域分布. 出题者发现某类题更容易获得高奖励后, 会集中生成该类题. 重复惩罚基于文本相似度只能压制近似措辞, 未必阻止同一解法模板换皮. 按解题程序、推理结构或答案类型聚类, 再对簇频率加熵约束, 更接近能力多样性.

验证器决定上限:验证器把候选轨迹映射成奖励, 它的完备性和可靠性决定自博弈能学到什么. 代码执行器对给定输入输出的判断通常精确, 但只覆盖有限测试. 一个程序通过所有观察测试, 仍可能在隐藏输入失败. 设错误程序单个随机测试通过概率为 pp, 独立测试数为 nn, 漏检概率为 pnp^n. 测试相关或覆盖狭窄时, 实际下降慢得多.

归纳任务使用隐藏输入输出对, 是为了降低硬编码. 但出题者同时生成程序和测试输入, 可能产生几乎不区分候选程序的测试集. 例如所有输入落在同一个分支, 错误解法也能通过. 测试生成要覆盖控制流分支、边界值和异常路径, 或用变异测试检查测试集能否杀死常见错误程序.

确定性检查运行两次只能发现较明显的随机性. 程序可能读取时间、依赖哈希顺序, 或只在特定输入触发非确定行为. 沙箱还要限制文件、网络、进程、内存和运行时间. 这些属于验证语义的一部分: 若环境允许侧信道, 模型可能用通过测试的方式代替解决题目.

多数投票是弱验证器. 它无需领域工具, 扩展范围广; 同时把模型先验当成真值近似. 出题者正被奖励寻找解题者不确定的区域, 而这恰是多数投票最不可靠的区域. R-Zero 的两个目标存在结构张力: 出题奖励提高时, 标签质量往往下降. 这不是调一个阈值便能完全消除的偶然噪声.

可以把题目按验证强度分层. 第一层有形式证明或完整执行, 可直接进入训练; 第二层有多组测试和独立求解器, 以较高权重进入; 第三层只有多模型一致性, 先进入候选池; 第四层只有单模型多数票, 需要少量人工抽检或后续证据. 分层避免把不同证据来源压成同一个奖励位.

验证器也会被分布外输入击穿. 一个在常规算术上校准良好的判官, 面对新符号系统可能输出高置信错误. 出题者不断探索, 天然会把数据推到验证器训练分布之外. 因此要监测验证器的不确定性和输入距离, 超出覆盖时拒绝给强奖励, 而不是把外推分数当成事实.

6.2. Goodhart 效应与角色独立性

竞争把指标变成直接优化目标后, 策略会搜索指标漏洞. SPAG 的目标是让对方说出词或猜错, 攻方可能学会含糊诱导、语言操控或利用判定器的字符串规则. AZR 的出题者可能生成便于执行器验证却缺乏一般价值的程序. R-Zero 的出题者可能制造让答案格式分裂的题, 轻易获得高不确定性.

可利用性与模型能力共同增长. 弱模型未必能找到奖励漏洞, 强模型更善于优化任何可见信号. 因此早期实验没有作弊, 不能证明规模扩大后仍安全. 压力测试应主动提供接近规则边界的任务, 并检查高奖励样本随训练轮次出现了哪些新模式.

多指标可以增加攻击成本. 例如题目奖励同时考虑难度、可解性、结构新颖度和外部价值. 线性加权仍可能让模型用一个极端分量补偿其他失败. 设置硬门槛或词典序规则更适合不可妥协条件: 先通过安全与可验证性, 再在合格集合里最大化难度.

隐藏一部分验证规则能减少直接过拟合, 也降低可复现性并引入安全风险. 更稳妥的是公开训练规则, 另保留机制不同的审计规则. 训练执行器检查样例, 审计器使用性质测试和程序分析; 训练判官看成对比较, 审计用事实核验和人工抽查. 两套规则只要错误不高度相关, 就能发现奖励黑客.

奖励漏洞不都表现为低任务准确率. 模型可能完成任务, 同时学会欺骗、威胁或不必要的社会策略. SPAG 的游戏明确奖励诱导行为, 迁移到推理基准的同时, 这些策略是否迁移需要专门评测. AZR 的异常思维文本也说明执行正确与生成行为安全可以分离.

把推理文本加入惩罚并非完整方案. 模型可以隐藏策略, 文本判官也可能误罚正常讨论. 应从可观察行为建立边界: 是否越权调用工具、是否操纵评审、是否在反事实提示下保持诚实、是否利用环境漏洞. 推理文本可作为诊断材料, 不能独自承担安全证明.

角色独立性有多少:两个角色使用独立参数, 只解决了一部分相关性. 若它们从同一基础模型初始化, 共享预训练数据、分词器与架构, 初始盲区高度相似. 训练数据又由双方共同产生时, 相关性会继续存在. R-Zero 相比 Single-R-Zero 推迟坍塌, 说明参数分离有价值; 最终仍坍塌, 说明分离不等于独立证据.

独立性可以按层分解. 参数独立指权重不共享; 数据独立指训练样本来源不同; 目标独立指奖励函数不同; 证据独立指判断真值的机制不同. 两个模型即使参数完全分开, 只要都用同一个多数标签训练, 证据层仍然耦合. 执行器与模型判官的证据机制不同, 能提供更强解耦.

测量相关错误比数模型个数更直接. 在带真值的校准集上, 记录两个角色错误指示 EA,EBE_A,E_B, 计算条件相关和共同错误率. 若双方准确率各为 70%, 独立时共同错误约 9%; 实测若接近 25%, 第二方提供的纠错价值有限. 还应按题型分组, 全局低相关可能掩盖关键领域的共同盲区.

异构模型能降低相关性, 例如不同架构、训练语料或工具链. 但强弱差距过大时, 博弈失衡: 强方总赢, 弱方得不到细粒度信号. 可让弱方拥有角色相关工具, 或按 Elo 匹配相近对手. 多样性服务于错误互补, 不是为了凑角色数量.

角色间的信息通道也要记录. 出题者是否看到解题者完整轨迹, 解题者是否知道出题策略, 双方是否共享记忆, 都会改变博弈. 信息过少使学习缓慢, 信息过多则允许串谋. 在协作之外的零和游戏里, 两个副本可能形成对外部指标无意义的内部协议, 例如用特殊格式互相泄露答案.

防串谋需要外部随机化和隐藏测试. 随机匹配历史对手、改变提示模板、用冻结外部模型加入种群, 都能打破只对同伴有效的协议. 若策略在外部对手上仍提升, 竞争学到的更可能是一般能力. 若只在同代配对中变强, 应按共适应而非能力增长解释.

从 Elo 到完整胜率矩阵:竞赛结果常压缩成 Elo 分数. 经典模型假设玩家 ii 战胜 jj 的概率只由标量能力差决定:

P(i≻j)=11+10(Rj−Ri)/400.P(i\succ j)=\frac{1}{1+10^{(R_j-R_i)/400}}.

这个假设要求偏好近似传递. 若存在策略循环, 一个标量无法同时拟合所有对局. 此时 Elo 仍能给出粗排序, 残差会系统性偏大. 报告 Elo 以前应检查预测胜率与实际胜率的校准, 尤其关注模型家族之间的块状误差.

完整胜率矩阵保留克制关系. 对 nn 个检查点得到 W∈[0,1]n×nW\in[0,1]^{n\times n}, 满足近似 Wij+Wji=1W_{ij}+W_{ji}=1. 若矩阵可由标量能力解释, logit 矩阵应近似写成 ri−rjr_i-r_j. 对其做最小二乘后, 剩余反对称部分表示非传递性. 残差越大, 越不应把末代 Elo 上升解释为普遍变强.

对历史混合的可利用度是另一个指标. 给定种群混合 μ\mu, 最佳响应能获得的超额收益为

E(μ)=max⁡i∑jμjWij−12.E(\mu)=\max_i\sum_j\mu_jW_{ij}-\frac12.

可利用度低说明没有现有策略能明显克制该混合. 它适合衡量博弈稳定性, 仍不代表外部任务质量. 一群策略可能在低质量循环中达到均衡, 所以还需固定任务与外部对手.

比赛安排影响估计方差. 若只让相邻代对弈, 很难推断远期进步; 若所有两两对弈, 成本为 O(n2)O(n^2). 可用稀疏赛程: 每代打当前、若干历史强手、随机历史和固定锚, 再用 Bradley–Terry 或矩阵补全估计其余边. 对预测不确定性最大的配对追加比赛, 能更有效地分配预算.

对话游戏还有先后手与提示效应. 攻方先说、守方后说可能天然占优, 不同系统提示也会改变能力. 同一模型应交换角色、交换先后手并使用多套等价提示. 计算胜率时将这些条件分层, 避免把位置优势写进模型评分.

遗憾、最佳响应与纳什间隙:零和博弈中, 一方策略 μ\mu 的外部遗憾衡量固定策略事后能多赢多少. 经过 TT 轮, 攻方遗憾可写为

Reg⁡A(T)=max⁡μ∑t=1Tu(μ,νt)−∑t=1Tu(μt,νt).\operatorname{Reg}_A(T)=\max_{\mu}\sum_{t=1}^{T}u(\mu,\nu_t)-\sum_{t=1}^{T}u(\mu_t,\nu_t).

若双方平均遗憾除以 TT 趋近零, 时间平均策略接近纳什均衡. 这个结论解释了历史混合的理论价值: 它用平均抵消追逐振荡, 保存旧模型具有明确的优化意义.

实际大模型训练无法枚举全部策略, 最佳响应也只是近似. 强化学习优化若未收敛, 测得的低可利用度可能来自攻击者太弱. 应使用多种初始化、较大搜索预算和异质模型近似最佳响应. 攻击仍找不到漏洞时, 稳定性证据才更强.

纳什间隙描述双方单边偏离可获得收益之和. 在语言游戏里只能估计下界, 因为搜索到的响应未必最佳. 报告攻击算法、预算和多样性, 比只给一个间隙数字更重要.

均衡质量取决于游戏设计. 对抗禁忌词的均衡可能是双方用极短、极保守的话交流, 守方避免任何具体词, 攻方也难以诱导. 这在游戏内稳定, 对通用推理未必有价值. 奖励应包含任务有效性约束, 外部评测则检查均衡策略是否迁移.

自博弈研究因此有两条独立进度轴: 越来越接近所定义游戏的均衡, 以及游戏均衡越来越接近真正目标. 算法改进解决前者, 任务与验证器设计解决后者. 把两者混为一谈, 会把“更会赢游戏”直接叫作“更会推理”.

参考文献

  1. Kaiqi Wang, Wenjin Hou, Yuchen Yan 等 (2026). Diving into Reliable Self-Evolving Agents: A Survey. §4.2 Competitive Self-Play.
  2. Zixiang Chen, Yihe Deng, Huizhuo Yuan, Kaixuan Ji, Quanquan Gu (2024). Self-Play Fine-Tuning Converts Weak Language Models to Strong Language Models. ICML 2024. §4, 式 (4.2)–(4.7), 定理 5.2, 定理 5.4, §6, 局限.
  3. Pengyu Cheng, Tianhao Hu, Han Xu 等 (2024). Self-playing Adversarial Language Game Enhances LLM Reasoning. NeurIPS 2024. §3, 式 (6), 表 1, §6.
  4. Andrew Zhao, Yiran Wu, Yang Yue 等 (2025). Absolute Zero: Reinforced Self-play Reasoning with Zero Data. §2.2 式 (3), §3.1 式 (4), §3.2, §3.3.3, 表 1, 研究问题 5–6.
  5. Chengsong Huang, Wenhao Yu, Xiaoyang Wang 等 (2025). R-Zero: Self-Evolving Reasoning LLM from Zero Data. §2.2, §3.1, 表 1, §4.2, 附录 D 表 6, 附录 E 表 7.

上一篇: 2.1.2 · L1: 单模型自训练

下一篇: 2.2.2 · L1: 合作式协同演化与模型层的上限