当前位置: 首页 > 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与多访问网络&#…...

PingFangSC字体实战指南:跨平台字体解决方案的最佳实践

PingFangSC字体实战指南&#xff1a;跨平台字体解决方案的最佳实践 【免费下载链接】PingFangSC PingFangSC字体包文件、苹果平方字体文件&#xff0c;包含ttf和woff2格式 项目地址: https://gitcode.com/gh_mirrors/pi/PingFangSC 行业痛点诊断 场景导入&#xff1a;设…...

避坑指南:RuoYi-Vue2集成Flowable 6.7.2时,关于database-schema-update和nullCatalogMeansCurrent的配置详解

深度解析&#xff1a;RuoYi-Vue2集成Flowable 6.7.2的数据库配置陷阱与实战策略 当企业级应用需要引入工作流引擎时&#xff0c;Flowable因其轻量化和高性能成为许多开发团队的首选。然而在RuoYi-Vue2框架中集成Flowable 6.7.2版本时&#xff0c;数据库配置环节往往成为开发者的…...

C# 核心技术解析:Parse vs TryParse 实战指南

文章目录1. 核心区别&#xff1a;暴力型 vs. 稳重型Parse: 默认数据正确TryParse: 典型的 C# 模式示例2. 执行流程图3. 性能4. 高性能方案4.1. 高性能转换&#xff1a;Span<char> 与 Utf8Parser4.2. 执行流程&#xff1a;内存视角4.3. 类型转换对比5. 易混淆在 C# 处理字…...

别再为小Batch Size发愁了!手把手教你用Group Normalization稳定训练你的PyTorch模型

别再为小Batch Size发愁了&#xff01;手把手教你用Group Normalization稳定训练你的PyTorch模型 当你在训练深度学习模型时&#xff0c;是否遇到过这样的困境&#xff1a;由于GPU显存限制&#xff0c;只能使用较小的batch size&#xff0c;结果模型训练变得极不稳定&#xff…...

FireRedASR Pro避坑指南:模型加载报错的快速解决方法

FireRedASR Pro避坑指南&#xff1a;模型加载报错的快速解决方法 1. 常见模型加载问题概述 当你第一次尝试运行FireRedASR Pro时&#xff0c;可能会遇到各种模型加载报错。这些错误通常集中在三个关键环节&#xff1a; 权重文件加载失败&#xff1a;PyTorch版本不兼容导致的…...

Android14 SurfaceFlinger启动流程与线程调度机制解析

1. SurfaceFlinger的启动入口与初始化流程 Android显示系统的核心服务SurfaceFlinger由init进程启动&#xff0c;这个设计保证了它在系统早期就能准备好图形合成能力。main函数作为入口点&#xff0c;首先做了一系列关键初始化&#xff1a; 设置Binder线程池的最大线程数为4&…...

Vivado实战:从零封装自定义接口IP核的完整流程

1. 为什么需要封装自定义IP核 第一次接触FPGA开发时&#xff0c;我总喜欢把整个工程的所有代码都堆在一个项目里。直到某天需要复用之前的HDMI显示模块时&#xff0c;才发现要手动复制几十个文件&#xff0c;还得逐个修改端口连接。这种重复劳动让我意识到&#xff1a;封装IP核…...

Focaler-IoU: More Focused Intersection over Union——更聚焦的交并比损失

《Focaler-IoU: More Focused Intersection over Union Loss》主要研究内容可以全面概括如下&#xff1a; 研究背景与问题&#xff1a; 在目标检测任务中&#xff0c;边界框回归的精度很大程度上取决于损失函数的设计。现有的IoU-based损失函数&#xff08;如GIoU、CIoU、EIoU…...

Magisk系统权限架构深度解析:Android设备Root权限优雅解决方案

Magisk系统权限架构深度解析&#xff1a;Android设备Root权限优雅解决方案 【免费下载链接】Magisk The Magic Mask for Android 项目地址: https://gitcode.com/GitHub_Trending/ma/Magisk Magisk作为Android系统权限管理领域的革命性工具&#xff0c;通过独特的系统化…...

Python实战:5分钟搞定睿尔曼机械臂与AGV底盘的Socket通信(附完整代码)

Python实战&#xff1a;5分钟搞定睿尔曼机械臂与AGV底盘的Socket通信&#xff08;附完整代码&#xff09; 在工业自动化领域&#xff0c;复合机器人正逐渐成为提升生产效率的关键设备。这类机器人通常由AGV&#xff08;自动导引运输车&#xff09;底盘和机械臂组成&#xff0c;…...