弹性 MapReduce DPO(直接偏好优化)

DPO(Direct Preference Optimization,直接偏好优化)是 2023 年 NeurIPS 的一篇论文(Rafailov et al.)提出的方法,核心主张是:RLHF 里那个”先训奖励模型、再用 PPO 做强化学习”的两步流程,其实可以压成一步普通的监督学习。它现在是几乎所有开源对齐模型(Zephyr、Llama-3、Qwen 系列)的默认后训练算子。DPO 用分类损失训练模型,使其更偏好。

相关产品
弹性 MapReduce 产品页,含版本规格、价格与购买入口。

DPO 与 RLHF

DPO 直接优化策略,因此不再需要单独的奖励模型。它比经典 RLHF 更简单、更便宜,但要求基座模型已经与偏好数据同分布。

一、DPO 损失

损失函数公式

·πθ — 正在训练的当前策略

·πref — 参考模型(冻结,通常是 DPO 之前的检查点)

·β — 控制偏好强度(越大越保守)

DPO: 偏好数据 chosen 与 rejected→参考策略π_ref(冻结)→DPO 损失β 加权→对齐后的模型π_θ

二、可用数据集

数据集 来源 说明
hhh Anthropic Helpful-Harmless-Honest 成对偏好数据
helpsteer3 NVIDIA HelpSteer3 偏好数据集
ultrafeedback UltraFeedback 二值化的偏好比较

三、关键超参数

·dpo_beta:从 0.1 开始。取值越大越保守。

·learning_rate:比 SFT 更低,通常取 1e-5 到 1e-6。

·基座模型:应与偏好数据同分布。可以先做一轮轻量 SFT,或收集 on-policy 的偏好数据。

四、训练指标

·dpo_loss:分类损失(应下降)

·accuracy:模型偏好 chosen 回复的频率

·margin:chosen 与 rejected 之间的平均奖励差

·chosen_reward / rejected_reward:平均隐式奖励

五、延伸阅读

·DPO 与偏好教程:动手实践、可交互的演练

·RLHF 流程教程:带奖励模型的完整三阶段 RLHF

·DPO Recipe:生产环境训练脚本

赞 (0)
上一篇 4天前
下一篇 4天前