放弃RLHF,拥抱DPO?
•Alignment
大模型对齐(Alignment)这块的术语真的太多了。今天花时间理了一下 RLHF 和 DPO 的区别。
RLHF(基于人类反馈的强化学习)是 ChatGPT 爆火的幕后功臣。它的流程超级复杂:先训练一个奖励模型(Reward Model)来模仿人类的喜好,然后再用 PPO 算法去优化语言模型。我看那些强化学习的数学公式简直头大,感觉这根本不是普通开发者能玩得转的。
然后我就看到了 DPO(Direct Preference Optimization,直接偏好优化)。这个算法简直是工程界的福音!它直接跳过了奖励模型和复杂的 PPO 阶段,把强化学习问题转化成了我们最熟悉的分类损失函数。只需要准备好“人类喜欢的回答”和“人类讨厌的回答”,直接微调就行了。
Hugging Face 的博客里有一句话特别打动我:"DPO is stable, performant, and computationally lightweight, eliminating the need for reward model fitting and extensive hyperparameter tuning."
虽然 DPO 论文里的数学证明我还没完全搞懂(好像是用到了什么 Bradley-Terry 模型),但从工程实现的角度来看,这种化繁为简的思路太优雅了。以后如果我要做模型对齐,肯定首选 DPO。