十六:强化学习:DPO 与 ORPO自测题¶
来源:http://mp.weixin.qq.com/s?__biz=MzYyNTk3Njg1NA==&mid=2247484090&idx=1&sn=6507a20d9de9a22d31b24fa63c12a7e2&chksm=f01eb1c3c76938d5e7759f9db4f52fe69cb41392ebe1d97e947e3fe9b86c91de1057012f96ef#rd
覆盖范围¶
-
DPO 的动机、数据格式、RLHF-PPO 对比
-
KL 约束 RLHF 目标、最优策略形式、隐式奖励
-
Bradley-Terry 偏好模型、DPO loss、beta
-
sequence log probability、mask、reference model
-
DPO 的优缺点、实现陷阱、评估风险
-
ORPO 的 reference-free odds ratio 目标
-
DPO、ORPO、SFT、RLHF-PPO 的系统对比
一、DPO 基础¶
-
DPO 的全称是什么?它主要解决 RLHF-PPO 中的什么问题?
-
DPO 使用的数据通常是什么格式?
-
chosen和rejected分别表示什么? -
DPO 是否需要显式训练 reward model?为什么?
-
DPO 是否需要 PPO rollout 和 value head?
-
DPO 为什么可以被看作一种离线偏好优化方法?
-
DPO 与 SFT 的核心区别是什么?
-
DPO 与 RLHF-PPO 的核心区别是什么?
二、RLHF 目标与隐式奖励¶
-
请写出带 KL 约束的 RLHF 目标。
-
RLHF 目标中的 reference policy 起什么作用?
-
beta在 KL 约束目标中控制什么? -
KL 约束 RLHF 目标的最优策略形式是什么?
-
如何从最优策略形式反推出隐式 reward?
-
为什么同一个 prompt 下的 partition function
Z(x)会在偏好比较中抵消? -
DPO 论文标题中“language model is secretly a reward model”是什么意思?
-
DPO 学到的是绝对 reward 还是 reward difference?为什么?
三、Bradley-Terry 与 DPO Loss¶
-
Bradley-Terry 偏好模型如何表示两个回答的偏好概率?
-
请写出 DPO 中 chosen 和 rejected 的 reward difference。
-
请写出 DPO loss 的标准形式。
-
DPO loss 中
log pi_theta(y_w|x) - log pi_ref(y_w|x)表示什么? -
DPO loss 如何同时提高 chosen、压低 rejected?
-
DPO 中
beta变大或变小可能有什么影响? -
DPO loss 为什么类似二分类 loss?
-
DPO 中 reference model 为什么必须冻结?
-
如果 reference model 和 policy tokenizer/template 不一致,会发生什么?
-
DPO 是否可以加入 SFT loss?加入后可能有什么作用?
四、Sequence Log Probability 与实现¶
-
DPO 中 sequence log probability 如何计算?
-
为什么 DPO loss 只应计算 response token?
-
Prompt token 进入 DPO sequence logp 会造成什么问题?
-
Padding token 进入 DPO loss 会造成什么问题?
-
chosen/rejected 长度差异会给 DPO 带来什么风险?
-
DPO 中是否应该做长度归一化?如何判断?
-
使用 LoRA/QLoRA 做 DPO 时 reference model 可以如何实现?
-
DPO batch 中 chosen/rejected 应该如何拼接或编码?
-
DPO 训练时显存主要花在哪里?
-
DPO 中 label smoothing 或 conservative DPO 解决什么问题?
五、DPO 优缺点与评估¶
-
DPO 的主要优点有哪些?
-
DPO 的主要局限有哪些?
-
为什么 DPO 对偏好数据质量敏感?
-
DPO 为什么可能学习到长度偏置?
-
DPO 为什么可能过拟合偏好数据中的格式偏置?
-
DPO 和 PPO 谁更适合在线探索?为什么?
-
DPO 训练中如果 chosen/rejected 区分太容易,会有什么问题?
-
DPO 训练中如果偏好标签噪声很大,会有什么问题?
-
DPO 评估为什么不能只看训练 loss?
-
DPO 后模型回复变短或变长,可能由哪些因素导致?
六、ORPO 基础¶
-
ORPO 的全称是什么?
-
ORPO 为什么被称为 reference model-free?
-
ORPO 为什么被称为 monolithic preference optimization?
-
ORPO loss 通常由哪两部分组成?
-
ORPO 中 SFT loss 的作用是什么?
-
ORPO 中 odds ratio preference loss 的作用是什么?
-
odds ratio 的直觉含义是什么?
-
请写出 ORPO 偏好项的基本形式。
-
ORPO 中
lambda控制什么? -
ORPO 与 DPO 在 reference model 上有什么区别?
七、DPO、ORPO 与其他方法对比¶
-
DPO 与 ORPO 的目标结构有什么区别?
-
DPO 与 ORPO 在训练阶段上有什么区别?
-
DPO 与 ORPO 在工程成本上有什么区别?
-
DPO 与 RLHF-PPO 在 reward model 上有什么区别?
-
DPO 与 RLHF-PPO 在数据来源上有什么区别?
-
DPO 与 GRPO 在在线采样和偏好信号上有什么区别?
-
ORPO 与 SFT 相比多了什么训练信号?
-
DPO 与 IPO/KTO/SimPO 等偏好优化方法的共同思想是什么?
八、综合设计与排错¶
-
请设计一个从 SFT 模型到 DPO 模型的完整训练流程。
-
如果 DPO 训练 loss 下降但人工评估变差,应该排查哪些问题?
-
如果 DPO 后模型拒答变多,可能是什么原因?
-
如果 DPO 后模型事实性下降,可能是什么原因?
-
如果要在 DPO 和 ORPO 中二选一,你会考虑哪些因素?
-
请完整比较 SFT、DPO、ORPO、RLHF-PPO 的数据格式、目标函数、组件、优缺点和适用场景。
预览时标签不可点<div class="