LLM RLVR 组合方案#
TL;DR#
本页内容8 个部分
1. 实践目标与证据状态#
假设要用自动验证结果训练数学、代码或形式证明模型。已有方法分别调整有效组采样、留一参照、回答级裁剪和长度权重;把这些组件组合后,能否在相同预算下提高独立验证集通过率?本页给出候选配置与验证设计。RLVR(可验证奖励强化学习)用自动验证结果提供奖励;组合能否奏效,仍须实验检验。
来源工作分别报告了相关组件的实验结果,本页的组合尚未验证。
以同题成组采样的 GRPO 为起点,只考察三个问题:
- 数据是否提供比较信号:全对或全错的二值评分组,中心化后任务权重全为零。
- 每条回答的梯度权重是多少:组内标准差、回答长度和裁剪单位分别改变权重。
- 反馈是否足够可靠:终局分数评价最终结果,却未必能识别各推理步骤对该结果的贡献。
2. 候选配置与评分约定#
候选流程是:生成并验证 → 计算组内参考值 → 回答级裁剪 → 汇总有效 token → 更新策略。探索控制与 reference KL 作为单独的消融项,不预先假定它们必须开启。
| 组件 | 候选配置 | 相对来源方法新增了什么 |
|---|---|---|
| 采样 | DAPO 式补齐有效组 | 小组探测与自适应 单独测试 |
| 奖励 | 验证器为主,单独设系数的超长或评分规避惩罚 | 每个附加项单独消融 |
| 任务权重 | LOO,不除组内标准差 | 改变原始 GSPO 的组内标准化 |
| 更新 | GSPO 几何平均 ratio | 非对称阈值需重新校准 |
| 聚合 | 复制回答 loss 后按全局 token 平均 | 改变原始 GSPO 的回答等权目标 |
| 控制 | 熵反馈、外层保护、reference KL | 逐项加入,不默认全部有效 |
具体实验还需登记基座模型、任务与数据切分、验证器版本、上下文及生成上限、优化器和训练预算。单个组件的实验结果,不能证明这一候选组合在相同预算下也能提高验证集通过率。
2.1 以验证结果定义奖励#
先定义验证器分数 。数学可检查最终答案,代码可运行测试,形式证明可交给证明内核。验证强度随任务不同:编译通过不等于程序正确,有限测试通过也不等于满足完整规格。
若要约束超长回答或已识别的评分规避行为,再分别定义惩罚 、,取非负系数:
这些附加项会改变目标,必须分别消融。长度处理可从 DAPO 的软超长惩罚开始,而不是把“达到上限”直接解释成“推理已被证明错误”。证明任务则需明确允许的公理与检查规则,避免奖励占位证明或规格规避。[1]
2.2 定义保留原尺度的 LOO 权重#
固定问题 ,用旧策略 独立采样 条回答 ,评分为 ,均值为 。比较两种不除组内标准差的权重:(1)分数减去包含自身的组均值;(2)分数减去其他回答的均值,即 LOO。对应表达式为:
两者满足 。固定任务评分、同策略独立采样时,LOO 的参考值与当前回答独立;自包含组均值则把原始序列级策略梯度缩小为 。权重在更新时停止梯度。[2]
这里选择 LOO 作为候选配置,保留奖励的题间尺度。它不是梯度方差最优的保证。若 随题目改变,上述缩放也随题目改变;筛选、clipping 和长度权重还需分别分析,不能把整个组合称为无偏 RLOO。
候选数据的留一权重。 以下只核对候选配置的计算,不是训练实验。固定一道题,四条完整回答的验证分数为 ,有效长度为 。先不加入长度奖励或 reference KL。
组内均值为 。留一参照给出 ,四条回答都保留。
3. 采样、更新与聚合选择#
3.1 筛选有比较信号的组#
DAPO 固定每题回答数 ,过滤当前全对、全错的组,再补采样填满训练 batch。它改变的是进入更新的题目分布。[1]
可以先用 4 或 8 条回答探测通过率,再决定是否继续生成。这不是 DAPO 的原始流程;MAI 的两阶段采样也先用小组筛选,再完整生成。[3]
小组通过率记为 ,它只是估计。真实成功率为 时,4 次全错的概率仍有 。因此要限制重采样预算、定期复查被过滤题目,并记录筛选后的题目分布。
进一步让 随题目改变,例如给小组探测通过率介于预设上下限之间的题分配更多回答,是另一个待验证设想。它同时改变计算分配与统计误差;是否具有更高的采样效率,应在相同生成预算下比较。
3.2 用回答级 ratio 决定裁剪#
记更新中的策略为 ,第 条回答的有效生成长度为 。相同前缀下的 token ratio 为 。采用 GSPO 的几何平均:
完整回答的精确 importance weight 是 ,不是 。这里用后者构造长度归一化的替代目标,不声称恢复了 current 下的完整回答期望。原始 GSPO 仍除组内标准差;本页换成 LOO 是额外改动。[4]
令 ,用 、 控制裁剪宽度,定义要最小化的回答 loss:
整条回答共享裁剪条件。裁剪使有利方向越过阈值后的任务项保持常数,不对 ratio 或 KL 提供硬边界。
3.3 用 token 总数聚合回答 loss#
原始 GSPO 对回答目标等权平均。本页提出另一种待验证配置:把同一个 放到该回答的全部有效位置,再对整批 token 平均。若本批共有 条回答:
分母只计有效生成 token,排除 prompt、padding 和被 mask 的位置。跨设备与梯度累积也要使用同一个全局计数。
这借用了 DAPO 的 token 聚合方式,却改变了 GSPO 的回答等权目标。在未进入裁剪常数分支时, 与 中的长度因子抵消;裁剪判断仍由 决定。因此这是一项明确的组合修改,不是原始 GSPO 的等价写法。不同分母的计算见 Loss 平均。
4. 候选配置的目标计算#
沿用四条回答的验证分数、长度和 LOO 权重,单独计算回答级裁剪与聚合。
假设每条回答内的 token ratio 分别恒为 、、、,那么几何平均 也分别为这四个值。手算取 、:
| 回答 | 验证分数 | 长度 | LOO 权重 | 回答 loss | |
|---|---|---|---|---|---|
| 1 | 2 | 1.1 | |||
| 1 | 4 | 1.3 | |||
| 0 | 2 | 0.9 | |||
| 0 | 4 | 0.7 |
第四条的原始任务项为 ,裁剪项为 。取较小值后再取负,得到 ,继续降低该回答的概率不再使这一任务项的 loss 减小。
把同一回答的 loss 复制到各有效 token,再除以总长度 :
这个数值只表示当前样本上的目标取值。更新时固定验证分数、LOO 权重与 old 概率,梯度通过 current 传播;完成本批优化后重新生成并验证。若改为原始 GSPO 的回答平均,必须去掉这里按 加权的聚合,不能沿用同一个 loss。
5. 验证设计与逐项消融#
5.1 裁剪阈值、熵反馈与参考正则的消融#
非对称裁剪。 DAPO 用更大的上界给正权重项留下更多提高概率的空间。本页可测试 ,但 sequence ratio 与 token ratio 尺度不同,需要重新选择阈值。放宽上界允许正权重任务项在更大的 ratio 范围内继续提供梯度,不保证探索必然改善。
熵反馈。 MAI 的熵控制器用有界状态调节上界:估计熵低于目标时逐步放宽,高于目标时收紧。它用于 token 级目标;移植到本页的回答级目标时,熵估计、阈值和响应速度都是待检验配置。[3]
外层保护。 MAI 还在普通 clipping 外增加 ratio 硬截断,限制尚未被普通 clipping 置为常数的极端 ratio 分支。若移植到本页,可先将 截到另设的宽区间,再代入 。这会新增零梯度区域;直接丢弃样本又是另一种更新。应在 log-ratio 域先处理数值极值,并记录触发比例。[3]
Reference KL。 若任务要求保留参考行为,单独测试相应正则及强度 ; 只是一个对照配置。是否需要它,要同时看任务收益和独立能力评测。KL 不能修复验证器漏洞,具体求导方式见 KL Regularization。
5.2 在相同预算下验证组合#
先复现一个定义清楚的基线,再逐项加入候选组件。比较时固定 rollout token 与计算预算;不能用更多采样带来的收益替代算法比较。
主要验收指标是独立验证集通过率,同时记录熵、reference KL、裁剪比例、截断率、有效组比例与验证异常。最后再测试组合效果,判断组件之间是否冲突。本页没有训练结果,表中的选择都仍是候选方案。
以下是拟采用的实验对照,不是已有结果表:
| 对照 | 固定什么 | 改变什么 | 要判断什么 |
|---|---|---|---|
| 参照与尺度 | 模型、数据、采样与更新目标 | 组内标准化/减组均值/LOO | 收益来自尺度还是参照构造 |
| 聚合方式 | 相同回答、权重和裁剪配置 | 回答平均/全局 token 平均 | 长度权重是否影响结果 |
| 有效组筛选 | 总生成预算与评分规则 | 保留全部题组/补采有效组 | 筛选收益能否补偿补采成本 |
| 探索与正则 | 已选定的基础配置 | 分别加入熵反馈、外层保护或 KL | 是否有独立增益以及组件冲突 |
同时报告生成 token、有效训练 token 和端到端耗时;固定总预算不意味着每种配置的有效更新量相同。训练筛选不用于删除验证集的困难题。若独立验证集收益不能在同预算比较中保留,或仅来自更多生成、评分规避、评测题目筛选,就不能据此接受组合有效的假设。
6. 过程反馈的扩展与验证#
上面的任务权重仍由最终得分决定。同一条成功回答中的正确推导、失败尝试与后续修正共用一个 ;回答级裁剪没有进一步定位各步的作用。
代码和形式证明提供了一些候选中间信号:编译或类型检查、测试通过比例、反例消除、证明状态变化。可以研究怎样把它们转成 step 或 span 的更新权重,减少对大型 Critic 的依赖。
但中间进展不等于最终正确:子目标变少可能因为引入了错误假设,测试通过率上升也可能掩盖未覆盖的失败。任何过程奖励都需检查它与最终验证结果的关系,并测试是否出现新的评分规避行为。