PPO 在大模型强化学习里常用一个 critic 估计状态价值、给策略更新降方差。上海交通大学、上海 AI Laboratory 等机构的联合团队最近发现,critic 存在一个此前未被命名的系统性失效模式,并给出一个改动量极小的修复。论文《Rethinking Critic Learning in PPO: Understanding and Mitigating Value Flattening》发布于 arXiv(2609.18708),登上 Hugging Face 日榜第三。

Value Flattening:critic 在「装平」

团队用多条蒙特卡洛(MC)续算估计一条推理响应中每个中间状态的真实价值,再对比 critic 预测:MC 价值剧烈起伏,critic 预测却近乎平线。团队将其命名为 Value Flattening。现象在受控的 FrozenLake 环境同样复现,且状态空间越大越明显——token 动辄上千的 LLM 推理因此格外严重。

病根有两层

  • 隐式方差惩罚:只有终局奖励、γ=λ=1 时,响应内所有状态共享同一个采样终局回报。对稠密 MSE 损失做代数分解,会分离出一项直接惩罚「响应内预测方差」——对 critic,把预测压平就是最小化损失的最省事解。
  • 冗余的邻近更新:LLM 相邻两个状态只差一个 token,共享几乎全部历史,表征与梯度高度相似;稠密 token 级监督等于把几乎同一个更新重复几百遍,信息没增加,方差惩罚的副作用却在累积。

SP³O:每条响应只监督 3 个状态

修复方案 SParse Proximal Policy Optimization(SP³O):actor 目标、rollout 流程、return 目标全部不变,只把 critic 损失从逐 token 稠密计算,改为每条响应只施加在少数几个分隔良好的状态上,3 个即可。消融显示:锚点固定在响应进度 30%/60%/90% 处平均 45.57%,优于随机放置的 36.59%(稠密 PPO 基线 37.60%);3-8 个监督点的稀疏配置优于更密变体,监督越密,结果越向稠密基线回落。

跑分(团队自报)

在 Qwen3-4B-Base 与 Qwen3-8B-Base 上(域内用 DAPO-Math-17k 训练,数学基准 32 次生成取平均):4B 七项数学基准平均 45.57%,高于 GRPO 的 39.26% 与 PPO 的 37.60%,AIME26 从 PPO 的 14.69% 提到 22.08%;8B 平均 50.51%,同样居首。泛化评测(ARC-C、MMLU-Pro、GPQA 等,4 次生成取平均)4B/8B 平均 59.28% 与 66.37%,均为三者最高。需要说明并非逐项全胜:8B 的 Minerva 一项 GRPO 为 52.06%、高于 SP³O 的 47.40%;8B 泛化侧 ARC-C 与 MMLU-Pro 也分别由 PPO(93.84%)与 GRPO(66.27%)领先。SP³O 优势在平均分。

所以呢

代码基于 THUDM/slime v0.2.4 构建,Apache-2.0 开源,README 的 4B 复现脚本是 8 卡配置——对正在跑 PPO 类训练的团队,这是近乎零迁移成本的 critic 侧改动,值得直接 A/B。对比基线里 GRPO 已是默认参照,而本文走的是另一条路——不绕开 critic,而是承认稠密监督对它不友好,把监督本身当稀缺资源来设计。RLHF 的下一次涨分,未必来自更大的奖励模型,也可能来自对既有组件更细的拆解。

参考:arXiv 2609.18708;github.com/Dodojordi/SP3O