大规模语言模型人类反馈对齐--RLHF

news2024/12/26 23:30:48

大规模语言模型在进行监督微调后, 模型具备了遵循指令和多轮对话的能力, 具备了初步与用户进行对话 的能力。然而, 大规模语言模由于庞大的参数量和训练语料, 其复杂性往往难以理解和预测。当这些模型被部署 时, 它们可能会产生严重的后果, 尤其是当模型变得日渐强大、应用更加广泛、并且频繁地与用户进行互动。因 此,研究者追求将人工智能与人类价值观进行对齐, 提出了大语言模型输出的结果应该满足帮助性 (Helpfulness)、 真实性 (Honesty) 以及无害性 (Harmless) 的 3H 原则。由于上述 3H 原则体现出了人类偏好, 因此基于人类反馈的 强化学习 (Reinforcement Learningfrom Human Feedback ,RLHF) 很自然的被引入到通用对话模型的训练流程中。

RLHF 与强化学习的元素和概念基本共享的, 而不同的是在 agent 和environment 之前, 出现了第三个可以 参与交互的对象: 人类, 并由其衍生了一系列步骤。实际上, RLHF 并不是突然出现的事物, 最早在 2017 年的 NIPS 就出现了这一思想, 如下图所示。

RLHF 的示意图

上图中主要针对是奖励函数设计的问题。奖励函数设计是强化学习中的一个难题。从本质上讲, 奖励函数 是对任务目标的一种抽象, 也是我们向 agent 传达任务目标的桥梁。当任务非常复杂时, 很难将目标转化为奖励 函数这种形式化、数字化的表征。这个文章提出的就是一种利用“人类偏好”进行 DRL 的方法, 即 agent 的目 标是通过向人类发出尽量少的偏好比较请求,生成人类喜欢的轨迹。

而在 2020 年的 NIPS 上, OpenAI 已经尝试将其用于文本摘要任务, 并 取得了很好的效果。下图中可见, RLHF 的步骤框架从 2020 年这篇工作开始,就基本确定了。这篇工作是 OpenAI 早于 ChatGPT 两年发表在 NeurIPS 2020,在这篇文章中 ChatGPT 的框架雏形已经显现。文章专注于英文摘要任务, 所用的方法和 ChatGPT 基本一致, 包括了 ChatGPT 的核心方法, RLHF。 在文本摘要任务重, 不采用极大化词的对数似然损失, 而是利用收集到的 human feedback 数据通过监督学习专 门训练一个打分模型来直接捕获人类的偏好,然后再使用这个模型通过强化学习来训练生成模型。

RLHF 的示意图

主干的初始模型采用 GPT-3 结构的模型, 选择了 1.3B 和 6.7B 两个参数量的模型上进行 Human Feedback 的 实验。模型对应的方法如下:

  • 第一步,对两个模型做 LM 的自回归预训练;

  • 第二步, 对模型在构建的摘要数据集上进行有监督的 fine-tune,得到监督模型。使用这些监督模型对初始 摘要进行抽样,以收集比较,初始化 policy 和奖励模型,并作为baseline。

  • 第三步, 在监督模型的基础上进行奖励模型(RM) 的训练, 是在其上增加一个输出标量的线性 head 得到 的。训练结束后将 reward 模型输出归一化,以便来自文章数据的参考摘要达到 0 的平均分。

  • 第四步, 利用强化学习训练。用于生成最后结果的模型(policy model) 是另一个 fine-tune 过的模型。通过将 奖励模型的输出作为使用 PPO 算法最大化的整个摘要的奖励,其中每个时间步骤都是一个 BPE token。只 有在整个摘要生成完之后才会有可用于监督信号的 reward,在一个个词往出蹦的时候是没有任何监督信号 的。作者在 Reward 中加入了一个 KL 散度的惩罚项, KL 可以作为一个熵奖励, entropy bonus,鼓励 policy 进行探索, 防止其坍塌到单一模式;而且, 可以确保 policy 不会学习产生与奖励模型在训练期间看到的结果有太大不同的输出。

通过 RLHF 训练的模型已经达到近似人类摘要的效果了, 而监督模型出现了很明显的事实不一致问题。标 注人员使用 7 点李克特量表在四个维度 (或“轴”) 评估摘要质量 (分别是, 覆盖度、准确度、流畅性、整体质量), 发现 HF 模型在四个维度上都领先, 且在覆盖度上尤其优秀。虽然提出的方法效果非常好, 但是作者在文末也承 认了这篇工作的方法资源消耗巨大, 达到了 320 GPU / 天和数千小时的人工标注时间。这个成本确实不是一般研 究团队所能承受的了的, 目前来看对于硬件, 人力成本和时间成本的消耗是其最大的局限性。但是其应用前景 非常广阔,给模型注入人类的偏好,让大模型更好地对齐人。ChatGPT 的巨大成功也证明了这一方法可行性。

ChatGPT 中的 RLHF 涉及多个模型和不同训练阶段,这里我们按三个步骤分解:

  • 预训练一个语言模型 (PLM) ;

  • 聚合问答数据并训练一个奖励模型 (Reward Model ,RM) ;

  • 用强化学习 (RL) 方式微调 PLM。

预训练语言模型

首先, 我们使用经典的预训练目标训练一个语言模型, 如下图所示。对这一步的模型, OpenAI 在其第一个 流行的 RLHF 模型 InstructGPT 中使用了较小版本的 GPT-3; Anthropic 使用了 1000 万~520 亿参数的 Transformer 模型进行训练; DeepMind 使用了自家的 2800 亿参数模型 Gopher。

预训练语言模型的微调示例

其次,这里可以用额外的文本或者条件对这个 PLM 进行有监督的微调,例如 OpenAI 对“更可取”(preferable) 的人工生成文本进行了微调, 而 Anthropic 按“有用、诚实和无害”的标准在上下文线索上蒸馏了原始的 PLM。 这里或许使用了昂贵的增强数据, 但并不是 RLHF 必须的一步。由于 RLHF 还是一个尚待探索的领域, 对于”哪 种模型”适合作为 RLHF 的起点并没有明确的答案。

接下来, 我们会基于 PLM 来生成训练奖励模型 (RM,也叫偏好模型) 的数据, 并在这一步引入人类的偏好 信息。

训练奖励模型

奖励模型 RM 的训练是 RLHF 区别于旧范式的开端。这一模型接收一系列文本并返回一个标量奖励, 数值 上对应人的偏好。我们可以用端到端的方式用 PLM 建模, 或者用模块化的系统建模 (比如对输出进行排名, 再将 排名转换为奖励) 。这一奖励数值将对后续无缝接入现有的 RL 算法至关重要, 奖励模型的训练方式如下图所 示。

奖励模型的训练示例

关于模型选择方面, RM 可以是另一个经过微调的 PLM,也可以是根据偏好数据从头开始训练的 LM。例如Anthropic 提出了一种特殊的预训练方式, 即用偏好模型预训练 (Preference Model Pretraining ,PMP) 来替换一般 预训练后的微调过程。因为前者被认为对样本数据的利用率更高。但对于哪种 RM 更好尚无定论。

关于训练文本方面, RM 的提示-生成对文本是从预定义数据集中采样生成的, 并用初始的 PLM 给这些提 示生成文本。Anthropic 的数据主要是通过 Amazon Mechanical Turk 上的聊天工具生成的, 并在 Hub 上可用, 而 OpenAI 使用了用户提交给 GPT API 的prompt。

关于训练奖励数值方面, 这里需要人工对 PLM 生成的回答进行排名。起初我们可能会认为应该直接对文本 标注分数来训练 RM,但是由于标注者的价值观不同导致这些分数未经过校准并且充满噪音。通过排名可以比较 多个模型的输出并构建更好的规范数据集。

关于具体的排名方式, 一种成功的方式是对不同 PLM 在相同提示下的输出进行比较, 然后使用Elo 等级分 排序系统建立一个完整的排名。这些不同的排名结果将被归一化为用于训练的标量奖励值。

这个过程中一个有趣的产物是目前成功的 RLHF 系统使用了和生成模型具有不同大小的 PLM (例如 OpenAI 使用了 175B 的 PLM 和 6B 的 RM ,Anthropic 使用的 PLM 和 RM 从 10B 到 52B 大小不等, DeepMind 使用了 70B 的 Chinchilla 模型分别作为 PLM 和 RM) 。一种直觉是, 偏好模型和生成模型需要具有类似的能力来理解提 供给它们的文本。

强化学习微调

长期以来出于工程和算法原因, 人们认为用强化学习训练 PLM 是不可能的。而目前多个组织找到的可行 方案是使用策略梯度强化学习 (Policy Gradient RL) 算法、近端策略优化 (Proximal Policy Optimization ,PPO) 微 调初始 PLM 的部分或全部参数。因为微调整个 10B ~ 100B+ 参数的成本过高 (相关工作参考低秩适应 LoRA 和 DeepMind 的 Sparrow LM) 。PPO 算法已经存在了相对较长的时间, 有大量关于其原理的指南, 因而成为 RLHF 中的有利选择。

RLHF 的训练示例

事实证明,RLHF 的许多核心 RL 进步一直在弄清楚如何将熟悉的 RL 算法应用到更新如此大的模型,我们将 微调任务表述为 RL 问题。首先, 该策略 (policy) 是一个接受提示并返回一系列文本 (或文本的概率分布) 的 PLM。这个策略的行动空间 (action space) 是 PLM 的词表对应的所有词元 (一般在 50k 数量级) ,观察空间 (observation space) 是可能的输入词元序列, 也比较大。奖励函数是偏好模型和策略转变约束 (Policy shift constraint) 的结 合。

PPO 算法确定的奖励函数具体计算如下:将提示 x 输入初始 PLM 和当前微调的 PLM,分别得到了输出文本 y1, y2,将来自当前策略的文本传递给 RM 得到一个标量的奖励 rθ 。将两个模型的生成文本进行比较计算差异 的惩罚项, 在来自 OpenAI、Anthropic 和 DeepMind 的多篇论文中设计为输出词分布序列之间的 Kullback–Leibler(KL) divergence 散度的缩放, 即 r = rθ λrKL。这一项被用于惩罚 RL 策略在每个训练批次中生成大幅偏离初始 模型, 以确保模型输出合理连贯的文本。如果去掉这一惩罚项可能导致模型在优化中生成乱码文本来愚弄奖励 模型提供高奖励值。此外, OpenAI 在 InstructGPT 上实验了在 PPO 添加新的预训练梯度, 可以预见到奖励函数的公式会随着 RLHF 研究的进展而继续进化。

最后根据 PPO 算法, 我们按当前批次数据的奖励指标进行优化 (来自PPO 算法 on-policy 的特性) 。PPO 算 法是一种信赖域优化 (Trust Region Optimization,TRO) 算法, 它使用梯度约束确保更新步骤不会破坏学习过程的 稳定性。 DeepMind 对 Gopher 使用了类似的奖励设置, 但是使用 A2C (synchronous advantage actor-critic) 算法来 优化梯度。

RLHF 的作用

从人类反馈中强化学习代表了语言模型领域的重大进步,为利用其强大的功能提供了更加用户友好的界面。 RLHF 微调对“纯”基础 LLM 的实际影响是什么呢?

一种思考方式如下。基础模型经过训练以近似互联网文本的分布, 具有一种混沌的性质, 因为它模拟了整 个互联网的文本价值, 包括极其有价值和不受欢迎的内容。假设我们有一个理想的基础模型, 在这个阶段, 它 能够完美地复制这种高度多模态的互联网文本分布。也就是说,它已经成功地完成了一个完美的分布匹配任务。 尽管如此, 在推论中, 这样一个理想的模型可能会在分布的数百万种模式中选择的方式表现出一种不稳定的形 式(相对于输入提示),这些模式共同代表了不同音调、来源和存在于其海量训练数据中的声音, 具有三种模式 或“峰值”的多峰分布,基础模型被训练来近似互联网文本数据的分布。

三种模式或“峰值”的文本数据多峰分布示例

此时, 根据输入提示预测模型输出的质量可能具有挑战性, 因为模型可能会根据它决定模拟的源生成截然 不同的响应。例如用户提交关于一位著名政治人物的查询的场景。该模型可以产生模仿中性、内容丰富的维基 百科文章语气的输出(可以说, 它选择了分布中的百科全书模式)。相反, 根据问题的措辞, 模型可能会受到互 联网上激进观点的启发而采用更极端的观点。想象基本模型在其数值估计中仅预测轻微差异以在分布中的两种不同模式之间选择一种的情况是完全不现实的。选择哪种模式? 将此完全留给模型的随机决策性质可能不是最 理想的解决方案。

RLHF 通过基于人类偏好数据微调模型解决了这个问题, 这种方式提供了更加可控和可靠的用户体验。通 过在微调阶段将语言模型视为强化学习策略, RLHF 在分布中引入了偏差。在操作上, 我们可以将这种效果解释 为模式搜索行为的引入, 该行为通过分布引导模型并导致具有更高回报的输出(根据学习到的人类偏好建模), 从而有效缩小生成内容的潜在范围。当然, 这种偏差直接反映了实际选择的人的偏好和价值观, 这些人对用于 训练奖励模型的偏好数据集做出了贡献。例如, 在 ChatGPT 的情况下, 这种偏见在很大程度上倾向于提供有用、 真实和安全的答案,或者至少倾向于注释者对这些值的解释。

虽然 RLHF 提高了模型答案的一致性, 但它不可避免地以其生成能力的多样性为代价。根据预期的用例, 这种权衡既可以被视为好处也可以被视为限制。例如, 在搜索引擎等 LLM 应用中, 准确可靠的响应至关重要, RLHF 是一种理想的解决方案。另一方面, 当将语言模型用于创造性目的时, 例如产生新颖的想法或协助写作, 输出多样性的减少可能会阻碍对新的和有趣的概念的探索。

RLHF 的限制

尽管 RLHF 取得了一定的成果和关注, 但依然存在局限。这些模型依然会毫无不确定性地输出有害或者不 真实的文本。这种不完美也是 RLHF 的长期挑战和动力——在人类的固有领域中运行意味着永远不会到达一个 完美的标准。

收集人类偏好数据的质量和数量决定了 RLHF 系统性能的上限。RLHF 系统需要两种人类偏好数据:人工生 成的文本和对模型输出的偏好标签。生成高质量回答需要雇佣兼职人员 (而不能依赖产品用户和众包) 。另一方 面, 训练 RM 需要的奖励标签规模大概是 50k 左右, 所以并不那么昂贵 (当然远超了学术实验室的预算) 。目前相 关的数据集只有一个基于通用 LM 的 RLHF 数据集 (来自Anthropic 和几个较小的子任务数据集 (如来自 OpenAI 的摘要数据集) 。另一个挑战来自标注者的偏见。几个人类标注者可能有不同意见, 导致了训练数据存在一些潜 在差异。

除开数据方面的限制, 一些有待开发的设计选项可以让 RLHF 取得长足进步。例如对 RL 优化器的改进方面, PPO 是一种较旧的算法, 但目前没有什么结构性原因让其他算法可以在现有 RLHF 工作中更具有优势。另 外, 微调 LM 策略的一大成本是策略生成的文本都需要在 RM 上进行评估, 通过离线 RL 优化策略可以节约这些 大模型 RM 的预测成本。最近, 出现了新的 RL 算法如隐式语言 Q 学习 (Implicit Language Q-Learning,ILQL) 也 适用于当前 RL 的优化。在 RL 训练过程的其他核心权衡, 例如探索和开发 (exploration-exploitation) 的平衡也有 待尝试和记录。探索这些方向至少能加深我们对 RLHF 的理解,更进一步提升系统的表现。

ps: 欢迎扫码关注公众号^_^.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1098570.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

经济不景气时,企业如何通过反向竞价节省成本?

在经济不景气时期,企业往往被迫寻找创新方法来削减成本,争取提高盈利。其中一种越来越受欢迎的方法就是使用反向竞价。 反向竞价是一种采购策略,它颠覆了传统的采购流程,允许供应商竞争买方的业务。这种方法可以节省大量成本&…

退税政策线上VR互动科普展厅为税收工作带来了强大活力

缴税纳税是每个公民应尽的义务和责任,由于很多人缺乏专业的缴税纳税操作专业知识和经验,因此为了提高大家的缴税纳税办事效率和好感度,越来越多地区税务局开始引进VR虚拟现实、web3d开发和多媒体等技术手段,基于线上为广大公民提供…

C# Winform编程(2)常用控件

C# Winform编程(2)常用控件 常用控件 常用控件 标签,文本,按钮,列表框,组合框等的使用 Program.cs using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks…

Python-pyecharts和pandas库

目录 pyecharts库 pandas库 示例1 示例2 pyecharts库 pyecharts是一个基于Python的交互式数据可视化库,旨在帮助用户轻松地创建各种类型的图表和可视化效果。该库是在Echarts开源项目的基础上开发的,Echarts是一款由百度开发的优秀的数据可视化工具。…

静力触探数据智能预处理(3)

静力触探数据智能预处理(3) 前言 将钻探、物探、静力触探三种数据放在一起对比分析,三种方法间存在尚不明确的物性联系。利用某规范进行土的分类,得出了全是砂土的错误结论,非专业编写,仅供参考。 1、对…

Xilinx IP 10G Ethernet PCS/PMA IP Core

Vivado 10G Ethernet PCS/PMA介绍 1介绍 完整的10G以太网接口如下图,分为10G PHY和10G MAC两部分。 这篇文章重点讲 10G Ethernet PCS/PMA。 2 IP的基本介绍 10G以太网物理编码子层/物理介质连接(PCS/PMA)核心在Xilinx 10G以太网介质访问控制器(MAC)核心和具有10Gb/s…

并发数的计算

一 常用平均并发数计算公式 1.1 普通计算方法 计算公式: TPS总请求数/总时间按照需求所示,第32周有4.13万的浏览量,那么总请求数估算为4.13万 总请求数4.13完请求数41300请求数 总时间1天24小时24*3600秒 TPS41300请求数/24*3600秒0.48请求数…

2.1 初探大数据

文章目录 零、学习目标一、导入新课二、新课讲解(一)什么是大数据(二)大数据的特征1、Volume - 数据量大2、Variety - 数据多样3、Velocity - 数据增速快4、Value - 数据价值低5、Veracity - 数据真实性 (三&#xff0…

Cpolar和极简主义文件管理器:为用户提供高效稳定的个人云存储服务

文章目录 1. 前言2.Tiny File Manager网站搭建2.1.Tiny file manager下载和安装2.2 Tiny file manager网页测试2.2 Tiny file manager网页测试3. 本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试总结 1. 前言 文件共享和查阅是现在网络最常见的应用场景&am…

基于ssm的图书商城

功能如下图所示 摘要 今天,我们生活在一个充满活力的时代,其中网购已经成为一种主要购物方式。传统实体书店的客流量日益减少,而实体书籍的销售量也逐年下滑,这不可避免地导致了在线图书商城的崛起。在线商城具有众多优势。首先&a…

谷歌、AMD、英特尔加入挑战,英伟达AI解决方案还能继续“遥遥领先”吗?

夕小瑶科技说 原创 编译 | 谢年年 要问世界范围内人工智能解决方案谁最“遥遥领先”? 那肯定是英伟达! 然鹅这一情况很有可能会发生变动。 谷歌正在构建自己的人工智能基础设施! 除了谷歌,在软件方面,Meta的PyTor…

华为云云耀云服务器L实例评测|CentOS系统盘迁移到数据盘教程讲解

华为云云耀云服务器L实例评测|CentOS系统盘迁移到数据盘教程讲解 在华为云网购买华为云云耀云服务器L实例的Centos系统机器,可能会出现没有在挂载数据盘直接安装在系统盘情况,又或者系统初始化自动挂载在其他目录上。建议大家都把数据存放在数据盘下 …

CICD:Circle CI 实现CICD

持续集成解决什么问题 提高软件质量效率迭代便捷部署快速交付、便于管理 持续集成(CI) 集成,就是一些孤立的事物或元素通过某种方式集中在一起,产生联系,从而构建一个有机整体的过程。 持续,就是指长期…

如何养好一个微信新号?

最近听到一句话,“微信是个完整的互联网”。 你还真别说,真是。如果你还觉得微信只是个聊天视频打电话的工具,那可就有信息差了。 微信有各种各样的小程序,有打车的,有交话费的,有游戏,可以说&a…

【leetcode】260.只出现一次的数字Ⅲ

思路 由于只能使用线性时间复杂度。所以 遍历数组&#xff0c;将每个数字出现的次数存储到字典map中遍历字典&#xff0c;将次数为1的数字取出&#xff0c;就是答案 代码 #include<iostream> #include<vector> using namespace std; #include<map>class …

职场人的拖延症晚癌克星来啦 当当狸时间管理器

时间对于每个人都是公平的❗别说孩子对时间毫无观念&#xff0c;其实成年人又有几个对时间有观念呢&#xff1f; 总说时间不够用&#xff0c;却事事拖拉磨叽&#xff0c;拖延症严重的不仅是孩童&#xff0c;成人占据更多。 据调查显示超九成的职场人士都患有拖延症 拖延症的表…

vm虚拟机克隆ubuntu

1. 使用vm虚拟机自带的克隆功能 2. 选择完整克隆&#xff0c;然后选择您克隆到哪里的目录 3. 点击编辑你克隆后的虚拟机&#xff0c;点网络适配器&#xff0c;然后点高级&#xff0c;点击生成mac地址&#xff08;由于唯一&#xff0c;所以需要重新生成&#xff09; 4. 开启虚拟…

8+铜死亡+铁死亡+分型生信思路,多热点搭配

今天给同学们分享一篇铜死亡铁死亡联合分析的生信文章“Cross-talk between cuproptosis and ferroptosis regulators defines the tumor microenvironment for the prediction of prognosis and therapies in lung adenocarcinoma”&#xff0c;这篇文章于2023年1月17日发表在…

C++项目实战——基于多设计模式下的同步异步日志系统(总集篇)

文章目录 专栏导读项目介绍开发环境核心技术环境搭建日志系统介绍1.为什么需要日志系统2.日志系统技术实现2.1同步写日志2.2异步写日志 前置知识补充不定参函数C风格不定参函数不定参宏函数设计模式六大原则单例模式饿汉模式懒汉模式 工厂模式简单工厂模式工厂方法模式抽象工厂…

软件测试面试分享,纯干货,这拿不到20K?

前言 前面看到了一些面试题&#xff0c;总感觉会用得到&#xff0c;但是看一遍又记不住&#xff0c;所以我把面试题都整合在一起&#xff0c;都是来自各路大佬的分享&#xff0c;为了方便以后自己需要的时候刷一刷&#xff0c;不用再到处找题&#xff0c;今天把自己整理的这些…