在RTX 4090被限制的时代下,让大模型使用RLHF更高效的方法来了

该论文介绍了一种名为 remax 的新算法,专为基于人类反馈的强化学习(rlhf)而设计。remax 在计算效率(约减少 50% 的 gpu 内存和 2 倍的训练速度提升)和实现简易性(6 行代码)上超越了最常用的算法 ppo,且性能没有损失。
论文链接:https://arxiv.org/abs/2310.10505
作者:李子牛,许天,张雨舜,俞扬,孙若愚,罗智泉
机构:香港中文大学(深圳),深圳市大数据研究院,南京大学,南栖仙策
开源代码:https://github.com/liziniu/remax
如未额外说明,所有图片来自于论文。  背景  今年,以 chatgpt 为首的大语言模型(large language models, llms) 在各个方面大放光彩,由此引发了学术界和商业界对 gpu 等计算资源的需求剧增。  
比如监督训练地调优 (supervised fine-tuning, sft) 一个 llama2-7b 的模型,需要消耗 80gb 以上的内存。而这往往不够,为了和人类对齐(alignment),大语言模型还要经过 rlhf (reinforcement learning from human feedback) 的训练。rlhf 的 gpu 消耗往往是 sft 的 2 倍以上,训练时间更能达到 6 倍以上。   近日,美国政府宣布限制英伟达 gpu 产品 h100, h800等进入中国市场。这项条款无疑为中国发展大语言模型(llms) 和人工智能增添了很多阻力。减小 rlhf 的训练成本(gpu 消耗和训练时间)对 llms 的发展非常重要。  动机  rlhf 包含三个阶段:   1. 监督式地调优(supervised fine-tuning, sft)。  2. 从对比数据中学习奖励模型(reward model)。 3. 利用强化学习(rl)算法来最大化奖励。
图片来源自 instructgpt 论文   我们发现 rlhf 的主要计算开销来源于第三阶段(奖励最大化)。这一点可以从 deepspeed-chat 的报告里看到,第三阶段的训练时间是前两个阶段时间总和的 4 倍以上。而且,根据我们的经验,第三阶段的 gpu 消耗是前两阶段的 2 倍以上。
图片来自 deepspeed-chat 技术报告  目前 rlhf 第 3 阶段的主要计算瓶颈是什么?  我们发现该阶段的计算瓶颈主要来源用来目前使用的 rl 算法:ppo 算法。ppo 算法是用来解决普适 rl 问题的最流行的算法之一,有非常多成功的案例。我们在这里省略 ppo 的技术细节,着重介绍 ppo 的一个关键组件:价值模型  (the value model)。价值模型是一个需要被训练的神经网络,能够有效地估计给定策略的预期长期回报。尽管价值模型为 ppo 带来了良好的性能,但它在 rlhf 任务中也引入了沉重的计算开销。例如,为了更好地与人类偏好对齐,ppo 中的价值模型通常与 llm 大小相似,这使存储需求翻了一番。此外,价值模型的训练需要存储其梯度、激活和优化器状态,这进一步增加了近 4 倍的 gpu 存储需求。总结来说,ppo 和它的价值模型(以及其训练相关部分)已成为 rlhf 奖励最大化阶段的主要计算障碍。
相比 ppo,remax 是轻量级算法  思路 是否有可能找到比 ppo 更适配 rlhf 的算法?   我们得出的答案是肯定的。这是因为 ppo 和价值模型是为通用 rl 问题设计的,而不是针对像 rlhf 这样的特定问题(rlhf 只是 rl 问题中的一个子类)。有趣的是,我们发现 rlhf 具有三个在 ppo 中未使用的重要结构:   1. 快速模拟(fast simulation):  轨迹(即 llm 中的整个响应)可以在很短的时间内迅速执行(小于 1s),几乎没有时间开销。 2. 确定性转移(deterministic transitions):上下文确定性依赖于过去的标记和当前生成的标记。 3. 轨迹级奖励(trajectory-level rewards):奖励模型只在响应完成时提供一个奖赏值。   通过这三个观察,我们不难发现 value model 在 rlhf 的问题中是 “冗余” 的。这是因为 value model 设计的初衷是为了随机环境下的样本效率和慢仿真环境的计算效率。然而这在 rlhf 中是不需要的。
remax 是针对 rlhf 设计的算法,ppo 则是为通用 rl 设计的算法  方法 remax  remax 算法基于一个古老的策略梯度算法 reinforce,reinforce 使用的策略梯度估计器如下图所示:
reinforce 梯度估计器
reinforce可以在计算层面利用好rlhf任务的三个性质,因为reinforce直接利用一个响应的奖励来进行优化,不需要像一般的rl算法一样需要知道中间步骤的奖励和值函数。然而,由于策略的随机性, reinforce梯度估计器存在高方差问题(在richard sutton的rl书里有指出),这一问题会影响模型训练的有效性,因此reinforce在rlhf任务中的效果较差,见下面两张图片。
reinforce 的计算代价小,但性能差
reinforce 的(随机)梯度值远远大于 remax   为解决这一问题,remax 使用贪婪生成的回答(greedy response)的奖励作为基准值(baseline value)来构建梯度估计器,具体公式如下:
remax 梯度估计器   注意到,贪婪回复的奖励可以看作为期望奖励的好的近似。在理想情形下(),对于随机变量,
,因此我们能够期望估计器具有更小的方差。     下图展示了 remax 的算法流程,红色方框中的是核心算法改变。
remax 算法流程  理论保证   我们证明了 remax 使用的梯度估计器仍然是真实策略梯度的一个无偏估计器。   详细理论介绍见论文。  算法优点
remax 的核心部分可以用 6 行代码来实现。相比之下,ppo 要额外引入重要性采样(importance sampling),广义优势估计(generalized advantage estimation,gae),价值模型学习等额外模块。
remax 的超参数很少。相比之下,ppo 有额外的超参数,例如重要性采样剪切阈值(importance sampling clipping ratio)、gae 系数、价值模型学习率,离策略训练轮次(off-policy training epoch)等,这些超参数都需要花大量时间去调优。
remax 能理论上节省约 50% 内存。相比于 ppo,remax 成功移除了所有和价值模型相关的部件,大大减小了内存开销。通过计算,我们发现相比于 ppo,remax 能节省约 50% 内存。
效果 有效性
remax 可以像 ppo 一样有效地最大化奖励
在 opt-1.3b 上,remax 可以有效地最大化奖励
在 opt-1.3b 上,remax 的训练非常稳定  
在 gpt-4 评估下(lima test questions),remax 得到的策略比 sft 和 ppo 会更好
gpt4 打分显示 remax 得到的模型会更好  高效性
remax 能节省近 50% 的 gpu 内存。remax 移除掉了价值模型和它的训练部分(梯度,优化器,激活值),从而极大节省了 gpu 内存需求。考虑 llama2-7b,ppo 无法在 8xa100-40gb 的机器上跑起来,但是 remax 可以。
在 llama2-7b 上,remax 可以节省近 50% 的 gpu 内存  
remax 能加快 2 倍的训练速度。在每一轮中,remax 调用 2 次生成(generation),1 次反向传播(backpropagation);而 ppo 使用 1 次生成,2 次反向传播。对于大模型而言,生成会比反向传播的时间小,从而 remax 可以实现理论上接近 2 倍的训练加速。
通用性  除了 rlhf 任务,作为一个 rl 算法,remax 对于经典的 nlp 任务也适用。本文考虑了在 gpt-2 上进行一个电影评论续写的任务,这里奖励模型不是从对比数据学习的。实验观测到,remax 可以实现 2.2 倍的训练加速和 60% 的 gpu 内存节省。
在经典的 nlp 任务(文本续写)上,remax 相比 ppo 实现了 2.2 倍加速  总结  最后,我们从实验中简要总结了 remax 相对于 ppo 的主要优势。  
更简单的实现:  remax 的核心部分 6 行代码即可实现。这与 ppo 中的众多复杂的代码构建块形成鲜明对比。
更少的内存开销:由于移除了价值模型及其全部训练组件,相比 ppo,remax 节省了大约 50% 的 gpu 内存。
更少的超参数:   remax 成功移除了所有和价值模型训练相关的超参数,其中包括:gae 系数、价值模型学习率、重要性采样时期、小批量(mini-batch)大小。这些超参数往往对问题敏感且难以调整。我们相信 remax 对 rlhf 研究者更加友好。
更快的训练速度:在 gpt2(137m)的实验中,我们观察到 remax 在真实运行时间方面相比于 ppo 有 2.2 倍的加速。加速来自 remax 每次迭代中较少的计算开销。通过我们的计算,该加速优势在更大的模型上也能维持(假设在足够大的内存下 ppo 可以被成功部署)。
优异的性能:如前所示,remax在中等规模实验中与ppo实现了相当的性能,并且有时甚至超越它(可能是由于 remax 更容易找到合适的超参数)。我们推测这种良好的性能可以拓展到更大规模的模型中。

虹科新品 | 破除高成本障碍的深度3D亚太赫兹扫描仪性能怎么样?
48V混合动力系统的介绍
接地电阻柜接地如何保护
基于物联网表计的综合智慧能源管理系统总体架构
什么是蜂窝通信模组?-口袋物联
在RTX 4090被限制的时代下,让大模型使用RLHF更高效的方法来了
华为助力央视实现5G网络传输测试
Matter和Qorvo,助力IoT产品设计师颠覆游戏规则
中国的共享汽车行业直接跳过了传统的租车时代,成为了市场的宠儿
Intel宣布将把硬件保护整合至Corda区块链平台上
WBSN低能耗的时间同步算法的设计
人工智能会对物联网产生怎样的影响
格力电器首发GBMS格力楼宇管理平台
智能手表是如何监测睡眠情况的?
三星Galaxy A52 5G官方渲染图曝光
电机绕线圈的步骤
关于代码与硬件电路的对应关系
火星人集成灶:塑“灶”11年,从行业隐形冠军到中国厨房守门人
电动车集体涨价 特斯拉5天涨3万 蔚来屈居第四
双层石墨烯/BN异质结构中相称态的电子特性研究