AIxiv专栏是机器之心发布学术、技术内容的栏目。过去数年,机器之心AIxiv专栏接收报道了2000多篇内容,覆盖全球各大高校与企业的顶级实验室,有效促进了学术交流与传播。如果您有优秀的工作想要分享,欢迎投稿或者联系报道。投稿邮箱:[email protected];[email protected]
本文作者熊伟是伊利诺伊香槟分校的在读博士生,其导师为 Tong Zhang 与 Nan Jiang。他的主要研讨方向是 RLHF 与机器进修理论。邮箱: [email protected]
鉴于人类反馈的强化进修 (RLHF) 使得大语言模型的输出能够更加符合人类的目标、期望与需求,是提升许多闭源语言模型 Chat-GPT, Claude, Gemini 表现的核心方法之一。在此之前,传统的开源解决方案是鉴于离线数据集的直接偏好优化 (DPO),并获得了一系列的明显超出 SFT 的开源模型。然而,在过去的几个月中,许多研讨表现,在线迭代版本的 RLHF 算法通常要明显超过他们的离线版本。与此同时,开源社区在这个领域暂时还没有一个完整的、易于复现的全过程解决方案。
近日,来自 UIUC、Salesforce 的研讨职员鉴于 ICML 2024 论文《Iterative Preference Learning from Human Feedback: Bridging Theory and Practice for RLHF under KL-Constraint》与其他一些领域相关工作实现了完全鉴于开源数据、模型的在线迭代 RLHF 全过程: (1) 有监督进修;(2) 奖赏函数与偏好函数的建模;(3) 以及鉴于 DPO 的迭代 RLHF,并鉴于 LLaMA3-8B 得到目前最先进水平的开源 RLHF 模型。此外,研讨职员还将模型、代码、数据、和超参数采用全部开源到 GitHub 与 hugging face,以便社区职员能够复现和进一步在这个方向举行研讨。
Figure 1 最终模型与 LLaMA3-8B-it 对比
论文地址:https://arxiv.org/pdf/2405.07863
奖赏模型 / 偏好模型建模: https://github.com/RLHFlow/RLHF-Reward-Modeling
迭代 RLHF: https://github.com/RLHFlow/Online-RLHF
Huggingface RLFlow: https://huggingface.co/RLHFlow
离线 RLHF 与在线迭代 RLHF
离线直接偏好优化 (offline DPO) 由于鉴于深度强化进修算法 PPO 的 RLHF 方案训练的不稳定性以及对 GPU 资源的不友好 (需要同时加载多个模型),开源社区通常使用直接偏好优化算法 (DPO), 在离线的偏好数据集上举行有监督进修,具体地说:
离线偏好数据集网络:首先随机采样一个 prompt,并使用 SFT 模型以及更加强大的语言模型 (GPT-4, Claude, LLaMA2-Chat-70B) 网络两个答复,最后让人类 / GPT-4 标注其更喜欢的答复;
在离线数据集上使用 DPO/Slic/IPO 等损失函数举行有监督进修。
由于离线偏好数据集的答复通常由更加强大的语言模型 (GPT-4, Claude, LLaMA2-Chat-70B) 网络,并用以训练 10B 以下的模型,所以可以看成是一种特殊的蒸馏方式。此外,研讨职员在论文中证明了在这种情况下,需要离线数据集对全空间有较好的覆盖,此时才能保证 DPO 能进修到最优战略。
在线迭代 RLHF 相反,在线迭代 RLHF 并不完全依赖于外部专家模型的答复,而是通过当前模型自己生成的答复组成的偏好数据集举行进修,具体的说,此时既可以从一个离线数据集开始,也可以完全从零开始,在每一轮迭代中,
模型采用:首先依据历史数据对模型举行训练,从而得到两个模型;
数据网络:对每条 prompt, 用两个模型采样 2 条答复,并让外部偏好模型举行标注,总共网络 m 个偏好数据对加入历史数据集中。
可见为了实现在线迭代 RLHF,(1) 首先需要一个外部偏好模型,以及 (2) 需要明确每轮的模型选取战略。
鉴于开源数据集的偏好模型建模
理想情况下,在线迭代进修的外部偏好信号应当由一组有代表性的人类给出,用以模拟模型部署所面对的用户。由于人类标注价格昂贵,研讨职员采用鉴于开源数据集,训练一个奖赏函数或者成对偏好函数,根据 UW 与 Allen AI 提出的评估奖赏函数质量的 rewardbench 结果,训练所得到的模型达到开源模型的最佳表现 (Cohere RM 并不开源):
同时,研讨职员网络清洗了开源偏好数据集中的 prompt 集合,可视化结果如下
数据网络战略采用
在原始论文中,研讨者推导出一般性的战略选取原则:
利用现有数据的信息选取主要模型:首先在历史网络到的所有数据集上运行 DPO (也可以替换为 Slic, IPO 等算法), 获得主要模型;
最大化差异举行摸索帮助主要模型进修:由于主要模型仅仅利用历史数据,它能够收敛的前提是网络到的在线数据能够源源不断的提供新的信息,这启发研讨职员在采用第二个模型时从下面的集合中采用相对于主要模型不确定性比较大的方向举行摸索:
由于对于神经网络不确定性估计没有解析解,研讨职员解释上述战略采用原则为:在保证辅助战略距离主要模型不要太远的情况下,尽可能最大化他们的差异,这启发研讨职员通过调整采样参数来获得主要模型的变种,结合一些现有文献中流行的启发式方法拒绝采样举行摸索,具体实现过程如下所示:
主要结果
研讨职员鉴于 LLaMA3-8B 实现了全过程训练,如 Table 1 所示,所得到的最终模型在指令跟随尝试中大幅度超出现有的 < 10B 开源模型水平,同时大幅度超出 offline DPO 基准,这验证了在线迭代 RLHF 的卓越效果。
Table 1 最终模型与其他 LLM 在指令跟随尝试中的结果比较。
为了理解在线迭代 RLHF 对模型推理、数学、代码等能力的影响,研讨职员也在标准的学术尝试集上举行尝试:
Table 2 学术尝试集结果。
经历在线迭代 RLHF 之后,模型在这些尝试上并没有明显的性能下降,并在部分基准上获得了较为明显的提升。研讨职员认为这是回答风格的变化使得模型能够更高效地使用在预训练与有监督进修阶段获得的知识。
与此同时,研讨职员也举行了一系列的消融实验。首先,研讨职员发现 RLHF 之后的模型通常会面临答复长度大幅度增加的问题,为此他们提出可以在奖赏函数中加入长度惩罚,实验结果表明,这样一个简单的修改可以大幅度将最终模型的平均输出长度从 656 token 降低到 382 token。此外研讨职员还使用了开源社区的 UltraRM-13B 作为基准 (在 reward bench 上大约排名第 30) 训练了一个模型,其在指令跟随尝试与学术能力尝试中都明显差于鉴于作者所训练的 SOTA 开源奖赏函数得到的模型。
Table 3 消融实验结果。
总结
该项目提供了在线迭代 RLHF 全过程的实现,并展示完全鉴于开源数据集与开源模型,可以得到达到当前最先进水平的 < 10B 语言模型。同时,作者将模型、代码、数据、以及超参数采用全部开源到 GitHub 与 hugging face,以使得开源社区可以复现技术报告中的结果。
尽管已经取得显著进展,这个项目仍然有许多潜在的方向亟待继续摸索。首先,由于资源限制,研讨职员采用了鉴于丰富开源偏好数据集训练的奖赏奖赏 / 偏好函数作为外部信号来源。未来,如何开发出一个更加准确和稳定的偏好函数,以提高模型的泛化和实用性,仍然需要进一步研讨。
其次,虽然当前启发式的摸索战略在一些实例研讨中效果不错,考虑到语言模型答复的指数大小的空间,如何设计更高效的摸索仍然值得进一步研讨。
最后,在消融实验中,研讨职员发现简单的长度惩罚可以缓解 RLHF 的长度偏见。虽然此方法有效,但仍有空间发现更多高效的技术手段,以进一步改善模型的输出质量和用户体验。