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. Head First Java学习:第八章-接口和抽象类

    第八章:接口和抽象类 深入多态 1.抽象类:有些类不应该被初始化 在类声明前面加上抽象类的关键字,abstract. 防止类被初始化,即不能被"new"创建该类的实例(要求) 还是 ...

  2. SpringCloudAlibaba-OSS文件上传

    一.引入相关依赖 <dependencyManagement> <dependencies> <dependency> <groupId>com.ali ...

  3. ROW_NUMBER 开窗函数优化方案(Oracle && PostgreSQL 性能比对)

    帮朋友优化一条很简单的窗口函数 ROW_NUMBER() OVER() , Oracle 迁移 PostgreSQL项目. 原始SQL和执行计划 STUDENT_BAK 表我模拟的数据,3千万行数据. ...

  4. KNN算法之KD树(K-dimension Tree)实现 K近邻查询

    KD树是一种分割k维数据空间的数据结构,主要应用于多维空间关键数据的搜索,如范围搜索和最近邻搜索. KD树使用了分治的思想,对比二叉搜索树(BST),KD树解决的是多维空间内的最近点(K近点)问题.( ...

  5. python异步编程之asyncio初识

    async await介绍 用asyncio提供的@asyncio.coroutine可以把一个生成器标记为协程类型,然后在协程内部用yield from 等待IO操作,让出cpu执行权. 然而异步的 ...

  6. django 定时任务 apscheduler 踩坑

    本想每天定点的去查询一些数据然后用钉钉机器人发出来,前两三天还好好的,后面就执行 ERROR了 看了下错误问题,就跟连不上数据库一样,参考别人的解决方法 scheduler.add_job(every ...

  7. 斯坦福 UE4 C++ ActionRoguelike游戏实例教程 14. 使用GameplayTag实现防守反击技能

    斯坦福课程 UE4 C++ ActionRoguelike游戏实例教程 0.绪论 概述 本篇文章对应Lecture 17 - GameplayTags, 70节.本文将会结合前几节课使用的能力系统和G ...

  8. 华为云弹性云服务器ECS搭建FTP服务实践

    摘要:在使用华为弹性云服务器ECS搭建FTP服务的时候,经常会遇到搭建完成后无法访问的问题.本篇通过演示windows IIS搭建FTP方法,讲解ftp主动模式.被动模式原理来说明无法访问的原因及解决 ...

  9. Tarjan:这个算法大神

    摘要:图的算法是进行静态分析的基础数据算法,如何提高图的分析效率,就需要对图的算法有进一步的认识. 1. 引言 在静态分析技术中, 我们常用会将代码转成抽象语法树(AST), 然后采用深度遍历(DFS ...

  10. “数”驰天下,华为云DRS 高效支撑T3出行平稳迁移

    摘要:华为云DRS成功助力T3出行在规定时间内完成数十TB级全量数据的迁移. 数字化潮流浩浩汤汤,企业上云如火如荼,网约车行业也借助这一股东风展现出了蓬勃的生命力,因为它的高效便捷,吸引了越来越多的都 ...