其中 是由语言模型 和参考模型 隐式定义的奖励。直观上,损失函数 的梯度增加了首选完成 的可能性,并减少了不首选完成 的可能性。重要的是,示例的权重取决于隐式奖励模型 对不首选完成的评分有多高,乘以,即隐式奖励模型对完成排序的错误程度,考虑了 KL 约束的强度。我们的实验表明这种加权的重要性,因为没有加权系数的该方法的朴素版本可能会导致语言模型退化。
通用的 DPO Pipeline 如下:
在实践中,人们希望重用公开可用的偏好数据集,而不是生成样本和收集人类偏好。
由于偏好数据集是使用 采样的,因此每当可用时,我们初始化。
然而,当 不可用时,我们通过最大化首选完成 的可能性来初始化,即。
此过程有助于缓解真实参考分布(不可用)与DPO使用的 之间的分布偏移。
从偏好中学习是一种强大且可扩展的训练有能力的、对齐的语言模型的框架。我们引入了DPO,这是一种简单的训练范式,用于从偏好中训练语言模型,而不使用强化学习。DPO不是将偏好学习问题强制纳入标准的强化学习设置,以便使用现成的强化学习算法,而是识别了语言模型策略与奖励函数之间的映射,这使得可以直接通过简单的交叉熵损失训练语言模型以满足人类偏好,无需强化学习或泛化损失。几乎无需调整超参数,DPO的表现与现有的RLHF算法相似或更好,包括基于PPO的算法;因此,DPO显著降低了从人类偏好中训练更多语言模型的门槛。
我们的结果提出了几个对未来工作具有重要意义的问题。与从显式奖励函数中学习相比,DPO策略如何泛化到分布之外?我们的初步结果表明,DPO策略可以像基于PPO的模型一样进行泛化,但还需要更深入的研究。例如,使用DPO策略进行自标注训练是否可以同样有效地利用未标记提示?在另一个方面,直接偏好优化设置中的奖励过度优化如何体现,图3右边的性能略有下降是否就是这种情况?此外,虽然我们评估了参数量高达60亿的模型,但探索将DPO扩展到数量级更大的最先进模型是一个令人兴奋的未来研究方向。关于评估,我们发现GPT-4计算出的胜率受到提示的影响;未来的工作可能研究从自动化系统中获取高质量判断的最佳方法。最后,DPO在从人类偏好训练语言模型之外还有许多可能的应用,包括在其他模态中训练生成模型。