Enhancing Rubric-based RL via Self-Distillation
Mingxuan Xia, Yuhang Yang, Chao Ye, Shuai Zhu, Shenzhi Yang, Guangcheng Zhu, Yuhang Zhang, Cheng Peng, Haobo Wang, Siqing Wang
cs.LG, cs.AI
2026-07-20
CriPO 在 GRPO 上叠一层在线自蒸馏,同时修补 rubric RL 未触达细则与被压制细则两类信号丢失,医学和科研问答基准上反超 GRPO,训练步数减半。
Rubric-based RL 把开放式任务(医学问答、科研问答这类没有唯一标准答案的题)的训练,拆成一张评分细则表(rubric)。每条细则 cj 带一个权重 ωj,由一个判分模型逐条打分,再聚合成一个标量奖励喂给 GRPO。比单一的正负奖励信息量大,但作者指出这套做法有两个失败模式,先前的工作各管一头、还都漏了一个。
第一个叫 Unexplored Criteria(未触达细则):一组采样里没有一条 rollout 满足某条细则,这条细则就拿不到任何梯度。RuscaRL、HeRL 这类探索派的做法,是在采样时把细则当外部脚手架塞进去,硬凑出满足的 rollout 来训练。这会造成训练-推理失配(train-inference mismatch):模型在「有人提示」的 rollout 上学,推理时没人提示,自回归解码一路累积误差。
第二个叫 Suppressed Criteria(被压制细则),是这篇新挑出来的。某条细则明明有 rollout 满足,但因为标量奖励聚合,它的贡献被别的细则淹没,分到的优势(advantage)落在零或负。于是模型被推着远离满足它的行为。作者实测 Qwen3-4B 在 RaR-Medicine 上训练全程,超过 57% 的样本都存在被压制细则,平均每个样本 1.8 条。
CriPO(Criterion-Distilled Policy Optimization)在 GRPO 骨架上叠一层 on-policy self-distillation(在线自蒸馏)。教师和学生是同一个模型,靠不同的输入条件来扮演,所以不存在训练-推理失配。
对未触达细则,它构造一个「细则注入自教师」。从一组 rollout 里挑优势最高的一条 y,把未触达细则 𝒞u 作为条件喂给模型当教师;教师在自己本来不会自发满足的细则引导下,会在特定 token 上偏向满足该细则的写法。然后只在「教师和学生分歧大」的 token 上做 forward-KL 蒸馏。这是关键:作者用贡献度过滤,只取累计 KL 占 95%(γ=0.95)的那些 token,实测只占全部 token 的 34.6%。少而准地把缺失行为注入策略,而不是整段照搬教师输出。
对被压制细则,它构造一个「反事实自教师」。对那些整体优势为负、但其实满足了某些被压制细则的 rollout,定位出「和细则相关」的 token,判据是教师反事实分布和学生分布在 log 概率上分歧为正、且教师对这些 token 不自信(α=0.1 阈值)。把这些 token 上的优势从负翻成正(τflip=0.1),让它们从被惩罚变成被保留。原本 GRPO 会因为整条 rollout 优势为负而抑制里面所有 token,CriPO 把其中真正有用的那部分救回来。
最终目标函数 ℒCriPO = ℒGRPO + β·ℒOPSD,β 在 Qwen3-1.7B/4B 上分别取 0.05/0.03。
基准:训练用 RaR-Medicine(15,658 条)和 RaR-Science(10,874 条);跨域测 HealthBench、LLMEval-Med、ResearchQA。训练判分用 Qwen3-32B,评测主用 GPT-4o-mini,鲁棒性复用 Qwen3-32B。
主结果(GPT-4o-mini,平均分):
| 方法 | Qwen3-1.7B | Qwen3-4B |
| Base | 57.2 | 63.7 |
| GRPO | 59.2 | 68.2 |
| HeRL | 60.4 | 68.4 |
| OPSD(朴素蒸馏) | 38.2 | 43.6 |
| CriPO(本文) | 62.4 | 69.6 |
CriPO 在两个规模上都最高,比 GRPO 高 1.4 到 3.2 分。OPSD 的崩盘更能说明问题:它和 CriPO 思路同源(把细则当特权信息蒸馏进策略),但不做局部化、不做反事实定位,在 1.7B 上从 base 的 57.2 掉到 38.2。这反向证明训练-推理失配会真的毁掉模型,也证明 CriPO 的「少而准」是必要的、不是装饰。
换 Qwen3-32B 当评测判分,趋势不变:1.7B 上 CriPO 47.1 对 GRPO 43.7,4B 上 61.5 对 59.4。
效率上,CriPO 在约 175 步达到 GRPO 收敛后的最佳成绩,省了约 2× 的优化步数,之后还继续收敛到更高分。训练全程熵更高、输出更长,作者把这归因于更充分的探索。
对做 RLHF/RLVR 的人,这篇的价值有两处。一是它把「标量奖励聚合会洗掉细则级信号」这件事量化了:57% 的样本、平均 1.8 条被压制细则,是个此前没被认真对待的真实损耗。二是它给了一个不引入训练-推理失配的修法,而且模块化:两条干预(CriPO-U、CriPO-S)可以单独用,消融显示各自只压低对应那一种失败模式,组合起来拿两者最好的部分。
作者自己承认一处动态失败:随着训练推进、模型能满足的细则变多,被压制的细则数量反而上升(探索越广、被淹没的细则越多)。CriPO 把这个数压得比 GRPO 低,但没有消除,问题部分是移动靶。
还有几处存疑。所有增益都靠 LLM 判分测,没有 ground-truth 奖励,所以涨的幅度有一部分是判分模型偏好的对齐,不是纯粹的能力提升。4B 上 CriPO 相对 GRPO 只高 1.4 分,绝对增量不大。CriPO 的两个干预各带一组超参(γ、α、τflip、β、top-K=3),论文没给敏感性分析,换基准或换模型能不能免调参不清楚。而且只在医学、科研问答上验证,代码、数学这类有标准答案的任务上表现未知。