0 abstract

Preference-based reinforcement learning (PbRL) provides a natural way to align RL agents’ behavior with human desired outcomes, but is often restrained by costly human feedback. To improve feedback efficiency, most existing PbRL methods focus on selecting queries to maximally improve the overall quality of the reward model, but counter-intuitively, we find that this may not necessarily lead to improved performance. To unravel this mystery, we identify a long-neglected issue in the query selection schemes of existing PbRL studies: Query-Policy Misalignment. We show that the seemingly informative queries selected to improve the overall quality of reward model actually may not align with RL agents’ interests, thus offering little help on policy learning and eventually resulting in poor feedback efficiency. We show that this issue can be effectively addressed via near on-policy query and a specially designed hybrid experience replay, which together enforce the bidirectional query-policy alignment. Simple yet elegant, our method can be easily incorporated into existing approaches by changing only a few lines of code. We showcase in comprehensive experiments that our method achieves substantial gains in both human feedback and RL sample efficiency, demonstrating the importance of addressing query-policy misalignment in PbRL tasks.

  • background: PbRL 提供了一种自然的方法,使 RL agent 的行为与人类期望一致,但 human feedback 通常 expensive。为了提高 feedback-efficiency,现有的大多数 PbRL 方法,都侧重于 query selection 的优化,希望选择 reward model 质量提升的 queries,但与直觉相反,我们发现,这不一定会导致性能提高。
  • 问题:为了解开这个谜团,我们在现有 PbRL 工作的 query selection 方案中,发现了一个长期被忽视的问题:query 与 policy 的 misalignment。我们发现,选择的看似 informative 的 query,实际上可能与 RL agent 的兴趣不一致,因此对 policy learning 几乎没有帮助,最终导致 feedback-efficiency 低下。
  • method:我们表明,这个问题可以通过 ① near on-policy query + ② 专门设计的 hybrid experience replay 来有效解决,它们共同强制 query-policy 的 alignment。简单而优雅,只需更改几行代码,该技术即可轻松合并到现有方法中。
  • result:实验表明,我们的方法在 human feedback-efficiency 和 RL sample-efficiency 方面,都取得了实质性的收益,这证明,解决 PbRL 任务中 query-policy misalignment 的问题,具有重要性。

4 query-policy misalignment & 5 query-policy alignment (QPA)

query-policy misalignment:

  • a motivating example:在一个 agent 从坐标 (0,0) 跑到 (10,10) 的环境中,发现基于 disagreement 选取的 queries,都跟当前策略真正会访问的 state-action 分布不太一样。
  • 相当于,teacher 提供了一些情况下的 preference,但 policy 根本不会遇到这些情况;reward function 可能全局上更好了,但对于 policy learning 没什么贡献。(感觉像我导会说的话,world model 更好了,但控制真的需要这么好的 world model 嘛,world model 更好会直接让控制更好嘛,之类的话)

near on-policy query selection:

  • 直译:几乎 on-policy 的 query selection。
  • 直接把当前 policy 最新生产的 trajectory,拿去当 queried segments。
  • 作者声称很好实现,把存储 query selection 的 replay buffer 的 size 改小即可,这样 replay buffer 里就只能存下最新生产的 trajectory 了。

关键技术:

  • ① near on-policy query selection,就像前面说的那样。
  • ② hybrid experience replay。
    • 在学 Q function 的时候,对于(比如说)DQN ,因为是 off-policy 算法,所以一般会随机采样一些 transition,来最小化 TD-error、更新 Q function。
    • 这里提出了新的采样策略:一半数据直接从 near on-policy 的 replay buffer 里面采样,另一半则均匀随机 uniform 采样。
    • 作者声称,这样可以实现 1. 提高 Q learning 效率、2. 让 Q function 不至于落入局部最优 的权衡。

理论 insight:

  • 若 \(\|\hat r_\psi-r\|_{d^\pi}\le\epsilon\) 、 \(\|Q^\pi_{\hat r_\psi}-\hat Q^\pi_{\hat r_\psi}\|_{d^\pi}\le\alpha\) ,则有 upper bound \(\|Q_r^\pi-\hat Q^\pi_{\hat r_\psi}\|_{d^{\pi}} \le\frac{\epsilon}{1-\gamma}+\alpha\) 。
  • hat r_ψ :学到的 reward model;r :ground truth reward;Q hat : Q-learning 学出来的 Q function;Q 真正的 Q value。
  • Q value 需要在同一 policy 的 state-action 分布下计算( \(d^\pi\) 下标)。理论 insight:希望分布 \(d^\pi\) 下的 reward model 与 ground truth reward 尽可能接近,因此要多在分布 \(d^\pi\) 下学 reward。

关键技术:

  • ③ 还使用了 reward learning 的 data augmentation(类似 这篇博客 4.2 节 记录的做法)。后面做了对 data augmentation 的 ablation。

(一个实验画图的细节: figure 6 中,黑色虚线表示最后一个 feedback 收集步骤)

RLHF · PbRL | QPA:选择 near on-policy query,加速 policy learning 收敛速度的更多相关文章

  1. 选择…Select…(Power Query 之 M 语言)

    选择行: 筛选Table.SelectRows-文本与数值 筛选Table.SelectRows-日期与时间 保留错误行:= Table.SelectRowsWithErrors( 表, {" ...

  2. Policy Improvement and Policy Iteration

    From the last post, we know how to evaluate a policy. But that's not enough, because the purpose of ...

  3. Provider Policy与Consumer Policy在bnd中的区别

    首先需要了解的是bnd的相关知识: 1. API(也就是接口), 2. API Provider(接口的实现) 3. API Consumer( 接口的使用者) OSGi中的一个版本有4个部分:    ...

  4. Jmeter之csv、用户自定义变量以及Query Type分析(八)

    很多童鞋不知道对于Jmeter的Query Type 不知道选哪个,为什么选,怎么选! 下面这边做个简单的分析, 那么首先什么是CSV Data Set Config,有什么用呢? CSV Data ...

  5. trait与policy模板技术

    trait与policy模板技术 我们知道,类有属性(即数据)和操作两个方面.同样模板也有自己的属性(特别是模板参数类型的一些具体特征,即trait)和算法策略(policy,即模板内部的操作逻辑). ...

  6. Network Policy - 每天5分钟玩转 Docker 容器技术(171)

    Network Policy 是 Kubernetes 的一种资源.Network Policy 通过 Label 选择 Pod,并指定其他 Pod 或外界如何与这些 Pod 通信. 默认情况下,所有 ...

  7. 1.4 配置备份策略(Policy)

    1.1 配置备份策略(Policy) 一个备份策略由四部分组成. Attributes(属性) Policy是否Active Policy类型 由此Policy产生的任务的优先级 使用的Storage ...

  8. 1.4 NBU配置备份策略(Policy)

    1.4 配置备份策略(Policy) 一个备份策略由四部分组成. Attributes(属性) Policy是否Active Policy类型 由此Policy产生的任务的优先级 使用的Storage ...

  9. 强化学习七 - Policy Gradient Methods

    一.前言 之前我们讨论的所有问题都是先学习action value,再根据action value 来选择action(无论是根据greedy policy选择使得action value 最大的ac ...

  10. Deep Learning专栏--强化学习之从 Policy Gradient 到 A3C(3)

    在之前的强化学习文章里,我们讲到了经典的MDP模型来描述强化学习,其解法包括value iteration和policy iteration,这类经典解法基于已知的转移概率矩阵P,而在实际应用中,我们 ...

随机推荐

  1. GoFrame Goland插件

    前言 GoFrame 是一款模块化.高性能.企业级的 Go 基础开发框架.GoFrame 是一款通用性的基础开发框架,是 Golang 标准库的一个增强扩展级,包含通用核心的基础开发组件,优点是实战化 ...

  2. 使用vLLM和ChatGLM3-6b批量推理

    当数据量大的时候,比如百万级别,使用 ChatGLM3-6b 推理的速度是很慢的.发现使用 vLLM 和 ChatGLM3-6b 批量推理极大的提高了推理效率.本文主要通过一个简单的例子进行实践. 1 ...

  3. pytest+allure+jenkins+python+git,实现Linux服务器看测试报告,并发送邮件通知

    1.简介 pytest:一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高. allure:是开源测试报告框架. jenkins:持 ...

  4. ASR项目实战-产品分析

    分析Google.讯飞.百度.阿里.QQ.搜狗等大厂的ASR服务,可以罗列出一款ASR服务所需要具备的能力. 产品分类 ASR云服务产品,从用户体验.时效性.音频时长,可以划分为如下几类: 实时短音频 ...

  5. 正则表达式之grep与sed用法

    一.grep和egrep的用法 (一)grep用法 grep是根据给出的条件查找特定的字符.用单引号查找指定的单词,图1.1.grep后面可选项用**-n显示查找的行数:-i不区分大小写查找图1.2 ...

  6. three.js中帧缓存的使用

    目录 1. 概述 2. 示例 2.1. 代码 2.2. 解析 3. 参考 1. 概述 在网上查阅了一下three.js关于帧缓存的使用,感觉很多都是关于three.js中后处理通道的使用的.后处理通道 ...

  7. 抖音上超好听的神曲音乐,Python教你一次性下载

    不知道什么时候开始,中国出现了南抖音.北快手的互文格局(东市买骏马,西市买鞍鞯-).刚才提到了,之前比较喜欢刷抖音,对于我这种佛系程序猿,看网上这些整容妹子基本一个样.喜欢抖音主要是两个初衷,学做菜听 ...

  8. 解读顶会CIKM'21 Historical Inertia论文

    摘要:本文(Historical Inertia: An Ignored but Powerful Baseline for Long Sequence Time-series Forecasting ...

  9. JVM内存模型,你看这一篇就够了

    摘要:JVM是一种用于计算设备的规范,是一个虚构出来的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的. 本文分享自华为云社区<[云驻共创]JVM内存模型的探知之旅>,作者:多米 ...

  10. webpack性能优化(1):分隔/分包/异步加载+组件与路由懒加载

    webpack ensure相信大家都听过.有人称它为异步加载,也有人说做代码切割,那这个家伙到底是用来干嘛的?其实说白了,它就是把js模块给独立导出一个.js文件的,然后使用这个模块的时候,webp ...