SafeRLHF

搜索文档
大模型强化学习,相比PPO,DPO 还是个弟弟?
自动驾驶之心· 2025-06-22 22:09
DPO与PPO的对比研究 - 论文指出当前开源榜单上DPO占据领先位置,但顶级闭源模型如GPT4和Claude仍采用PPO方案,引发对两者实际优势的探讨[1] - DPO存在与PPO类似的reward hacking问题,即可能产生不符合人类偏好但能获得高奖励的解决方案[2] - 理论分析表明PPO导出的策略是DPO导出策略的真子集,DPO可能产生偏离参考策略的解[3] - 实验数据显示在编程比赛等硬核任务上PPO显著优于DPO,如Code Llama 34B模型在APPS测试集上PPO达到44.4%通过率,而DPO-Iter为34.2%[11] DPO的缺陷分析 - DPO在偏好数据集未覆盖的数据点上可能分配过高概率,导致无法预期的行为[6] - 表格数据显示DPO在安全相关指标上表现较差,如Helpfulness为-4.19,Harmfulness为-0.97,Safety Rate仅55.4%[7] - 通过SafeSFT、迭代DPO和数据过滤等方法可提升DPO性能,但仍无法超越PPO[8] PPO性能提升关键因素 - 采用优势函数规范化、大Batch训练和参考模型滑动更新三项技术可显著提升PPO性能[9] - 实验显示当batchsize太小时PPO性能甚至差于SFT[9] - 在编程任务中PPO刷新了SoTA,如Code Llama 34B模型在测试集上达到22.4%通过率,显著高于DPO的0%和DPO-Iter的3.2%[12] 编程任务实验结果 - 在APPS测试集上,Code Llama 34B模型PPO方法在Intro、Inter和Comp三个难度级别分别达到44.4%、18.0%和9.1%通过率[11] - PPO在编程任务中直接利用测试用例结果作为奖励信号,无需人工标注或训练奖励模型[13] - 对比实验显示DPO训练失败产生无意义结果,而PPO刷新了该领域的最高水平[13]