RLVR——可验证奖励的强化学习
对应课程 Lecture 16:Post-training - RLVR(Tatsu)
RLHF 依赖人类偏好,天花板是“评委的水平”。2024 年以来,o1、DeepSeek-R1 展示了另一条路:当任务答案可以自动验证时(数学对错、代码测试通过),让模型通过强化学习自己学会长篇推理。这一范式称为 RLVR(Reinforcement Learning with Verifiable Rewards,可验证奖励的强化学习),是当前“推理模型”的核心技术。
为什么数学和代码适合 RL?
关键在于奖励可以机械化判定:
- 数学题:答案比对、符号验证(如 sympy 检查等价);
- 代码:跑单元测试,通过与否;
- 格式:是否按
<think>…</think>输出思考过程。
奖励是稀疏且真实的 0/1,没有“评委偏见”,不会奖励谄媚的长答案。训练循环:
text
对每道题:
1. 策略模型采样 N 条完整回答(含思考链 CoT)
2. 每条回答自动验证 → 奖励 0 或 1
3. 用策略梯度更新模型,提高"答对轨迹"的概率策略梯度:从 REINFORCE 到 GRPO
REINFORCE 基础
策略梯度的基本形式:
直觉:奖励为正的轨迹,提高其概率;为负则压低。直接用会有高方差,实践中用组内基线(baseline) 减去平均奖励。
GRPO:去掉评论家
GRPO(Group Relative Policy Optimization)(DeepSeekMath/R1 采用)的思路:同一个提示采样一组
这免去了 PPO 的大评论家模型(省一份模型副本),实现简单、稳定,成为开源推理模型训练的主流选择。
KL 与 Clip:防跑飞
和 RLHF 一样保留两个安全阀:
- 对参考模型的 KL 惩罚(R1 论文发现小系数甚至零系数也可,但一般保留);
- clip 目标函数限制单步更新幅度(PPO 遗产)。
训练动态与关键技术问题
思考链自己“长出来”
RLVR 最神奇的观察:没有人教模型写长思考链,但只要“答对给分、格式合规给分”,模型会自发发展出反思(“等等,我算错了”)、验证、回溯、多路径尝试等行为——因为它们统计上提高了答对率。推理能力是“被奖励选择出来的”,不是被示范教出来的。
实用技巧(R1 式配方)
- 数据:以可验证的数学/代码题为主,过滤无明确答案的题;
- 课程:从易到难;太难的题全组都答对/答错时,优势为零、无梯度——组内“部分正确”的题目最有信息量;
- 长度控制:模型会越写越长刷答案,加长度惩罚或长度截断;
- 采样温度与组大小:温度过低组内无多样性(无梯度),过高则全错;一般 0.7~1.0,组大小 8~64。
奖励设计仍是要害
即使“可验证”,细节决定成败:
- 答案等价判定(分数化简、单位、多种写法)需要鲁棒的验证器;
- 格式奖励权重过大 → 模型学会写格式不学推理;
- 过程奖励(PRMs,给思考链每步打分)vs 结果奖励(ORM,只看最终答案):过程奖励信号更密,但标注困难、易被钻空子;当前主流仍是结果奖励 + 大组采样。
推理模型的代价与边界
- 推理开销:思考链让单题 token 消耗增长几十倍,延迟和成本大增(呼应推理的工程问题);
- 领域局限:可验证的任务(数学、代码、逻辑)进展最好;开放创作类任务难以机械化验证;
- 过优化迹象:过长的思考、重复、胡乱试探后“蒙”答案——需要监控验证集与长度分布;
- 从验证者角度想:任何能被 verifier 判定的能力,原则上都能用这套飞轮提升——这正在重新定义“哪些能力可以被大规模自动化训练”。
小结
- RLVR = 可机械验证的奖励 + 策略梯度(GRPO 免评论家),让推理行为从奖励信号中自发涌现。
- 组内相对优势、课程设计、长度控制是稳定训练的三个旋钮。
- 结果奖励 + 大采样是当前主流;奖励验证器的质量决定训练质量。
- “可验证性”是 RLVR 的适用边界,也是它比 RLHF 更纯粹的原因。