M44:最小奖励机制:Pairwise Loss、Group-relative Advantage 与奖励组合
偏好与强化学习把“哪个回答更好”或“这个回答得多少分”转换成可微损失或相对优势,但数值转换方式会塑造最终行为。
内容类型:预习教材(不代表已完成)
日期:2026-10-06
阶段:P1 · AI Model Engineering 90
周次:W7 · Preference、DPO、GRPO/RLVR 与奖励科学
节奏:周二最小实现
状态:教材已备;学习未完成
标签:pairwise-loss、dpo、grpo、advantage、reward-composition
一句话定义
偏好与强化学习把“哪个回答更好”或“这个回答得多少分”转换成可微损失或相对优势,但数值转换方式会塑造最终行为。
学习目标
- 能手算 Bradley–Terry pairwise loss 与一组标准化 advantage。
- 理解 DPO 中策略、参考模型和偏好强度的关系。
- 能发现简单奖励加权中的尺度、冲突和硬约束问题。
核心知识
若奖励模型给 chosen 与 rejected 的分数分别为 r_w、r_l,Bradley–Terry 假设 chosen 概率为 σ(r_w-r_l),损失为:
L_pair = -log σ(r_w-r_l)
分差越大,损失越小;若二者相等,概率为 0.5。它只学习相对次序,分数的绝对零点没有独立意义。
DPO 不显式使用 r(x,y),而比较策略相对参考模型对 chosen/rejected 的对数概率提升:
L_DPO = -log σ(β[(logπθ(yw|x)-logπref(yw|x)) -(logπθ(yl|x)-logπref(yl|x))])
β 控制偏好推动与留在参考策略附近之间的尺度。公式应理解为相对偏好,而不是“把 chosen 概率无限提高”。
GRPO 的直觉是:对同一 prompt 采样一组回答,计算奖励 r_i,再以组内均值和标准差得到 A_i=(r_i-mean(r))/(std(r)+ε)。高于组均值的回答得到正优势,低于均值得负优势。若整组奖励完全相同,组内没有可用于排序的信号。
机制/推导
手算例:一组奖励 [1, 2, 3],均值 2;按总体标准差约 0.816,优势约为 [-1.225, 0, 1.225]。优势只表示组内相对位置,不表示第三个回答已达到业务合格线。
奖励组合 R=w₁R_correct+w₂R_format+w₃R_length 简单但危险:不同分量尺度可能不同,长度奖励也可能抵消正确性。硬条件更适合门控,例如“schema 非法则总奖励封顶”,而不是让高长度分补偿非法格式。门控也必须防止误杀,并记录各分量而非只记录总分。
最小练习或观察步骤
- 手算
(r_w,r_l)为(2,1)、(1,1)、(0,2)时的 pairwise 概率与损失方向。 - 对
[1,2,3]或自己设计的四个奖励计算均值、标准差和 advantage。 - 构造三个奖励分量:正确性、格式、长度,分别写出值域。
- 设计一个“加权和”与一个“硬门控 + 加权和”版本。
- 用四个虚拟回答检查排序是否符合直觉,特别寻找能靠长度钻空子的回答。
- 若对照现有
grpo.ts,只映射变量和步骤,不宣称运行通过。
常见误区
- 把 reward 的绝对值当成跨 prompt 可比的真实质量。
- 标准化 advantage 后,误以为最高项一定合格。
- 奖励分量值域不同却直接等权相加。
- 为每个可测属性都加奖励,造成冲突和难以归因。
- 忽略参考模型,错误理解 DPO 只是在增大 chosen 的原始概率。
金融 / Web3 / 文档场景连接
对交易叙述可验证“字段齐全”“金额相符”“引用 ID 存在”,但“是否构成可疑模式”仍需结合证据。可以把算术一致性设为 verifier,把叙述清晰度设为软偏好,同时禁止用流畅度补偿事实冲突。
自检问题
- pairwise loss 为什么只关心分差?
- DPO 为什么需要参考模型?
- 组内相对优势为正为何不代表业务合格?
- 奖励门控比加权和更适合哪类约束?
专业课程对齐
- 精读 HF TRL Quickstart 的 DPOTrainer 与 GRPOTrainer 入口,找出 chosen/rejected、reference model、beta、reward funcs 和 group sampling 在代码中的位置。
- 精读 ARENA 的 RLHF 数学与 PPO 相关单元,回看 Bradley–Terry、log-probability、advantage 和 KL 约束。
- 选读 Stanford CS224N 的对齐/人类偏好课题,把公式还原为偏好数据的条件性。
深入学习提示
先手算再看 trainer:对三组分数计算 -log σ(r_w-r_l),对一组 reward 计算 A_i=(r_i-μ)/(σ+ε),再用 TRL 名称标注这些量从哪里来。DPO 必须追踪 policy 与 reference 的四个 log probability,GRPO 要检查同一 prompt 组内无差异 reward 时信号应消失。资源度量关注参考模型内存与每 prompt 采样数带来的 generation 成本。反例是组内最高优势回答仍全部不合格,却被解释为“高质量”。
学后填写区
- Pairwise 手算:
- Group advantage 手算:
- 三个奖励分量与值域:
- 一个可利用的漏洞:
- 修改后的组合规则: