当前位置: 首页 > news >正文

【偏好对齐】通过ORM直接推导出PRM

论文地址:https://arxiv.org/pdf/2412.01981

相关博客
【自然语言处理】【大模型】 ΨPO:一个理解人类偏好学习的统一理论框架
【强化学习】PPO:近端策略优化算法
【偏好对齐】PRM应该奖励单个步骤的正确性吗?
【偏好对齐】通过ORM直接推导出PRM

一、PRM的成本和性能困境

1. ORM和PRM

​ 在强化学习中,奖励模型用于评估模型的输出。常见的两种奖励模型是结果奖励模型(ORM)和过程奖励模型(PRM)。ORM为整个响应分配一个稀疏奖励,而PRM则为每个中间步骤提供奖励。

ORM和PRM奖励分配方式。令 x x x表示指令, y y y为包含n个步骤的响应, y t y_t yt为第t步的响应, y < t y_{<t} y<t表示前t-1步的响应。PRM为第t步分配的奖励为 r θ t ( y < t , y t ) r^{t}_{\theta}(y_{<t},y_t) rθt(y<t,yt)。令Q值 q θ t ( y < t , y t ) q_{\theta}^t(y_{<t},y_t) qθt(y<t,yt)表示基于响应 y < t y_{<t} y<t和当前步骤 y t y_t yt的奖励 r θ r_{\theta} rθ的期望值。先前的研究将过程奖励定义为每个步骤的正确性,而近期研究则将其定义为优势值。即Q值之差: r θ t : = q θ t − q θ t − 1 r_{\theta}^t:=q_{\theta}^t-q_{\theta}^{t-1} rθt:=qθtqθt1

2. PRM的优势

效果。结果奖励模型和过程奖励模型都能够提供奖励以评估模型的输出。然而,PRM在训练和推理时都表现出优于ORM的优势。

效率。PRM提供密集的步骤级奖励能让强化学习(RL)训练变得稳定且高效。

3. PRM的困境

​ 尽管PRM很有效,但其训练难度更大,主要挑战在于训练数据的收集。为了收集PRM的训练数据,通常需要使用蒙特卡洛树搜索(MCTS)进行自动步骤标注。

​ MCTS基于指令和前t步的响应来采样多条轨迹,每条轨迹都会产生一个最终答案。但是,这种方法会带来高额的额外成本,并且由于标注过程存在噪声,可能会导致性能欠佳。

4. MCTS估计的问题

估计策略:

在MCTS中,有两种常见的标签估计策略:

  • 硬估计:如果有任意rollout是正确的,那么步骤tt被标注为1,否则为0。即 l t = max ⁡ { c 1 , c 2 , … , c N } l_t=\max\{c_1,c_2,\dots,c_N\} lt=max{c1,c2,,cN}
  • 软估计:步骤t被标注为所有rollout中正确答案的比例,也就是 l t = ∑ t = 1 N c t / N l_t=\sum_{t=1}^N c_t/N lt=t=1Nct/N

令ORM为 θ \theta θ,基于硬估计数据训练的PRM为 θ h \theta_h θh,基于软估计数据训练的PRM为 θ s \theta_s θs,那么两种策略的Q值表示为
q θ h t ( y < t , y t ) = max ⁡ y ∣ y < t r θ ( y ) , q θ s t ( y < t , y t ) = E π r e f ( y ∣ y < t ) r θ ( y ) q_{\theta_h}^t(y_{<t},y_t)=\max_{y|y_{<t}} r_{\theta}(y),q_{\theta_s}^t(y_{<t},y_t)=\mathbb{E}_{\pi_{ref}(y|y_{<t})}r_{\theta}(y) \\ qθht(y<t,yt)=yy<tmaxrθ(y),qθst(y<t,yt)=Eπref(yy<t)rθ(y)
潜在问题:

尽管硬估计和软估计都有其合理性,但它们都存在噪音问题。具体来说:

  • 硬估计: q θ h t q_{\theta_h}^t qθht表示给定 y < t y_{<t} y<t的情况下的最大结果奖励 r θ r_{\theta} rθ,而不是期望值,因此会高估 Q Q Q值。
  • 软估计:对于 q θ s t q_{\theta_s}^t qθst,由于策略模型的能力通常有限,要针对困难的指令采样处正确的解决方案很难,会受假阴性噪音的影响,从而低估 Q Q Q

二、通过ORM直接构造PRM

​ MCTS虽然能够不借助人工来构造PRM数据,但是成本高昂且奖励值估计不准确。那么不通过MCTS,而是直接基于ORM来构造过程奖励可以吗?

1. 基于ORM构造PRM

​ ORM采用DPO中定义的形式,即 r θ ( y ) : = β log ⁡ π θ ( y ) π ref ( y ) r_{\theta}(y):=\beta\log\frac{\pi_{\theta}(y)}{\pi_{\text{ref}}(y)} rθ(y):=βlogπref(y)πθ(y)。令 q θ t ( y < t , y t ) : = ∑ i = 1 t β log ⁡ π θ ( y i ∣ y < i ) π ref ( y i ∣ y < t ) q_{\theta}^t(y_{<t},y_t):=\sum_{i=1}^t\beta\log\frac{\pi_{\theta}(y_i|y_{<i})}{\pi_{\text{ref}}(y_i|y_{<t})} qθt(y<t,yt):=i=1tβlogπref(yiy<t)πθ(yiy<i),那么 q θ t q_{\theta}^t qθt r ( θ ) r(\theta) r(θ)的指数平均值,即
q θ t ( y < t , y t ) = β log ⁡ E π r e f ( y ∣ y ≤ t ) e 1 β r θ ( y ) q_{\theta}^t(y_{<t},y_t)=\beta\log\mathbb{E}_{\pi_{ref}(y|y_{\leq t})}e^{\frac{1}{\beta}r_{\theta}(y)} \\ qθt(y<t,yt)=βlogEπref(yyt)eβ1rθ(y)
所以, q θ t q_{\theta}^t qθt表示结果奖励 r θ r_{\theta} rθ在步骤 t t t处的精确期望值,即Q值。

​ 既然, q θ t q_{\theta}^t qθt是Q值,那么若令过程奖励值为优势值,则可以直接计算 r θ t r_{\theta}^t rθt
r θ t : = q θ t − q θ t − 1 = ∑ i = t − 1 t β log ⁡ π θ ( y i ∣ y < i ) π ref ( y i ∣ y < i ) r_{\theta}^t:=q_{\theta}^t-q_{\theta}^{t-1}=\sum_{i=t-1}^t\beta\log\frac{\pi_{\theta}(y_i|y_{<i})}{\pi_{\text{ref}}(y_i|y_{<i})} \\ rθt:=qθtqθt1=i=t1tβlogπref(yiy<i)πθ(yiy<i)

2. 隐式PRM的奖励估计更合理

q θ s t = E π r e f ( y ∣ y < t ) r θ ( y ) ≤ q θ t ( y < t , y t ) ≤ max ⁡ y ∣ y < t r θ ( y ) = q θ h t q_{\theta_{s}}^t=\mathbb{E}_{\pi_{ref}(y|y_{<t})}r_{\theta}(y)\leq q_{\theta}^t(y_{<t},y_t)\leq\max_{y|y_{<t}}r_{\theta}(y)=q_{\theta_h}^t \\ qθst=Eπref(yy<t)rθ(y)qθt(y<t,yt)yy<tmaxrθ(y)=qθht

上面提出的隐式PRM理论上介于 q θ s t q_{\theta_s}^t qθst q θ h t q_{\theta_h}^t qθht之间,而 q θ s t q_{\theta_s}^t qθst q θ h t q_{\theta_h}^t qθht分别会低估和高估Q值,因此 q θ t q_{\theta}^t qθt的估计更加准确且鲁棒性更强。

三、实验

1. 效果

在这里插入图片描述

​ 论文中各种隐式PRM的效果优于baseline。

2. 效率

在这里插入图片描述

相关文章:

【偏好对齐】通过ORM直接推导出PRM

论文地址&#xff1a;https://arxiv.org/pdf/2412.01981 相关博客 【自然语言处理】【大模型】 ΨPO&#xff1a;一个理解人类偏好学习的统一理论框架 【强化学习】PPO&#xff1a;近端策略优化算法 【偏好对齐】PRM应该奖励单个步骤的正确性吗&#xff1f; 【偏好对齐】通过OR…...

Python与其他编程语言的区别是什么?

Python是一种广泛使用的高级编程语言&#xff0c;以其简洁的语法、强大的库支持和广泛的应用领域而著称。与其他编程语言相比&#xff0c;Python具有许多独特的特点和优势。以下将从多个方面详细探讨Python与其他编程语言的区别&#xff0c;并通过示例进行说明。 一、语法简洁…...

cuda11.6和对应的cudnn(windows)

因为每次不同的torch版本要下对应的cuda&#xff0c;这次刚好在Windows上下好了一个cuda11.6和对应的cudnn&#xff0c;直接放到网盘中&#xff0c;大家有需要对应版本的可以直接下载&#xff1a; 链接&#xff1a;https://pan.quark.cn/s/f153a53830d4 大家自取&#xff0c;c…...

24年无人机行业资讯 | 12.23-12.29

24年无人机行业资讯 | 12.23-12.29 1、 国家发改委新设低空经济司&#xff0c;助力低空经济规范发展2、商务部支持无人机民用国际贸易&#xff0c;强调出口管制与安全并重3、滨州高新区首架无人机成功下线4、 2025第九届世界无人机大会筹备推进会顺利召开5、2024年世界无人机竞…...

uniapp:微信小程序文本长按无法出现复制菜单

一、问题描述 在集成腾讯TUI后&#xff0c;为了能让聊天文本可以复制&#xff0c;对消息组件的样式进行修改&#xff0c;主要是移除下面的user-select属性限制&#xff1a; user-select: none;-webkit-user-select: none;-khtml-user-select: none;-moz-user-select: none;-ms…...

qml Item详解

1、概述 Item是QML&#xff08;Qt Modeling Language&#xff09;的基础元素&#xff0c;所有其他可视化元素都继承自它。它代表了一个可视化的对象&#xff0c;虽然Item对象本身没有可视外观&#xff0c;但它定义了所有可视项之间通用的属性&#xff0c;比如位置、大小、旋转…...

【Java回顾】Day4 反射机制

反射机制 之前学过一部分&#xff0c;笔记在20250103Java包_网络编程.md里,这里在之前的笔记的基础上做一些补充。 反射&#xff1a;得到class对象后反向获取对象的各种信息。 包 Field 类或接口中的字段(成员变量)&#xff0c;动态访问和修改类的字段 模板 获取Class 对象 …...

【沉默的羔羊心理学】汉尼拔的“移情”游戏:操纵与理解的艺术,精神分析学视角下的角色互动

终极解读《沉默的羔羊》&#xff1a;弗洛伊德精神分析学视角下的深层剖析 关键词 沉默的羔羊弗洛伊德精神分析学角色心理意识与潜意识性别与身份 弗洛伊德精神分析学简介 弗洛伊德的精神分析学是心理学的一个重要分支&#xff0c;主要关注人类行为背后的无意识动机和冲突。…...

[深度学习] 大模型学习1-大语言模型基础知识

大语言模型&#xff08;Large Language Model&#xff0c;LLM&#xff09;是一类基于Transformer架构的深度学习模型&#xff0c;主要用于处理与自然语言相关的各种任务。简单来说&#xff0c;当用户输入文本时&#xff0c;模型会生成相应的回复或结果。它能够完成许多任务&…...

如何解决数据库和缓存不一致的问题

目录 一、Cache-Aside模式&#xff08;旁路缓存模式&#xff09; 二、Write-Through模式&#xff08;写透缓存模式&#xff09; 三、Write-Behind模式&#xff08;写回缓存模式&#xff09; 四、先删除缓存再更新数据库&#xff08;不推荐&#xff0c;存在风险&#xff09;…...

剑指Offer|LCR 021. 删除链表的倒数第 N 个结点

LCR 021. 删除链表的倒数第 N 个结点 给定一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n 2 输出&#xff1a;[1,2,3,5]示例 2&#xff1a; 输入&#xff1a;head [1], n 1…...

【NX入门篇】

NX入门篇 一、UG NX 由来二、软件如何启动&#xff08;UG NX 12.0&#xff09;三、使用步骤四、常用命令 一、UG NX 由来 UG NX由来&#xff1a; 1969 年&#xff1a;UG 的开发始于美国麦道航空公司&#xff0c;基于 C 语言开发实现&#xff1b;1976 年&#xff1a;UG问世&am…...

ubuntu如何禁用 Snap 更新

.禁用 Snap 更新&#xff08;通过修改 snapd 配置&#xff09; 打开并编辑 /etc/apt/apt.conf.d/50unattended-upgrades文件。 这个文件控制自动更新的行为。 sudo vim /etc/apt/apt.conf.d/50unattended-upgrades 里面有一行将里面的auto改为false即可禁用更新&#xff1a;…...

Spring AI Alibaba-对话模型(Chat Model)

对话模型&#xff08;Chat Model&#xff09;接收一系列消息&#xff08;Message&#xff09;作为输入&#xff0c;与模型 LLM 服务进行交互&#xff0c;并接收返回的聊天消息&#xff08;Chat Message&#xff09;作为输出。相比于普通的程序输入&#xff0c;模型的输入与输出…...

HTML——79.代码快捷输入方式

!DOCTYPE html> <html><head><meta charset"UTF-8"><title>代码快捷输入方式</title></head><body><!--1.父子关系&#xff1a;--><!--div>p 加Tab键--><div><p></p></div><…...

李宏毅机器学习课程笔记01 | 1.Introduction of Machine/Deep Learning

笔记是在语雀上面做的&#xff0c;粘贴在CSND上可能存在格式错误 机器学习的本质就是借助机器寻找一个转换函数 根据函数的输出类型&#xff0c;可以将机器学习进行分类 regression 回归任务&#xff1a;函数输出时一个数值classification 分类任务&#xff1a;人类设定好选项…...

1、pycharm、python下载与安装

1、去官网下载pycharm 官网&#xff1a;https://www.jetbrains.com/pycharm/download/?sectionwindows 2、在等待期间&#xff0c;去下载python 进入官网地址&#xff1a;https://www.python.org/downloads/windows/ 3、安装pycharm 桌面会出现快捷方式 4、安装python…...

计算机网络复习(学习通作业4、5、6系统答案)

&#x1f4e2;&#x1f4e2;&#x1f4e2;传送门 一、作业4一. 计算题&#xff08;共1题&#xff0c;100分&#xff09; 二、作业5一. 简答题&#xff08;共1题&#xff0c;30分&#xff09;路由器属于那一层的互联设备&#xff1f;路由器结构包含哪两个部分&#xff1f;请解释…...

javascript 绘制图表的几种方式

JavaScript 中,绘制图表的常用方法是使用图表库,它们提供了便捷的 API 和功能来实现图形和数据可视化。以下是几种常见的 JavaScript 图表绘制库以及如何使用它们来绘制图表的示例: 1. Chart.js Chart.js 是一个轻量级、简单易用的图表库,支持多种图表类型,如线性图、柱…...

【网络协议】开放式最短路径优先协议OSPF详解(四)

前言 在本章的第一部分和第二部分中&#xff0c;我们探讨了OSPF的基本配置&#xff0c;并进一步学习了更多OSPF的概念&#xff0c;例如静态路由的重分发及其度量值。在第三部分中&#xff0c;我们讨论了多区域OSPF。在第四部分中&#xff0c;我们将关注OSPF与多访问网络&#…...

【Oracle APEX开发小技巧12】

有如下需求&#xff1a; 有一个问题反馈页面&#xff0c;要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据&#xff0c;方便管理员及时处理反馈。 我的方法&#xff1a;直接将逻辑写在SQL中&#xff0c;这样可以直接在页面展示 完整代码&#xff1a; SELECTSF.FE…...

23-Oracle 23 ai 区块链表(Blockchain Table)

小伙伴有没有在金融强合规的领域中遇见&#xff0c;必须要保持数据不可变&#xff0c;管理员都无法修改和留痕的要求。比如医疗的电子病历中&#xff0c;影像检查检验结果不可篡改行的&#xff0c;药品追溯过程中数据只可插入无法删除的特性需求&#xff1b;登录日志、修改日志…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

2021-03-15 iview一些问题

1.iview 在使用tree组件时&#xff0c;发现没有set类的方法&#xff0c;只有get&#xff0c;那么要改变tree值&#xff0c;只能遍历treeData&#xff0c;递归修改treeData的checked&#xff0c;发现无法更改&#xff0c;原因在于check模式下&#xff0c;子元素的勾选状态跟父节…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

分布式增量爬虫实现方案

之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面&#xff0c;避免重复抓取&#xff0c;以节省资源和时间。 在分布式环境下&#xff0c;增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路&#xff1a;将增量判…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA&#xff1a;通过低成本全身远程操作学习双手移动操作 传统模仿学习&#xff08;Imitation Learning&#xff09;缺点&#xff1a;聚焦与桌面操作&#xff0c;缺乏通用任务所需的移动性和灵活性 本论文优点&#xff1a;&#xff08;1&#xff09;在ALOHA…...