经典 RLHF
- 先训
- 再用 优化策略
- 四个模型同时驻留
- 稳,但贵且脆
第 03 课 · 教它选择
会模仿标注里的平均水平。要对齐「更好」,需要,而不是更多模仿。
Archify · workflow
SFT 过关后才上 DPO。数据是 chosen / rejected,不是再模仿一遍。
输入
对齐
产出
数据
SFT 检查点
第 1 课 adapter
偏好对
chosen > rejected
UltraFeedback
TRL
参考模型
冻结的 πref
DPOTrainer
β ≈ 0.1
loss_type=dpo
更会选的模型
再跑 10 条压测
显存紧
SimPO
无参考模型
β ≈ 2.0
跟上第 3 课
不要做
同一个问题,两种回答
标注里既有出色回复,也有啰嗦、讨好、带一点有害的回复。交叉熵会把它们一视同仁地模仿。人类偏好本质是比较:「A 比 B 好」,不是「A 的每个字都该提高概率」。
Bradley-Terry:用分数差表示「更好」的概率
FORMULA
P(y_w ≻ y_l | x) = σ( r(x,y_w) − r(x,y_l) )
胜者分数比败者高得越多,人们越可能选它。 整套数学都站在这一个 sigmoid 上。
写出 RLHF 目标
提高奖励,同时用 · 拉住,防止、模式坍缩、语言退化。
求出闭式最优策略
最优策略 ∝ 参考策略 × exp(r / )。奖励高的回复,概率被指数放大。
反过来用策略表达奖励
r(x,y) = log(π / π_ref) + 配分函数。奖励不再需要单独网络。
代回 Bradley-Terry
配分函数相减抵消。剩下:拉高胜者相对参考的对数概率,压低败者。
DPO 损失
FORMULA
L = −log σ( β [ log π_θ(y_w|x)/π_ref(y_w|x) − log π_θ(y_l|x)/π_ref(y_l|x) ] )
括号里是「胜者比参考更被当前模型喜欢」减去「败者……」。 约 0.1:太大则不敢动,太小则跑飞。
选哪一句是更好的。 要做的,就是把绿的相对参考抬起来,把红的压下去。
用户问:用一句话解释过拟合。
DPO 不要求胜者完美,只要求相对更好。两个回复越接近,越能教会细选择。
同一家人,约束不同
| 方法 | 还要参考模型吗 | 数据形态 | 一句话 |
|---|---|---|---|
| 要 | 成对胜负 | 最正统,两份模型 | |
| 不要 | 成对胜负 | 用平均 logprob + 长度惩罚 γ,≈2.0 | |
| KTO | 通常要 | 单条好/坏 | 没有成对数据时用 |
| ORPO | 不要 | 成对 + | 一边学说话一边学选择 |
| IPO | 要 | 成对胜负 | 平方损失,更抗过拟合偏好 |
显存紧、不想载入:先看 。只有点赞/点踩:KTO。想 和对齐一起做:ORPO。
第 3 课
它直接在偏好对上训练。
第 3 课
它控制「离参考模型有多远」。