【论文阅读】RAG-Reward: Optimizing RAG with Reward Modeling and RLHF

研究背景

  1. 研究问题:这篇文章要解决的问题是如何优化检索增强生成(RAG)系统,特别是通过奖励建模和人类反馈强化学习(RLHF)来提高大型语言模型(LLMs)在RAG任务中的效果。
  2. 研究难点:该问题的研究难点包括:如何定义评估生成质量的指标,如何构建高质量的偏好数据集,以及如何有效地利用LLMs进行自动标注。
  3. 相关工作:该问题的研究相关工作有:HH-RLHF、PRM800K、RAG-Truth等,这些工作分别评估语言的帮助性、无害性、逐步正确性以及检测RAG系统中的幻觉现象。

研究方法

这篇论文提出了RAG-Reward,一种用于优化RAG的数据集和方法。具体来说,

  1. 数据集构建:首先,从QA、data2Text和Summary三个领域选择了现有的RAG数据集,包括WebGLM、Yelp和XSum。然后,使用12个开源和专有LLMs(如GPT-4和Llama-3系列)生成多样化的响应。对于每个数据集中的每个提示,随机选择两个LLMs的响应进行比较。

  1. 自动标注:使用GPT-4o作为评判者,根据四个关键指标(幻觉、全面性、冗长性和归因)对生成的响应进行比较。这些指标由人类专家精心选择和定义。通过多数投票法构建偏好对,最终收集了35K的高质量训练样本。

  2. 奖励建模采用Bradley-Terry奖励模型来学习偏好信号。具体来说,使用Llama-3.1-8B-Instruct作为基础模型进行训练,学习率为2e-6,全局批量大小为64,最大长度为4096,训练1个epoch。

  3. 强化学习使用RAFT算法进行偏好对齐。RAFT利用reward model从N个候选响应中选择得分最高的响应,并在该响应集上微调策略模型。实验中设置N=16,初始策略模型为Llama-3.2-3B-Instruct和Mistral-7B-Instruct-v0.1,微调学习率为5e-6,训练1个epoch。

实验设计

  1. 数据收集:从WebGLM、Yelp和XSum数据集中收集了11000、12000和12000个训练样本,分别用于问答、数据到文本和总结任务(这35K用于训练reward model)。每个数据集还包含500个测试样本。
  2. 实验设计:使用35K偏好对进行奖励建模,并创建一个3K样本的开发集用于RLHF训练期间的采样和学习。使用1.5K样本的保留测试集评估策略和奖励模型的性能。
  3. 样本选择:对于每个问题和其对应的参考,随机选择两个LLMs的生成响应形成偏好对。
  4. 参数配置:奖励模型使用Llama-3.1-8B-Instruct进行训练,学习率为2e-6,全局批量大小为64,最大长度为4096,训练1个epoch。RAFT算法中,初始策略模型为Llama-3.2-3B-Instruct和Mistral-7B-Instruct-v0.1,微调学习率为5e-6,训练1个epoch。

结果与分析

  1. 奖励模型性能:奖励模型在三个任务上的准确率分别为WebGLM 84.8%、Yelp 88.2%、XSum 78.4%,平均准确率为83.8%。这表明奖励模型能够有效地对齐生成质量。

        2. 偏好对齐:使用RAFT算法进行偏好对齐后,策略模型在三个任务上的胜率分别为  WebGLM 66.8%、Yelp 54.4%、XSum 68.2%,平均胜率为63.1%。这表明对齐训练显著提高了策略模型的性能。

        3. 自我评估:随机选择1000个样本进行重新评估,结果显示GPT-4o的自我评估一致性率超过90%,表明标注数据集的高质量和稳定性。

        4. 人类评估:随机选择100个样本进行人类评估,结果显示人类评估与GPT-4o标注数据集的一致性率为71%,表明AI辅助标注在多个RAG任务中的潜力。

总体结论

这篇论文介绍了RAG-Reward,一个高质量偏好数据集,旨在优化检索增强生成(RAG)系统。通过自动AI标注管道和GPT-4o评估,构建了涵盖多个领域的多样化基准数据集。实验结果表明,RAG-Reward在奖励建模和强化学习中表现出色,验证了其有效性和数据集质量。

优点与创新

  1. 引入RAG场景的奖励建模方法:论文提出了一种针对RAG场景的奖励建模方法,并发布了一个高质量的35K偏好标注数据集,以支持未来的研究。
  2. 综合评估指标:定义了一套综合评估RAG质量的指标,并指导数据集构建过程。
  3. 广泛的实验验证:进行了广泛的实验来评估奖励模型,训练策略模型,并展示了该方法在提高RAG性能方面的有效性。
  4. 自动化的LLM注释管道:开发了一种新颖的自动化LLM注释管道,生成高质量的偏好数据集RAG-Reward。
  5. 多领域数据集:数据集跨越多个领域,包括问答、数据到文本和摘要,形成了一个大规模且多样化的基准。
  6. 高一致性率:通过自我评估和人类评估,验证了GPT-4o生成的标签具有高度一致性,确保了数据集的质量。

不足与反思

  1. 现有奖励模型的局限性:许多现有的奖励模型在评估聊天、安全和推理任务时表现出色,但在RAG场景中的整体准确性低于80%,显示出显著差距。
  2. 领域特定训练数据的必要性:当前主要在推理任务上训练的奖励模型可能无法有效泛化到评估RAG特定的生成内容,表明领域特定的训练数据对于缩小这一差距和提高RAG性能评估至关重要。

关键问题及回答

问题1:RAG-Reward数据集的构建过程中,如何选择和生成多样化的响应?

在RAG-Reward数据集的构建过程中,研究团队采用了多种策略来确保生成的响应具有多样性和高质量。具体步骤如下:

  1. 数据集选择:选择了三个现有的RAG数据集,包括WebGLM(问答)、Yelp(数据到文本)和XSum(总结)。
  2. 模型选择:使用了12个开源和专有的LLMs,包括GPT-4和Llama-3系列,以确保生成的响应具有多样性。
  3. 响应生成:对于每个数据集中的每个提示,随机选择两个LLMs生成响应。这样可以确保每个提示都有两种不同的生成结果,从而增加数据的多样性。
  4. 评判标准:使用GPT-4o作为评判者,根据四个关键指标(幻觉、全面性、冗长性和归因)对生成的响应进行比较,构建偏好对。

通过这些策略,RAG-Reward数据集成功地收集了35K高质量的训练样本,确保了数据集的多样性和可靠性。

问题2:RAG-Reward数据集的标注方法是如何确保标注的一致性和质量的?

RAG-Reward数据集的标注方法通过以下步骤确保标注的一致性和质量:

  1. 使用GPT-4o进行标注:研究团队使用GPT-4o作为主要标注工具,通过提示GPT-4o比较两个生成的响应,并根据四个关键指标(幻觉、全面性、冗长性和归因)选择偏好响应
  2. 多轮标注:为了确保标注的一致性,研究团队设计了多轮标注流程。具体来说,对于每个数据集中的每个提示和对应的偏好对,GPT-4o会被要求重新评估其之前的判断,确保其选择的响应在所有指标上都是一致的。
  3. 自我评估:研究团队还进行了自我评估,随机选择1000个样本进行重新评估,测量GPT-4o在不同任务上的标注一致性。结果显示,整体一致性率超过90%,表明GPT-4o能够提供稳定且一致的标注结果。
  4. 人工评估:为了进一步验证标注质量,研究团队还进行了人工评估。随机选择100个样本,由标注员根据相同的标准进行评估。结果显示,人工评估与GPT-4o标注的一致性率为71%,展示了AI辅助标注在多个RAG任务中的潜力。

通过这些方法,RAG-Reward数据集确保了标注的高质量和一致性,为后续的奖励建模和强化学习提供了可靠的基础。

问题3:RAG-Reward数据集在奖励建模和偏好对齐实验中的表现如何?

RAG-Reward数据集在奖励建模和偏好对齐实验中表现出色,具体结果如下:

  1. 奖励模型性能:奖励模型在三个任务上的准确率分别为WebGLM 84.8%、Yelp 88.2%、XSum 78.4%,平均准确率为83.8%。这表明奖励模型能够有效地对齐预期标准,区分选定的响应和被拒绝的响应。
  2. 偏好对齐效果:经过一次RAFT迭代后,策略模型在三个任务上的胜率分别为WebGLM 66.8%、Yelp 54.4%、XSum 68.2%,平均胜率为63.1%。此外,GPT-4o也倾向于选择后训练策略模型生成的响应,平均胜率为66.2%。这些结果表明,RAFT算法能够有效地利用奖励模型进行偏好对齐,显著提升策略模型的性能。

总体而言,RAG-Reward数据集在奖励建模和偏好对齐实验中表现出色,验证了其在提高RAG系统性能方面的潜力。研究结果为未来的RAG系统评估和生成提供了新的思路和工具。

问题4: Reward模型和Policy模型分别是如何进行测评的? 

奖励模型(Reward Model)的评估:

  1. 训练:奖励模型通过偏好数据集进行训练,该数据集由多个候选响应对组成,每个对包含一个被选中的响应和一个被拒绝的响应。奖励模型的目标是学习一个能够区分这些响应的奖励函数。

  2. 评估

  • 准确性(Accuracy):在测试阶段,奖励模型为每对候选响应分配分数,并计算其准确性。准确性: prefer response score > reject response score, scores由reward模型给出。
  • 跨任务一致性:奖励模型在多个任务上进行评估,以确保其在不同场景下的泛化能力。

策略模型(Policy Model)的评估:

  1. 基线模型:首先,使用未经微调的策略模型生成响应。

  2. 微调:使用奖励模型和强化学习算法(如RAFT)对策略模型进行微调。微调的目标是提高策略模型生成高质量响应的能力。

  3. 评估

  • 胜率(Win Rate):在测试集上,裁判对SFT后和SFT前模型的回答进行选择。胜率定义为SFT后策略模型生成的响应被选中的比例。裁判:reward模型、GPT-4o、人类裁判。
  • 一致性:通过比较人类评估者和奖励模型的评估结果来评估一致性,以确保奖励模型的评估结果与人类偏好一致。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《Trustzone/TEE/安全从入门到精通-标准版》

CSDN学院课程连接:https://edu.csdn.net/course/detail/39573 讲师介绍 拥有 12 年手机安全、汽车安全、芯片安全开发经验,擅长 Trustzone/TEE/ 安全的设计与开发,对 ARM 架构的安全领域有着深入的研究和丰富的实践经验,能够将复杂的安全知识和处理器架构知识进行系统整…

Pyecharts之地图图表的强大功能

在数据可视化领域中,地图图表是一种强大的工具,能够直观地展现与地理位置相关的数据信息,帮助我们更好地洞察数据的地域特征和分布规律。Pyecharts 为我们提供了丰富的地图图表功能,让我们可以轻松实现各种地理信息的可视化展示。…

政安晨的AI大模型训练实践三:熟悉一下LF训练模型的WebUI

政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正! 目录 启动WebUI 微调模型 LLaMA-Factory 支持通过 WebUI 零代码微调大语言模型。 启动Web…

【2024年华为OD机试】(A卷,200分)- 创建二叉树 (JavaScriptJava PythonC/C++)

一、问题描述 构建二叉树并返回根节点 题目描述 请按下列描述构建一颗二叉树,并返回该树的根节点: 先创建值为-1的根结点,根节点在第0层;然后根据operations依次添加节点:operations[i] = [height, index] 表示对第 height 层的第 index 个节点 node,添加值为 i 的子节…

有限元分析学习——Anasys Workbanch第一阶段_终篇_齿轮整体强度案例分析

目录 0 序言 1 齿轮整体强度分析案例 1.1 模型简化 1.2 前处理 1)分析类型选择 2)设置平面参数 3)约束、载荷及接触 2 控制网格 a.初次生成网格,对局部网格不做控制 b.第一次调整接触网格,接触面网格控制为…

Final2x--开源AI图片放大工具

Final2x--开源AI图片放大工具 链接:https://pan.xunlei.com/s/VOHSklukQAquUn3GE7eHJXfOA1?pwdr3r3#

【由浅入深认识Maven】第2部分 maven依赖管理与仓库机制

文章目录 第二篇:Maven依赖管理与仓库机制一、前言二、依赖管理基础1.依赖声明2. 依赖范围(Scope)3. 依赖冲突与排除 三、Maven的仓库机制1. 本地仓库2. 中央仓库3. 远程仓库 四、 版本管理策略1. 固定版本2. 版本范围 五、 总结 第二篇&…

HTML一般标签和自闭合标签介绍

在HTML中,标签用于定义网页内容的结构和样式。标签通常分为两类:一般标签(也称为成对标签或开放闭合标签)和自闭合标签(也称为空标签或自结束标签)。 以下是这两类标签的详细说明: 一、一般标…

(5)STM32 USB设备开发-USB键盘

讲解视频:2、USB键盘-下_哔哩哔哩_bilibili 例程:STM32USBdevice: 基于STM32的USB设备例子程序 - Gitee.com 本篇为使用使用STM32模拟USB键盘的例程,没有知识,全是实操,按照步骤就能获得一个STM32的USB键盘。本例子是…

[SUCTF 2018]MultiSQL1

进去题目页面如下 发现可能注入点只有登录和注册,那么我们先注册一个用户,发现跳转到了/user/user.php, 查看用户信息,发现有传参/user/user.php?id1 用?id1 and 11,和?id1 and 12,判断为数字型注入 原本以为是简单的数字型注入,看到大…

阿里云-银行核心系统转型之业务建模与技术建模

业务领域建模包括业务建模和技术建模,整体建模流程图如下: 业务建模包括业务流程建模和业务对象建模 业务流程建模:通过对业务流程现状分析,结合目标核心系统建设能力要求,参考行业建 模成果,形成结构化的…

接口(完)

大家好,今天我们着重来总结一下接口的知识,并且将接口和抽象类的区别罗列一下,帮助我们更好的认识抽象类和接口。 2.7 抽象类和接口的区别. 抽类和接口都是Java中多态的常见使用方式,都需要重点掌握,同时又要认清两者的区别(重要!!&#xf…

windows11关闭系统更新详细操作步骤

文章目录 1.打开注册表2.修改注册表内容2.1 新建文件2.2 修改值 3.修改设置 1.打开注册表 winR输入regedit(如下图所示) 2.修改注册表内容 进HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings 2.1 新建文件 右侧界面右键即可 2.2 修改值 重命名为如下…

改进候鸟优化算法之二:基于混沌映射的候鸟优化算法(MBO-CM)

基于混沌映射的候鸟优化算法(Migrating Birds Optimization based on Chaotic Mapping,MBO-CM)是一种结合了混沌映射与候鸟优化算法(Migrating Birds Optimization,MBO)的优化方法。 一、候鸟优化算法(MBO)简介 候鸟优化算法是一种自然启发的元启发式算法,由Duman等人…

Linux学习笔记——网络管理命令

一、网络基础知识 TCP/IP四层模型 以太网地址(MAC地址): 段16进制数据 IP地址: 子网掩码: 二、接口管命令 ip命令:字符终端,立即生效,重启配置会丢失 nmcli命令:字符…

力扣hot100-->滑动窗口、贪心

你好呀,欢迎来到 Dong雨 的技术小栈 🌱 在这里,我们一同探索代码的奥秘,感受技术的魅力 ✨。 👉 我的小世界:Dong雨 📌 分享我的学习旅程 🛠️ 提供贴心的实用工具 💡 记…

Linux_线程控制

线程控制的相关接口 进程创建相关 之前我们已经认识到了pthread_create函数用来创建线程&#xff0c;这里不再赘述。 pthread_self函数 void* routine(void* args) {std::cout << "我是新线程..." << pthread_self() << std::endl;return null…

[java] 面向对象进阶篇1--黑马程序员

目录 static 静态变量及其访问 实例变量及其访问 静态方法及其访问 实例方法及其访问 总结 继承 作用 定义格式 示例 总结 子类不能继承的内容 继承后的特点 成员变量 成员变量不重名 成员变量重名 super访问父类成员变量 成员方法 成员方法不重名 成员方法…

TCP 三次握手四次挥手

目录 TCP 三次握手 1. SYN (Synchronize&#xff1a;同步) 2. SYN-ACK (Synchronize Acknowledge&#xff1a;同步确认) 3. ACK (Acknowledge&#xff1a;确认) 为什么是三次而不是两次或四次&#xff1f; 三次握手的作用 TCP 四次挥手 第一次挥手&#xff1a;客户端发送 FIN …

Vue2下篇

插槽&#xff1a; 基本插槽&#xff1a; 普通插槽&#xff1a;父组件向子组件传递静态内容。基本插槽只能有一个slot标签&#xff0c;因为这个是默认的位置&#xff0c;所以只能有一个 <!-- ParentComponent.vue --> <template> <ChildComponent> <p>…