解开 DPO 和 PPO 的谜团:从偏好反馈中学习的最佳实践

近年来,从偏好反馈中学习已成为提高现代语言模型 (LM) 生成质量和性能的关键步骤。尽管它被广泛使用,但偏好学习的应用方式却千差万别,不同的数据、学习算法和评估方法导致难以 disentangle 每个方面的影响。在这项工作中,我们确定了偏好学习的四个核心方面:偏好数据、学习算法、奖励模型和策略训练提示,系统地研究了这些组件对下游模型性能的影响,并提出了一个强大的偏好反馈学习方案。

我们的研究结果表明,所有方面都对性能至关重要,其中高质量的偏好数据带来最大的改进,其次是学习算法的选择,然后是改进的奖励模型的使用,最后是使用额外的未标注提示进行策略训练。值得注意的是,PPO 在数学领域比 DPO 高出 2.5%,在一般领域高出 1.2%。高质量的偏好数据在指令遵循和真实性方面带来了高达 8% 的改进。尽管在扩展奖励模型时,数学评估结果获得了高达 5% 的显著提升,但令人惊讶的是,我们在其他类别中观察到边际改进。

我们公开发布了用于训练和评估我们模型的代码,以及模型和数据集本身。

1. 引言

现代语言模型 (LM) 通常会在部署到最终用户之前进行最后阶段的训练,称为从偏好反馈中学习。这种训练阶段已应用于许多著名的语言模型,如 ChatGPT、Llama 3 和 Claude,并已被证明可以提高各种能力的性能,包括指令遵循、代码生成、数学推理和摘要。尽管这种学习范式被广泛使用并具有巨大潜力,但偏好学习的应用在数据和学习算法的使用方面差异很大。因此,目前尚不清楚偏好学习的哪些方面对下游模型性能影响最大,尤其是与两种最流行的偏好学习算法 PPO 和 DPO 相比,它们对偏好学习采取了不同的方法。
Figure 2:The core aspects of learning from preference feedback. For DPO (solid line), preference data is directly used to train a policy model. For PPO (dashed line), preference data is used to train a reward model, which is then used to score model-generated responses during PPO training.

图 2 所示,DPO 和 PPO 都依赖于偏好数据的训练——DPO 用于直接训练模型,而 PPO 用于训练奖励模型。在 PPO 中,该奖励模型随后用于对使用一组策略训练提示(用于引发生成的未标注提示)生成的来自主模型的生成进行评分。这为我们提供了偏好学习的四个重要方面,包括学习算法本身的选择(PPO 与 DPO)。

在这项工作中,我们旨在系统地研究偏好学习的这些关键组成部分,探索改变每个组成部分对下游模型性能的影响。从一个最初强大的开放监督微调 (SFT) 模型开始,我们依次研究每个方面。在这里插入图片描述
在这里插入图片描述
图 1 所示,我们发现所有方面都对性能至关重要,尽管程度不同。我们的发现如下:

  • 比较 14 个流行的现有偏好数据集,我们发现使用每个方面偏好进行标注的合成、多样化数据最适合偏好学习。我们发现偏好的质量(选择/拒绝对的选择)比被考虑的实际生成的质量更重要。
  • PPO 在我们的评估套件中,即使使用完全相同的模型和初始训练数据,也优于 DPO。
  • 增加用于训练奖励模型的奖励模型大小和数据集大小,会导致奖励模型在直接测试奖励模型性能的基准上表现有所提升。检查它们在 PPO 训练期间使用时对策略模型性能的影响,我们发现这些改进的奖励模型对 GSM 性能有很大影响,但在所有其他评估中,改进幅度很小或没有改进。
  • 使用在策略训练期间更匹配测试设置的未标注提示,可以进一步提高模型在特定领域设置下的性能(例如,当专注于提高数学性能时),但在针对整体性能时,效果有限或没有效果。

总的来说,我们建议一个偏好反馈学习方案:使用合成偏好数据集并使用具有大型奖励模型的 PPO 进行训练,这在整体上表现最佳。此外,如果只关心单个特定下游任务,则应使用目标提示。

2. 设置

我们首先描述 PPO 和 DPO 的核心方面,然后再进入我们的实验设置。我们在图 2 中总结了这两种方法。

2.1 PPO 和 DPO

PPO。基于 PPO 的偏好反馈学习方法涉及首先根据偏好数据训练奖励模型,然后通过对策略模型本身在训练期间产生的响应进行评分(“在线”学习)来训练策略模型,如图 2 所示。首先,策略模型被提示生成响应,然后使用奖励模型对其进行评分。这些分数(即标量奖励)随后用于指导策略模型的优化,遵循 PPO 算法。此外ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

步子哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值