【偏好对齐】通过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θt−qθt−1。
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)=y∣y<tmaxrθ(y),qθst(y<t,yt)=Eπref(y∣y<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(yi∣y<t)πθ(yi∣y<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(y∣y≤t)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θt−qθt−1=i=t−1∑tβlogπref(yi∣y<i)πθ(yi∣y<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(y∣y<t)rθ(y)≤qθt(y<t,yt)≤y∣y<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
论文地址:https://arxiv.org/pdf/2412.01981 相关博客 【自然语言处理】【大模型】 ΨPO:一个理解人类偏好学习的统一理论框架 【强化学习】PPO:近端策略优化算法 【偏好对齐】PRM应该奖励单个步骤的正确性吗? 【偏好对齐】通过OR…...
Python与其他编程语言的区别是什么?
Python是一种广泛使用的高级编程语言,以其简洁的语法、强大的库支持和广泛的应用领域而著称。与其他编程语言相比,Python具有许多独特的特点和优势。以下将从多个方面详细探讨Python与其他编程语言的区别,并通过示例进行说明。 一、语法简洁…...
cuda11.6和对应的cudnn(windows)
因为每次不同的torch版本要下对应的cuda,这次刚好在Windows上下好了一个cuda11.6和对应的cudnn,直接放到网盘中,大家有需要对应版本的可以直接下载: 链接:https://pan.quark.cn/s/f153a53830d4 大家自取,c…...
24年无人机行业资讯 | 12.23-12.29
24年无人机行业资讯 | 12.23-12.29 1、 国家发改委新设低空经济司,助力低空经济规范发展2、商务部支持无人机民用国际贸易,强调出口管制与安全并重3、滨州高新区首架无人机成功下线4、 2025第九届世界无人机大会筹备推进会顺利召开5、2024年世界无人机竞…...
uniapp:微信小程序文本长按无法出现复制菜单
一、问题描述 在集成腾讯TUI后,为了能让聊天文本可以复制,对消息组件的样式进行修改,主要是移除下面的user-select属性限制: user-select: none;-webkit-user-select: none;-khtml-user-select: none;-moz-user-select: none;-ms…...
qml Item详解
1、概述 Item是QML(Qt Modeling Language)的基础元素,所有其他可视化元素都继承自它。它代表了一个可视化的对象,虽然Item对象本身没有可视外观,但它定义了所有可视项之间通用的属性,比如位置、大小、旋转…...
【Java回顾】Day4 反射机制
反射机制 之前学过一部分,笔记在20250103Java包_网络编程.md里,这里在之前的笔记的基础上做一些补充。 反射:得到class对象后反向获取对象的各种信息。 包 Field 类或接口中的字段(成员变量),动态访问和修改类的字段 模板 获取Class 对象 …...
【沉默的羔羊心理学】汉尼拔的“移情”游戏:操纵与理解的艺术,精神分析学视角下的角色互动
终极解读《沉默的羔羊》:弗洛伊德精神分析学视角下的深层剖析 关键词 沉默的羔羊弗洛伊德精神分析学角色心理意识与潜意识性别与身份 弗洛伊德精神分析学简介 弗洛伊德的精神分析学是心理学的一个重要分支,主要关注人类行为背后的无意识动机和冲突。…...
[深度学习] 大模型学习1-大语言模型基础知识
大语言模型(Large Language Model,LLM)是一类基于Transformer架构的深度学习模型,主要用于处理与自然语言相关的各种任务。简单来说,当用户输入文本时,模型会生成相应的回复或结果。它能够完成许多任务&…...
如何解决数据库和缓存不一致的问题
目录 一、Cache-Aside模式(旁路缓存模式) 二、Write-Through模式(写透缓存模式) 三、Write-Behind模式(写回缓存模式) 四、先删除缓存再更新数据库(不推荐,存在风险)…...
剑指Offer|LCR 021. 删除链表的倒数第 N 个结点
LCR 021. 删除链表的倒数第 N 个结点 给定一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head [1,2,3,4,5], n 2 输出:[1,2,3,5]示例 2: 输入:head [1], n 1…...
【NX入门篇】
NX入门篇 一、UG NX 由来二、软件如何启动(UG NX 12.0)三、使用步骤四、常用命令 一、UG NX 由来 UG NX由来: 1969 年:UG 的开发始于美国麦道航空公司,基于 C 语言开发实现;1976 年:UG问世&am…...
ubuntu如何禁用 Snap 更新
.禁用 Snap 更新(通过修改 snapd 配置) 打开并编辑 /etc/apt/apt.conf.d/50unattended-upgrades文件。 这个文件控制自动更新的行为。 sudo vim /etc/apt/apt.conf.d/50unattended-upgrades 里面有一行将里面的auto改为false即可禁用更新:…...
Spring AI Alibaba-对话模型(Chat Model)
对话模型(Chat Model)接收一系列消息(Message)作为输入,与模型 LLM 服务进行交互,并接收返回的聊天消息(Chat Message)作为输出。相比于普通的程序输入,模型的输入与输出…...
HTML——79.代码快捷输入方式
!DOCTYPE html> <html><head><meta charset"UTF-8"><title>代码快捷输入方式</title></head><body><!--1.父子关系:--><!--div>p 加Tab键--><div><p></p></div><…...
李宏毅机器学习课程笔记01 | 1.Introduction of Machine/Deep Learning
笔记是在语雀上面做的,粘贴在CSND上可能存在格式错误 机器学习的本质就是借助机器寻找一个转换函数 根据函数的输出类型,可以将机器学习进行分类 regression 回归任务:函数输出时一个数值classification 分类任务:人类设定好选项…...
1、pycharm、python下载与安装
1、去官网下载pycharm 官网:https://www.jetbrains.com/pycharm/download/?sectionwindows 2、在等待期间,去下载python 进入官网地址:https://www.python.org/downloads/windows/ 3、安装pycharm 桌面会出现快捷方式 4、安装python…...
计算机网络复习(学习通作业4、5、6系统答案)
📢📢📢传送门 一、作业4一. 计算题(共1题,100分) 二、作业5一. 简答题(共1题,30分)路由器属于那一层的互联设备?路由器结构包含哪两个部分?请解释…...
javascript 绘制图表的几种方式
JavaScript 中,绘制图表的常用方法是使用图表库,它们提供了便捷的 API 和功能来实现图形和数据可视化。以下是几种常见的 JavaScript 图表绘制库以及如何使用它们来绘制图表的示例: 1. Chart.js Chart.js 是一个轻量级、简单易用的图表库,支持多种图表类型,如线性图、柱…...
【网络协议】开放式最短路径优先协议OSPF详解(四)
前言 在本章的第一部分和第二部分中,我们探讨了OSPF的基本配置,并进一步学习了更多OSPF的概念,例如静态路由的重分发及其度量值。在第三部分中,我们讨论了多区域OSPF。在第四部分中,我们将关注OSPF与多访问网络&#…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命
在华东塑料包装行业面临限塑令深度调整的背景下,江苏艾立泰以一场跨国资源接力的创新实践,重新定义了绿色供应链的边界。 跨国回收网络:废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点,将海外废弃包装箱通过标准…...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
SpringCloudGateway 自定义局部过滤器
场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...
搭建DNS域名解析服务器(正向解析资源文件)
正向解析资源文件 1)准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2)服务端安装软件:bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...
第7篇:中间件全链路监控与 SQL 性能分析实践
7.1 章节导读 在构建数据库中间件的过程中,可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中,必须做到: 🔍 追踪每一条 SQL 的生命周期(从入口到数据库执行)&#…...
第八部分:阶段项目 6:构建 React 前端应用
现在,是时候将你学到的 React 基础知识付诸实践,构建一个简单的前端应用来模拟与后端 API 的交互了。在这个阶段,你可以先使用模拟数据,或者如果你的后端 API(阶段项目 5)已经搭建好,可以直接连…...
6️⃣Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙
Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙 一、前言:离区块链还有多远? 区块链听起来可能遥不可及,似乎是只有密码学专家和资深工程师才能涉足的领域。但事实上,构建一个区块链的核心并不复杂,尤其当你已经掌握了一门系统编程语言,比如 Go。 要真正理解区…...
