想象一个具体场景:模型做一道竞赛数学题,写了一条 1000 token 的思维链,最后答案对了,奖励 +1。
这条链里,有真正决定走向的关键分叉(比如第 127 个 token 处的「Wait, let me reconsider」),有正确的代数推导,有中途算错又自己纠回来的一段,有重复验算了三遍的冗余,还有大量纯粹的排版符号和连接词——\boxed{}、「因此」、「所以」。
现在问题来了:这 +1 的功劳,该记在谁头上?
主流的 GRPO 给出的答案是:所有人平分。它对整条 response 的每一个 token 施加完全相同方向的梯度——关键推导被加强,排版符号被加强,连那段算错又纠回的部分也被加强。反过来答错时,所有 token 一起受罚,包括那些本来写得没毛病、只是被后面带崩的步骤。
这就是 RLVR(Reinforcement Learning with Verifiable Rewards,可验证奖励强化学习)的**信用分配(Credit Assignment)**问题。它是 2025 下半年到 2026 年大模型后训练领域论文产出最密集的方向之一,几乎每周都有新工作。这篇文章系统梳理它的七条技术路线、二十余个代表性工作,以及目前真正还没解决的硬问题。
一、先厘清:信用分配发生在三个层面
很多争论其实是因为没分清「信用分配」到底指哪一环。完整管线里它出现在三处:
| 层面 | 决定什么 | 两端代表 |
|---|---|---|
| 奖励层 | reward 给多密 | ORM 只看终局 ↔ PRM 逐步打分 |
| 优势估计层 | 怎么从 reward 推出每步价值 | PPO critic / 蒙特卡洛续写 ↔ GRPO 组内基线(整条一个值) |
| 优化目标层 | 在什么粒度做重要性采样与裁剪 | token 级(GRPO)↔ 序列级(GSPO) |
一篇论文通常只动其中一到两层。后面每条路线我都会标明它动的是哪一层。
二、路线 0:广播式基线,和它自带的两个偏置
GRPO(DeepSeekMath,arXiv:2402.03300)是这一切的起点:砍掉 PPO 的 value network,同一 prompt 采样一组回复,用组内奖励均值当基线算 advantage。省内存、稳定,但信用最粗——同一组内 A = r − mean(r) 广播给所有 token。同族还有 ReMax(2310.10505)和 RLOO(2402.14740,Kimi 系用的 leave-one-out 基线)。
Dr. GRPO(Understanding R1-Zero-Like Training,arXiv:2503.20783)随后揭示了 GRPO 实现里两个隐蔽的归一化 bug:
- 长度偏置:损失按序列长度做平均,导致答错时越长的回复每个 token 受罚越轻——模型学会了用「又长又错」来逃避惩罚。这被广泛认为是 R1-Zero 类训练 response 无限变长的元凶之一。
- 难度偏置:advantage 除以组内标准差,全对或全错(标准差趋零)的样本反而拿到畸高的更新权重,中等难度的高价值样本被稀释。
修法出人意料地简单:去掉长度归一化和标准差归一化,只留减均值。DAPO(字节,arXiv:2503.14476)则用 Clip-Higher、动态采样、Token-Level Loss、超长惩罚四件套做了另一组工程修复,是目前开源大规模复现的事实标准之一。
三、路线 1:反向而行——不做更细,反而更粗(GSPO)
在所有人大谈「信用要分到 token」的时候,Qwen 团队走了一个漂亮的反方向。
GSPO(arXiv:2507.18071)论证:GRPO 训练超大模型崩溃的根源,是优化粒度(token)与奖励粒度(序列)的错配。逐 token 的重要性比率在长序列上方差不断累积,再被 clip 放大;MoE 模型里专家路由逐 token 不一致,问题更致命,最终不可逆地模型崩溃。
GSPO 的做法:用整条序列似然的几何平均定义重要性比率,裁剪、奖励、优化全部在序列级完成——粒度对齐了。结果:训练更稳、MoE 天然可用(不再需要 routing replay 这类补丁),还顺带简化了 RL 基础设施。Qwen3 系列就是用它训的。
这个工作给整个方向的启示是:token 级信用并不是免费的午餐。它换取的东西必须从「更准」重新定义为「更省样本、更少冗余、能处理 outcome 信号处理不了的场景」——后面几条路线正是沿着这个新价值主张展开的。
四、路线 2:把奖励变密——过程奖励(PRM)系
从奖励层动手:终局信号太稀疏,那就给每一步打分。
- Let's Verify Step by Step(OpenAI,arXiv:2305.20050):80 万条人工步级标注(PRM800K),证明过程监督显著优于结果监督,是这条线的奠基作。
- Math-Shepherd(arXiv:2312.08935):免人工标注——从每个中间步骤重新采样若干条续写,用「最终答对的比例」作为该步的软标签。这个蒙特卡洛步值估计后来成了整个领域的标准部件。
- PRIME(上海 AI Lab / 清华,arXiv:2502.01456):隐式过程奖励,只用策略自身的 rollout 加终局标签就能在线更新 PRM,砍掉独立的奖励模型训练阶段。Eurus-2-7B-PRIME 用 Qwen2.5-Math-Instruct 十分之一的数据在七个推理基准上反超。
- SPRO(arXiv:2507.01551):更进一步,连 PRIME 里那个辅助奖励模型都不要了,过程奖励直接从策略模型自身导出,并修正了 PRIME 把所有过程奖励塞进同一个组归一化带来的估计偏差。
这条线的老问题是:稠密标签要么贵(人工),要么是会错、会被 hack 的代理信号(自动标注、隐式奖励)——奖励一稠密,奖励 hacking 的攻击面也跟着变大。
五、路线 3:无 critic 的中间状态价值——蒙特卡洛续写与树
从优势估计层动手,利用语言模型的一个独特性质:MDP 可以 reset 到任意前缀重新续写。
- VinePPO(McGill / Mila,arXiv:2410.01679):先给出一个扎心的诊断——PPO 辛辛苦苦训出来的 critic,对推理步骤的价值排序仅略好于随机。也就是说,PPO 名义上的 token 级信用,实践中是严重错配的。VinePPO 改用从每个步骤前缀做蒙特卡洛续写得到无偏的逐步优势,用更短的 wall-clock 超过 PPO 和 GRPO。
- 树与分叉系(2025–2026):SPO-chain / SPO-tree、d-TreeRPO、TreeRL、TreeAdv 等一批工作,在高不确定性的中间节点分叉出子树,用子树的终局奖励估计中间状态价值并复用样本。
- FR3E(字节,arXiv:2507.07017):只沿着已答对的轨迹找高熵决策 token 作为锚点,在这些关键点做定向续写——专门给早期最模糊、最缺反馈的推理步骤制造监督。
- ForkGRPO(扩散语言模型方向,arXiv:2610.19408):熵引导分叉加段级信用——信用度量的是「这一段生成让期望终局奖励改变了多少」,而不是把整条轨迹的优势再分配一遍。
代价很直白:续写就是 rollout 预算。所以这条线近半年的进化主题是怎么用更少的分叉逼近同样的价值估计精度。
六、路线 4:轻量 token 重加权——一次前向就够(当前最热)
这是 2026 年论文最密集、工程上也最便宜的一条:不训额外模型、不做额外续写,仅凭策略自身在一次前向里就能拿到的信号(熵、梯度、统计量),给每个 token 的 advantage 加权。
- Beyond the 80/20 Rule(arXiv:2506.01939):只更新 batch 内熵最高的 20%「forking token」(往往出现在 wait、since 这类决策点上),就能匹配甚至超过全量更新。
- Sparse but Critical(arXiv:2603.22446):用 base 模型到 RL 模型的逐位置 JS 散度度量「真正被训练改变的 token」——DAPO 下 83%、GRPO 下 98% 的位置散度接近零,不到 4% 的 token 承载了几乎全部能力提升;且变化集中在回复开头(早期分叉)和结尾(格式收尾)。
- Not All Tokens Learn Alike(arXiv:2605.07660):一个重要的警示性结果——策略熵和注意力熵几乎是正交信号(token 级相关系数仅 -0.19)。随机选 20% token 就能恢复 97.8% 的精度,但只按策略熵来选会把 AIME 打到 1.84:最难推理的那批关键 token,只有「注意力支撑有多分散」这个视角才看得见,单看 next-token 不确定度会选错人。
- DelTA(arXiv:2605.21467):机制解释与修复一体——把 RLVR 的更新重新诠释为作用在 token 梯度向量上的隐式线性判别器(正奖励与负奖励回复各自形成一个梯度质心,token 的净更新取决于它与两个质心的相对对齐度)。高频共享的格式 token 会把两个质心都拖向同一个背景方向、稀释判别力,DelTA 用逐 token 专属系数抑制这种稀释,在多种架构上稳定优于 DAPO。
- RSI-S(阿里 ModelScope,arXiv:2606.31575):提出 Relative Surprisal Index,把熵和被选中 token 的概率耦合成一个信息论指标,同时滤掉低惊奇的冗余 token 和高惊奇的不稳定尾部 token;1.5B / 3B / 7B 三个规模上 avg@32 提升 2–3 分,且回复更短。
- PEPO(arXiv:2609.39402):指出 batch 级熵排名会系统性地偏向难题和生成早期位置;改用滑动窗口内的「近端熵」,让每个 token 的重要性相对自己的局部上下文度量,对题目难度和位置天然不变,额外开销几乎为零。
这条线的方法学共性值得记住:它们都在回答同一个问题——不花额外计算,从现有前向里读出「哪些 token 是推理的承重墙」,分歧只在用哪个观测量。
七、路线 5:结构与语义依赖——看一步对后续的因果贡献
单 token 的不确定性是局部信号,另一条思路是直接建模步骤之间的依赖关系。
- RECAP(Giving Credit Where It's Due,arXiv:2609.27156):在每条轨迹内部建语义依赖图,识别哪些步骤被后续推导真正引用,从最终答案反向传播「结构责任」,再叠加「步骤有效性」(这一步把推理推向了正确答案还是推离)重塑 GRPO 优势。目标非常务实:抑制冗余推理、压缩思维链长度、直接省推理成本。
- HarA(UIUC + Meta,arXiv:2610.04344):认为位置、熵这类局部信号抓不到「相对当前策略的全局语义新颖性」。把每条 rollout 表示成隐状态上的分布,用 Fused Gromov-Wasserstein barycenter 刻画同结果 rollout 的内部推理模式,token 相对重心的距离即新颖度,据此重加权以鼓励细粒度探索;通过 anchor-guided linearization 加 Sinkhorn 把计算做到可承受,可即插即用到三种 GRPO 变体上。
- BoT-GRPO(arXiv:2610.09804):critic-free,却能消费任意外部 token 级奖励;核心 trick 是按源序列长度反比给 token 加权,让长短 rollout 对组统计量的贡献相等,顺手纠正了 GRPO 的长度偏置,只增加记账开销,单张消费级 GPU 可跑。论文还给出一条实操经验:奖励的稳定性比丰富度更重要——干净、有界、稳定的细粒度信号持续加速学习,更花哨但更噪的信号反而让训练停滞。
八、路线 6:多奖励归因——谁的奖励归谁
现实任务往往有多个 verifier 同时打分:SQL 生成要语法能跑且结果正确,工具调用要格式对 + 函数选对 + 参数对。把多个奖励加成一个标量,不同奖励组合会塌缩成同一个 advantage(reward collapse),信用自然也分不清。
- MRTPO(arXiv:2610.21439):做法很优雅——让策略在「带某个 verifier 的信息」和「不带」两种上下文下重放同一条 response,用两次 next-token 分布的逐 token JS 距离衡量每个 token 与这个奖励的相关性,然后把每个奖励的 advantage 只分给它实际检查的那些 token:格式分归标签、可执行性分归查询语句、执行错误的惩罚集中落在出错位置(比如把
>写成>=的那几个 token)。无需辅助模型、无需 token 标注。 - GDPO(组内逐奖励归一化再聚合)与RLVR2(百度 ERNIE,arXiv:2609.23457):后者更彻底——把每条评分维度的分数转成组内序数排序,从比较矩阵恢复隐效用,彻底丢掉跨维度本来就不可比的原始分差;三个模型规模、16 个基准上全面领先。
九、路线 7:Agent 与多轮工具调用——最前沿,也最未解决
这是我认为接下来半年最关键的方向。轨迹从「一口气生成」变成「推理—工具调用—环境观测」交织的多轮结构后,一个终局奖励之下,到底哪一次 tool call 立了功,是个潜变量。社区里一份持续维护的 RL 知识库说得很直白:现有语料里还没有任何方法能给出真正的逐次调用信用,GRPO 的组基线和 PPO 的 value head 都只是继承了终局 bandit 的结构。
- GCA(Grounded Credit Assignment,arXiv:2610.23148):先抛出一个反直觉的诊断——Search-R1 在七个 QA 基准上 EM 全涨,但在 Bamboogle 上「答对且有检索证据支撑」的比例从 84.0% 暴跌到 42.9%:模型越来越依赖参数记忆答题,检索退化成了摆设。根因是单一标量只按「检索到证据」与「最终答对」的重合程度给检索行为记功(grounding gap)。GCA 利用两个可验证子结果(工具返回是否包含 gold 证据、最终答案是否正确)给每个功能段加残差,EM 提升 5.7–6.3 分,grounded 占比回到 93.4%。
- EG-GRPO(arXiv:2610.25269):深度搜索数据的合成管线里本来就带着「证据 claim」标注,只是习惯上被丢弃了。EG-GRPO 把它捡起来转成 step 级过程奖励,基于「到这一步为止累积的知识状态」做状态条件归一化,再与轨迹级优势融合成 token 信号;BrowseComp、GAIA 等五个深度搜索基准上稳定领先。
- 业界实践中还流传着 Turn-PPO、StepPO、ARPO 一类针对跨轮信用的工程修复叫法,此处仅作记录,未逐一核实原始论文。
十、共识与开放问题
梳理完七条路线,有几个判断可以下:
正在收敛的共识
- 目标是「dense credit at coarse-label cost」——用终局粗标签的成本,逼近步级稠密监督的定位精度。纯人工 PRM(太贵)和纯 outcome RL(太粗)都在往中间走。
- outcome-only 在大规模加可靠 verifier 下确实够用(R1 已经证明),所以细粒度信用的价值主张被重新定义为三样东西:训练效率(更少 rollout 和 GPU 小时,BoT-GRPO、80/20 都主打这个)、压缩冗余(RECAP、RSI-S 让回复更短)、以及 Agent 多轮场景的必需品。
- 「按策略熵选关键 token」是不够的——注意力熵、surprisal、梯度对齐(DelTA)、结构依赖(RECAP)各自能看到策略熵看不见的关键集。2026 年的主旋律就是给「哪些 token 重要」寻找更可靠的可观测信号。
仍然开放的硬问题
- 多轮 Agent 的逐次调用信用没有通用解法。GCA、EG-GRPO 都依赖任务恰好存在可验证子结果或合成标注,没有这个条件的通用情形仍未解决。
- verifier 有噪声或错误时,更精细的信用会不会帮倒忙。已有机制研究发现,给错奖励时模型会绕过推理、走记忆捷径(ICML 2026 接收,Birmingham 团队,代码);更精准的信用分配在错误信号下可能反而放大污染。
- token 级与序列级缺乏统一理论。GSPO 说粗一点才对,VinePPO 系说细一点才准,近期开始出现用「折扣时间信用加方差界」在两端插值的理论工作(如 γOPD,arXiv:2609.16937),可能是统一的方向。
- 几乎所有 token 重加权方法都在 1.5B–7B 小模型加数学任务上验证,能否在 GSPO 已稳住的超大 MoE、长 CoT 场景里保持收益,证据还非常薄。
附:一页速查表
| 路线 | 代表工作 | 动哪一层 | 额外成本 |
|---|---|---|---|
| 广播基线 + 去偏 | GRPO、Dr. GRPO、DAPO | advantage / 归一化 | 无 |
| 序列级反弹 | GSPO | 优化粒度 | 无,且更稳 |
| 过程奖励 | PRM800K、Math-Shepherd、PRIME、SPRO | reward 变密 | 标注或辅助模型 |
| MC 价值估计 | VinePPO、SPO-tree、FR3E、ForkGRPO | 优势估计 | 额外续写 |
| 轻量 token 重加权 | 80/20、Sparse-but-Critical、Not-All-Tokens、DelTA、RSI-S、PEPO | token 权重 | 一次前向 |
| 结构语义依赖 | RECAP、HarA、BoT-GRPO | step 权重 | 图 / 最优传输计算 |
| 多奖励解耦 | MRTPO、GDPO、RLVR2 | reward 到 token 归因 | 重放前向 |
| 多轮 Agent | GCA、EG-GRPO | 跨轮 / 跨工具调用 | 子结果验证器 |
回到开头那道竞赛题:那条 1000 token 的推理链,今天的主流答案依然是「所有人平分」,但领域正在快速逼近一个更好的答案——关键的少数 token 拿大头,承重的步骤拿正反馈,冗余和格式拿零,工具的每次调用各记各的账。这个方向值得持续跟踪。