复旦发布层次性奖励学习框架,增强大模型人类偏好对齐

news2024/11/23 4:41:16

在人工智能领域,强化学习(Reinforcement Learning, RL)一直是实现智能体自主学习的关键技术之一。通过与环境的交互,智能体能够自我优化其行为策略,以获得更多的奖励。然而,当涉及到复杂的人类偏好时,传统的强化学习方法面临着挑战。这些挑战主要源于人类监督信号的不一致性和稀疏性,这使得智能体难以准确地对齐人类的期望。

为了解决这一问题,研究者们提出了从人类反馈中学习的强化学习(Reinforcement Learning from Human Feedback, RLHF)方法。RLHF通过利用人类标注的比较数据来微调大语言模型(LLMs),以更好地与人类偏好对齐。然而,人类标注在评估两个或更多模型输出时可能存在不一致和不可靠的问题。这些问题导致了RLHF中不稳定的奖励信号,而稳定的奖励是成功强化学习的关键。

为了应对这些挑战,本文介绍了一种新的框架——ALARM(Align Language Models via Hierarchical Rewards Modeling),它是首个在RLHF中模拟层次化奖励的框架。ALARM通过整合整体奖励和特定方面的奖励,提供了更精确和一致的指导,特别是在复杂和开放的文本生成任务中。通过采用一种基于一致性过滤和组合多个奖励的方法,ALARM为改善模型对齐提供了可靠的机制。通过在长篇问答和机器翻译任务中的应用,验证了该方法的有效性,并展示了与现有基线相比的改进。

GPT-3.5研究测试:

https://hujiaoai.cn

GPT-4研究测试:

https://higpt4.cn

论文标题:
ALaRM: Align Language Models via Hierarchical Rewards Modeling

论文链接:
https://arxiv.org/pdf/2403.06754.pdf

ALARM框架的动机与设计

1. 框架动机

ALARM框架的设计动机源于对当前强化学习中人类反馈(RLHF)的限制的认识。这些限制包括人类监督信号的不一致性和稀疏性,这在复杂的开放式文本生成任务中尤为突出。为了解决这些问题,ALARM框架提出了一种整合全面奖励和特定方面奖励的方法,以提供更精确和一致的指导,从而更好地与人类偏好对齐。

在实际应用中,例如长篇问答和机器翻译任务,传统的RLHF方法面临着奖励信号不稳定的挑战。例如,即使是人类专家也难以为复杂任务编写足够好的示范,而从众包平台获得的模型生成对比评价则显示出注解的不一致性和不可靠性。ALARM框架通过筛选和组合多个奖励信号来提供更可靠的模型对齐机制。

图片

2. 框架设计

ALARM框架的设计基于两个核心思想:首先,通过对不同错误类型的细分,实现更精确和容易的注解;其次,采用分层强化学习中的任务分解方法来克服稀疏奖励问题。

框架的核心是寻求更强的监督信号:仅使用全面奖励很难达到更好地与人类偏好对齐的“优越区域”。因此,ALARM采用分层方式组合多个奖励,以稳定优化方向,更准确和一致地指导模型进入优越区域。

在实际操作中,首先列出与任务相关的多个特定方面奖励,并通过成对比较的方式选择与全面奖励一致性较高的奖励。在RLHF训练过程中,当生成的样本获得高于某一阈值的全面奖励时,选定的特定方面奖励将与全面奖励一起作为整体奖励进行组合。

这些特定方面奖励可以来自于在特定维度上注解的比较数据集上训练的奖励模型,也可以是简单的工具计算指标(如令牌计数),其密度可以在令牌级别或序列级别任意设置。

图片

▲框架图示

层次化奖励建模的核心原理

1. 奖励选择

在特定维度上对模型生成进行评估,而不是评估总体质量,已被证明对奖励建模来说噪声更小、更准确。因此,为了获得更准确和一致的监督信号,首先直观地列出与特定任务相关的多个特定方面奖励。然而,人类偏好复杂,不同分解的方面相互联系,甚至可能相互冲突。为了平衡它们,通常的方法是加权求和方法,这需要基于训练期间的表现或成对比较的准确性来为每个特定方面奖励仔细选择权重。

图片

然而,这种方法仍然存在过度优化问题,即模型丢失了来自每个单独特定方面奖励的个体信息,无法将组合奖励中的变化归因于任何一个方面。因此,ALARM框架通过丢弃冲突的奖励,选择与全面奖励最一致的奖励,以此来解决这一挑战。

2. 分层奖励建模

分层强化学习在广泛的决策任务中取得了显著进展,它将复杂且具有挑战性的优化目标分解为更简单的子任务。与此相反,现有的RLHF工作通常采用简单的奖励策略,即线性分配单一的全面奖励或固定组合的特定方面奖励,这不仅在长期优化中带来稀疏奖励的问题,而且忽视了全面奖励与特定方面奖励之间的紧密关系。

基于这些动机,ALARM提出了一种新方法,利用全面和特定方面奖励。通过这种方式,将语言模型与人类偏好对齐的优化目标视为一个具有挑战性的决策任务,并将这个任务分解为两个较不复杂的子任务,这两个子任务应该依次解决:

  • 直接遵循全面奖励,直到模型生成获得高全面奖励,表明生成物在较高水平上符合人类偏好;

  • 优化全面奖励和特定方面奖励的组合,作为整体提供更准确和一致的监督信号,指向优越区域。

与整个训练过程中都应用组合奖励的简单加权求和方法不同,ALARM方法更为微妙。主要遵循全面奖励的监督,并在仅依靠全面奖励无法达到优越区域时,轻轻转动方向盘。

应用场景与实验设置

1. 应用场景

ALARM框架通过整合整体奖励和特定方面的奖励,解决了当前对齐方法中人类监督信号不一致和稀疏的问题。该框架在复杂和开放的文本生成任务中,特别是长篇问答和机器翻译任务中得到了应用和验证。

2. 实验设置

2.1 任务设置

长篇问答(QA)任务中,使用了QA-Feedback数据集,初始策略模型为经过监督微调的T5-large,以及三个细粒度的奖励模型。这些奖励模型分别代表不同的错误类型,在不同层次上进行预测。

机器翻译(MT)任务中,使用了Europarl数据集,该数据集包含欧洲议会会议的记录。初始策略模型为mT5-base,并在训练集上进行了监督微调。此外,列出了三个特定方面的奖励,包括语法奖励、语言信心和可读性奖励,这些奖励通过工具包计算得出。

图片

2.2 奖励选择

在奖励选择方面,首先列出了与任务相关的几个特定方面的奖励。然后,通过成对比较来计算这些候选奖励与整体奖励的不一致性,以筛选出最能辅助整体奖励的奖励。例如,在长篇问答任务中,事实性奖励的不一致性最低,因此被选为层次化奖励建模的“副驾驶”。在机器翻译任务中,语法奖励因其较低的不一致性和更好的胜率而被选中。

2.3 奖励建模

在奖励建模方面,对整体奖励进行z标准化,并使用sigmoid函数对特定方面的奖励进行正值转换,以确保层次结构。设置了一个阈值,当生成的样本获得高于该阈值的整体奖励时,将整体奖励与选定的特定方面的奖励结合起来。在强化学习训练中,采用纯采样策略,并使用贪婪解码进行开发集和测试集评估。

实验结果与分析

长篇问答任务的测试集上,ALARM在整体奖励的平均值和事实性率方面均显著高于其他方法。除ALARM外,仅使用整体奖励的方法获得了最高的整体奖励值,而仅使用事实性奖励的方法获得了最高的事实性率。权重求和方法则平衡了这两个奖励。在不同模型之间的成对比较中,ALARM在所有三种不同的度量标准下均表现最佳,这进一步表明ALARM提供了比其他方法更强的监督信号。

图片

机器翻译任务中,ALARM在整体奖励的平均值、语法错误率和gpt-3.5-turbo评估方面的结果也强烈支持了该框架的有效性。

图片

消融研究:验证ALARM组件的重要性

1. 无选择的消融研究

在不进行奖励选择的情况下,研究者对ALARM进行了一系列实验,将初始奖励池中的每个奖励分别应用于两个任务。主动选择的奖励在整体奖励和gpt-3.5-turbo的评估中表现出领先的性能,这证明了奖励选择的有效性。

此外还观察到,某些奖励在两个评估者的评分中存在冲突。研究者认为这是由于整体奖励的偏见和缺陷造成的,例如持续忽视或过度重视某些方面,这超出了本文的讨论范围。

2. 无组合的消融研究

为了检验ALARM是否通过利用整体奖励和特定方面奖励提供了更准确和一致的监督信号,研究者比较了单独使用各自奖励的方法。结果显示,ALARM在两个维度上都一致地取得了更好的结果。

3. 无层次结构的消融研究

研究者将ALARM框架与传统的加权求和方法进行对比,以突出层次结构的重要性。加权求和方法的结果反映了整体奖励和特定方面奖励之间的妥协,限制了其在两方面都表现出色的能力。相比之下,ALARM利用层次化奖励建模提供了更强大的监督信号,从而在两个维度上都提高了性能。

结论与未来展望

本文介绍了ALARM框架,这是首个在强化学习中从人类反馈(RLHF)中建模层次化奖励的框架,旨在提高大语言模型(LLMs)与人类偏好的一致性。ALARM框架通过整合全局奖励和特定方面的奖励,解决了当前对齐方法中存在的人类监督信号不一致性和稀疏性的问题。

这种整合使得语言模型在复杂和开放式文本生成任务中得到更精确和一致的指导。通过在长篇问答和机器翻译任务中的应用,验证了该方法的有效性,并展示了与现有基线相比的改进。

1. 研究贡献

  • 首次提出在RLHF中层次化建模全局和特定方面奖励的框架;

  • 探索如何进行奖励选择以减少奖励冲突;

  • 通过全面的消融研究和分析,证明了ALARM在追求更准确和一致的监督信号方面的有效性,并为可扩展监督在AI对齐中的潜力提供了启示。

2. 未来工作

尽管ALARM框架在实验中展示了其有效性,但研究者们认识到仍有一些挑战和限制。

  • 首先,该框架需要为每个任务专门设计奖励,这在扩大应用场景时构成了挑战。

  • 其次,需要改进奖励的自动选择机制。在评估中使用了OpenAI的API,这可能会给常规用户带来额外的成本和响应时间的不稳定性。

3. 伦理和透明度

研究没有涉及直接的人类或动物主体,并且没有明显的伦理问题。使用的数据集和工具包,如QA-Feedback、Europarl、Textstat、Lingua和LanguageTool,都是公开可用的。已经采取措施确保我们的研究透明可复制。确认研究和方法论没有涉及有害的实践和潜在的误用。致力于在工作中维护最高的诚信和伦理责任标准。

综上所述,ALARM框架为强化学习提供了一种新的视角,即通过层次化奖励建模来提高语言模型与人类偏好的一致性。期待未来的研究能够在该工作基础上,进一步探索和扩展这一领域,特别是在提高奖励选择的自动化和减少对外部API依赖方面。此外,鼓励研究社区继续关注AI对齐的可扩展性问题,以实现更广泛的应用和更深入的人类偏好理解。

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

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

相关文章

codeforces 1600分

文章目录 1.[G. Special Permutation](https://codeforces.com/problemset/problem/1352/G)2.[D. Constructing the Array](https://codeforces.com/problemset/problem/1353/D)3.[C2. k-LCM (hard version)](https://codeforces.com/problemset/problem/1497/C2)4.[C. Circle …

【ollama】linux、window系统更改模型存放位置,全网首发2024!

首先是window系统 so easy 直接进入系统环境变量添加就行 其次是linux系统 全靠自己试出来的,去Ollama官网找半天文档不知道在哪,而且linux也没有说:【 https://github.com/ollama/ollama/blob/main/docs/README.md https://github.com/o…

CSS Module

CSS Module的作用:将CSS样式作用域限制在特定的组件范围内,以避免全局样式污染和命名冲突。 Vue中如何实现样式模块…

一款博客网站源码

一款博客网站源码 源码软件库 为大家内置了主题 清爽又强大真正的永久可用的一条源码,该版本为整合版本,内置了Joe主题,搭建后直接启用即可~ 安装环境要求: PHP 7.2 以上 MySQL, PostgreSQL, SQLite 任意一种数据库支持&#xff…

BUUCTF-WEB1

[ACTF2020 新生赛]Exec1 1.打开靶机 是一个ping命令 2.利用管道符“|” ping一下本地主机并查看ls ping 127.0.0.1 | ls 可以看到回显的内容是一个文件 127.0.0.1 | cat index.php #查看主机下index.php 127.0.0.1 | ls / #查看主机根目录下的文件 看的一个flag文件 …

专升本 C语言 万字考点笔记全国通用

前言 全章内容多次校验整理,可以放心食用;如果发现内容有不严谨的地方,请随时私信张三xy 形而上学者谓之道,形而下学者谓之器 目录 前言 常考概念 一、C语言的基础知识 第一节、对C语言的基础认识 第二节、C语言程序生命周期 第三节、标识符 第四节、进制的转…

帆软笔记整理

一:表格值自定义显示 1、日期型格式化:FORMAT($$$,"MM月dd日") 或者: 2、普通值自定义显示:if($$$SW_1,丝网一号机,if($$$SW_2,丝网二号机,丝网三号机)) 或者: 二:从数据集中再次筛选&#…

Wireshare捕获接口中没有本地连接

1. 查看npf服务是否启动 服务名无效,需要安转WinPcap 2. 勾选Npcap Packet Driver (NPCAP) 3. 重新启动Wireshark 重新启动Wireshark后,本地连接有了

吴恩达机器学习-可选实验室:简单神经网络(Simple Neural Network)

在这个实验室中,我们将使用Tensorflow构建一个小型神经网络 import numpy as np import matplotlib.pyplot as plt plt.style.use(./deeplearning.mplstyle) import tensorflow as tf from tensorflow.keras.models import Sequential from tensorflow.keras.laye…

C++:继承:面向对象编程的重要特性

(❁◡❁)(●◡●)╰(*▽*)╯(*/ω\*)(^///^)(❁◡❁)(❁◡❁)(●◡●)╰(*▽*)╯(*/ω\*)(❁◡❁)(●’◡’●)╰(▽)╯(/ω\)(///) C:继承:面向对象编程的重要特性 前言**继承**1.继承的概念及定义1.1继承的概念1.2继…

联合和枚举

联合体类型的声明 联合体(Union)是一种特殊的数据类型,它允许在同一内存位置存储不同类型的数据。与结构体不同的是,联合体的所有成员共享同一块内存空间,因此联合体的大小取决于它最大的成员的大小。 所以联合体也叫…

vue学习笔记27-组件生命周期⭐

每个vue组件实例在创建时都需要经历一系列初始化步骤,比如设置好数据侦听,编译模板,挂载实列到DOM,以及在数据改变时更新DOM。在此过程中,它也会运行称为生命周期钩子的函数,让开发者有机会在特定阶段运行自…

金融知识分享系列之:KD指标

金融知识分享系列之:KD指标 一、KD指标二、KD指标计算三、KD指标原理四、KD指标应用 一、KD指标 KD信号提供入场的工具 名称:随机震荡指标参数:(9,3,3)组成:K线,D线,20轴&#xff0…

因时夹爪urdf文件改写为xacro并搭配aubo_i5机械臂

因时夹爪urdf文件改写为xacro并搭配aubo_i5机械臂 一、因时夹爪内容二、改写为xacro模式三、aubo i5搭配因时夹爪 一、因时夹爪内容 因时夹爪型号&#xff1a;EG2-4C 夹爪的urdf文件内容&#xff1a; <robotname"jawasm1"><linkname"base_link"…

PyCharm中设置代码模版

前言 新创建一个.py文件后&#xff0c;我们总需要在开头写一些必要的代码&#xff0c;有什么方法能够一劳永逸&#xff0c;让这些代码自动生成呢&#xff1f; 有&#xff0c;它就是代码模版。 设置代码模版 这里先说说如何设置它。 步骤&#xff1a;首先打开PyCharm&#xff0…

内核移植——开发板的软件抽象(struct machine_desc)

以下内容源于朱有鹏嵌入式课程的学习与整理&#xff0c;如有侵权请告知删除。 内核支持什么架构、支持哪款cpu&#xff0c;这是如何确定的&#xff1f;主要是通过机器码来确定的。 内核中定义了一份机器码&#xff0c;uboot也会给内核传递一个机器码。 在内核启动的汇编阶段&…

PowerShell 一键更改远程桌面端口

前言 提高工作效率,安全性和规范化,最终实现一键更改Windows 远程桌面端口 前提条件 开启wmi,配置网卡,参考 一键更改远程桌面端口自动化脚本 默认端口3389变更后的端口3390win+r mstsc YOU_ip常规更改的连接方式win+r mstsc YOU_ip:3390需要恢复到原来的端口3390更改成3…

wireshark抓tcp包使用指南

本博文源于笔者不断探索加上去网络总结获得的经验&#xff0c;撰写wireshark如何抓tcp包 文章目录 1、打开wireshark2、选择网络源3、搜索ip地址与tcp条件4、看灰色的条纹 1、打开wireshark 2、选择网络源 选择自己当前的ip地址适用于的网络源&#xff0c;比如这里选择“以太…

.net使用excel的cells对象没有value方法——学习.net的Excel工作表问题

$exception {"Public member Value on type Range not found."} System.MissingMemberException 代码准备运行问题解决1. 下载别的版本的.net框架2. 安装3. 运行 代码 Imports Excel Microsoft.office.Interop.Excel Public Class Form1Private Sub Button1_Click(…

CTF题型 匿名函数考法例题总结

CTF题型 匿名函数考法&例题总结 文章目录 CTF题型 匿名函数考法&例题总结一 .原理分析二 .重点匿名函数利用1.create_function()如何实现create_function代码注入 2.array_map()3.call_user_func()4.call_user_func_array()5.array_filter() 三.例题讲解1.[Polar 靶场 …