随着ChatGPT等大型语言模型的影响力日益扩大,如何根据人类反馈优化这些模型的性能,减少非法内容的输出,成为了一个重要议题。传统的直接偏好优化(DPO)算法虽然在离线偏好优化中得到了广泛应用,但其依赖参考模型的奖励函数导致了算力和内存需求的大幅增加,并且在训练与推理过程中存在度量不一致的问题。
针对这些挑战,弗吉尼亚大学和普林斯顿大学的研究人员提出了一种新的优化方法——SimPO,旨在提高大模型的优化效率和输出质量。
SimPO的创新之处
SimPO在DPO的基础上进行了重大创新,它采用序列的平均对数概率作为隐式奖励机制,这一设计直接与模型生成过程对齐,并消除了对参考模型的依赖,从而显著提升了计算效率和内存使用率。
此外,SimPO引入了“目标奖励边际”概念,将其嵌入到布拉德利-特里比较模型中。这一边际设定使得胜出的模型响应与失败的响应之间形成更大的差距,有效增强了算法的区分度,优化了分类效果,使模型输出更符合人类偏好。
自由奖励函数
SimPO的自由奖励函数不依赖于任何外部参考模型,而是直接使用策略模型本身来计算奖励,确保了奖励函数与模型生成过程中使用的度量(即平均对数似然)直接对齐,从而在生成响应时能够更精确地优化目标。
长度归一化技术
SimPO通过将奖励函数除以序列长度,确保了奖励与序列长度无关,避免了模型在生成过程中对长度的过度依赖,提高了生成质量。
SimPO的实验数据
研究团队在Mistral系列和Llama3等知名模型的预训练下,对SimPO进行了广泛的比较实验,并在AlpacaEval 2、MT-Bench和Arena-Hard等基准测试中进行了评估。实验结果表明,SimPO在所有测试中均展现出优于DPO及其他技术的性能。特别是在AlpacaEval 2上,SimPO的提升幅度最大可达6.4分,在Arena-Hard上达到了7.5分。
特别值得一提的是,基于Llama3-8B-Instruct构建的模型,在应用SimPO算法后,在AlpacaEval 2上的表现达到了惊人的44.7%的控制长度胜率,超越了排行榜上的Claude 3 Opus,并在Arena-Hard上取得了33.8%的胜率,成为高性能的80亿参数开源大模型。
结论
SimPO作为一种新型的偏好优化算法,不仅在理论上展现了其创新性和有效性,而且在实际应用中也证明了其卓越的性能。它为大型语言模型的优化提供了一种更加高效、更加符合人类偏好的解决方案,有望推动人工智能领域向更安全、更可靠的方向发展。
论文地址:https://arxiv.org/abs/2405.14734
Github地址:https://github.com/princeton-nlp/SimPO
AITOP100平台资讯专区: https://www.aitop100.cn/infomation/index.html