offline 2 online | Cal-QL:校准保守 offline 训出的 Q value,让它与真实 reward 尺度相当
- 论文标题:Cal-QL: Calibrated Offline RL Pre-Training for Efficient Online Fine-Tuning.
- NeurIPS 2023,5 5 6 6 poster;ICLR RRL workshop 2023 spotlight(神秘),两个 4: Good paper, strong accept。应该是先投的 ICLR workshop 再投的 NeurIPS 2023 吧…
- pdf:https://arxiv.org/pdf/2303.05479.pdf
- html:https://ar5iv.labs.arxiv.org/html/2303.05479
- open review:https://openreview.net/forum?id=GcEIvidYSw , https://openreview.net/forum?id=PhCWNmatOX
- 项目网站:https://nakamotoo.github.io/Cal-QL/(介绍的很清楚)
- video:https://youtu.be/r9CCdLeMJTg
- GitHub:https://github.com/nakamotoo/Cal-QL
0 abstract
A compelling use case of offline reinforcement learning (RL) is to obtain an effective policy initialization from existing datasets, which allows efficient fine-tuning with limited amounts of active online interaction in the environment. Many existing offline RL methods tend to exhibit poor fine-tuning performance. On the contrary, while naive online RL methods achieve compelling empirical performance, online methods suffer from a large sample complexity without a good policy initialization from the offline data. Our goal in this paper is to devise an approach for learning an effective offline initialization that also unlocks fast online fine-tuning capabilities. Our approach, calibrated Q-learning (Cal-QL) accomplishes this by learning a conservative value function initialization that underestimates the value of the learned policy from offline data, while also being calibrated, meaning that the learned value estimation still upper-bounds the ground-truth value of some other reference policy (e.g., the behavior policy). Both theoretically and empirically, we show that imposing these conditions speeds up online fine-tuning, and brings in benefits of the offline data. In practice, Cal-QL can be implemented on top of existing offline RL methods without any extra hyperparameter tuning. Empirically, Cal-QL outperforms state-of-the-art methods on a wide range of fine-tuning tasks from both state and visual observations, across several benchmarks.
感觉在 story 上,不如看 项目网站 的 motivation。
(突然想到,RLHF 是否也是一种 offline 2 online(无端联想)
story
- 观察:
- IQL 是隐式策略约束的,CQL 是基于 conservative(保守)的。发现 IQL 学习缓慢,CQL 会 unlearn。
- 基于 policy constraint 的 IQL 等方法,会导致渐近(asymptotic)性能变慢(fine-tune 学习缓慢)。保守方法可以获得良好 fine-tune 性能,但“浪费”一部分样本去做 unlearn + relearn 过程,校正 offline Q 函数。
- 因此,我们试图开发一种良好的微调方法,该方法建立在现有的 conservative offline RL 上(以获得良好的渐近性能),但旨在“校准” Q function,以避免性能的初始下降。
- 为什么会 unlearn:
- 先前工作声称,基于 conservative 的 offline RL 能为 offline 2 online 提供好的起点。然而,会出现 unlearn 现象(return 的 curve 先急剧下降 再反升 然后正常学习)。
- 这是因为 conservative 导致 Q value 的尺度太小,明显小于 ground-truth return。这会导致,如果在 online 时选到了其实更糟糕的 action,(因为 offline Q value 实在是太小了),我们也会将其错认为更好的 action,最终导致 policy 初始化被毁掉。
- 校准(calibration):
- 我们要防止保守主义学习过小的 Q 值。定义 \(\pi\) 相对于 reference policy μ 被校准,如果 \(Q^{\pi}_{\theta}(s,a)\ge Q^{\mu}(s,a), ~~ \forall(s,a)\) 。如果 Q function 可以大于等于一个 base policy 的 Q function。
- 在 Cal-QL 中,μ 是 behavior policy。
- 一个 metric:
- 定义了一个 cumulative regret: \(Reg(K):=E_{s_0\sim\rho}\sum_{t=1}^K[V^*(s_0)-V^{\pi^k}(s_0)]\) ,其中 ρ 为 env 的 initial state distribution。大概就是 最优 value function 与 我们学的 value function 的差值。regret 越小越好。
- 在后续的理论中,他们把 regret 拆成了两项, \(Reg(K):=E_{s_0\sim\rho}\sum_{t=1}^K[V^*(s_0)-\max_a Q^k_\theta(s_0,a)]+ E_{s_0\sim\rho}\sum_{t=1}^K [\max_a Q^k_\theta(s_0,a)-V^{\pi^k}(s_0)]\) ,其中第一项是错误校准的程度(miscalibration),第二项是最优性(over-estimation)。
- (理论把我看蒙了)
method
基于 CQL。魔改 CQL 的 Q network update。
希望最小化的 objective function:
\\
+ \frac12 E_{s,a,s'\sim D}[(Q_θ(s, a) − B^π\bar Q(s, a))^2].
\]
第一行,被 α 乘的 EQ - EQ 的项,被称为 calibrated conservative regularizer R(θ)。
原来的 CQL 是这样的:
\\
+ \frac12 E_{s,a,s′\sim D}[(Q_θ(s, a) − B^π\bar Q(s, a))^2].
\]
其中 D 为 offline dataset。解释 CQL:
- 若 (s,a) 在 \(\pi_\theta\) 中的出现比 D 中要多,则 J(θ) 里的 Q(s,a) 具有正系数,我们会拉低 (s,a) 的 Q function。
- 反之,若 (s,a) 在 \(\pi_\theta\) 中的出现比 D 中要少,则 J(θ) 里的 Q(s,a) 具有负系数,我们会拉高 (s,a) 的 Q function。
再看 Cal-QL 的形式。
- 若 (s,a) 在 \(\pi_\theta\) 中的出现比 D 中要多,则 J(θ) 里的 Q(s,a) 具有正系数,我们会拉低 (s,a) 的 Q function。但如果 \(\pi_\theta\) 的 Q function 还不如 behavior policy 的 Q function 大,就只剩了 \(-E_{s,a\sim D}[Q_\theta(s,a)]\) 这一项,变成了拉高 (s,a) 的 Q function。
- 反之,若 (s,a) 在 \(\pi\) 中的出现比 D 中要少,则 J(θ) 里的 Q(s,a) 具有负系数,我们会拉高 (s,a) 的 Q function。同样,如果 \(\pi_\theta\) 的 Q function 还不如 behavior policy 的 Q function 大,仍然变成拉高 Q function。
experiment
实验貌似做了蛮多的,不过没有细看;如果以后需要仔细看,再看吧。
据说,在分布越窄的数据上(这种数据需要在online fine-tune 开始时修正Q值尺度),相比于 CQL 的效果提升越明显。
https://zhuanlan.zhihu.com/p/614001660 (感觉这位大佬很厉害)
offline 2 online | Cal-QL:校准保守 offline 训出的 Q value,让它与真实 reward 尺度相当的更多相关文章
- 关于alter database datafile offline和alter database datafile offline drop 的区别
转: https://blog.csdn.net/killvoon/article/details/46913183 -----------------------2015-07-16-------- ...
- windows服务器添加磁盘后,提示The disk is offline because of policy set by an administrator的解决办法
操作系统:Windows Server 2008 R2 Enterprise 事件:存储在虚拟机上添加三块磁盘,笔者准备扩展到E盘(动态分区) 问题:存储团队添加磁盘后,OS的磁盘管理界面,看到提示, ...
- ORACLE表空间管理维护
1:表空间概念 在ORACLE数据库中,所有数据从逻辑结构上看都是存放在表空间当中,当然表空间下还有段.区.块等逻辑结构.从物理结构上看是放在数据文件中.一个表空间可由多个数据文件组成. 如下图所示, ...
- oracle 学习
一.数据库语言部分1. SQL语言:关系数据库的标准语言2. PL/SQL:过程化语言Procedural Language3. SQL*Plus:简单的报表,操作系统接口 4. Oracle 8.0 ...
- ORACLE表空间
在ORACLE数据库中,所有数据从逻辑结构上看都是存放在表空间当中,当然表空间下还有段.区.块等逻辑结构.从物理结构上看是放在数据文件中.一个表空间可由多个数据文件组成. 如下图所示,一个数据库由对应 ...
- Tungsten Replicator学习总结
之前基于Tungsten Replicator实现了内部使用的分布式数据库的数据迁移工具,此文为当时调研Tungsten Replicator时的学习心得,创建于2015.7.22. 1 概述 1.1 ...
- PAT甲题题解-1016. Phone Bills (25)-模拟、排序
博主欢迎转载,但请给出本文链接,我尊重你,你尊重我,谢谢~http://www.cnblogs.com/chenxiwenruo/p/6789229.html特别不喜欢那些随便转载别人的原创文章又不给 ...
- ETL之Tungsten Replicator
1 概述 1.1 介绍 Tungsten Replicator是数据库集群和复制供应商Continuent推出的高性能.开源的数据复制引擎,是Continuent最先进的集群解决方案的核心组件之一,特 ...
- 从 Paxos 到 ZooKeeper
分布式一致性 分布式文件系统.缓存系统和数据库等大型分布式存储系统中,分布式一致性都是一个重要的问题. 什么是分布式一致性?分布式一致性分为哪些类型?分布式系统达到一致性后将会是一个什么样的状态? 如 ...
- Maven pom文件常用配置,转载
什么是POM Project Object Model,项目对象模型.通过xml格式保存的pom.xml文件.作用类似ant的build.xml文件,功能更强大.该文件用于管理:源代码.配置文件.开发 ...
随机推荐
- 结合SK和ChatGLM3B+whisper+Avalonia实现语音切换城市
结合SK和ChatGLM3B+whisper+Avalonia实现语音切换城市 先创建一个Avalonia的MVVM项目模板,项目名称GisApp 项目创建完成以后添加以下nuget依赖 <Pa ...
- 如何在Typora中跳转到文本内的指定位置?
1.问题 网上写的使用HTML锚点,在typora并不适用 如 跳转 你好 2.解决 参考链接 https://segmentfault.com/q/1010000018057010 https:// ...
- 上下文中找不到org.springframework.boot.web.servlet.server.ServletWebServerFactory bean
1.问题 报错如下: Description: Web application could not be started as there was no org.springframework.boo ...
- [转帖]JVM中年轻代里的对象什么情况下进入老年代?以及老年代垃圾回收算法-标记整理算法
1.躲过15次GC之后进入老年代 系统刚启动时,创建的各种各样的对象,都是分配在年轻代里. 随着慢慢系统跑着跑着,年轻代满了,就会出发Minor GC ,可能1%的少量存活对像转移到空着的Surviv ...
- 各种数据库shell一键登录的方法
各种数据库shell一键登录的方法 一个小场景 想通过shell 直接执行一些内容. 然后发现通过shell就可以. 所以这里总结一下 1. Oracle export ORACLE_HOME=/u0 ...
- [转帖]Linux搭建Nexus仓库+高可用方案
https://www.cnblogs.com/yangjianan/p/9090348.html Linux搭建nexus仓库 1.安装jdk 1.1 获取安装包,解压到指定目录: 1 tar xf ...
- [转帖]VCSA6.7证书过期后的处置方法
0x00 环境说明 一台测试的ESXI主机,元旦之后已然发现证书已过期,具体现象:VCenter无法登录,一直提示输入用户名和密码,ESXI主机web页面无法登录.重启VC以后,报故障503错误. / ...
- [转帖]「Linux性能调优」磁盘I/O队列调度策略
https://zhuanlan.zhihu.com/p/450329513 傻瓜化说明 简单地说,对于磁盘I/O,Linux提供了cfq, deadline和noop三种调度策略 cfq: 这个名字 ...
- Oracle 建立数据库dblink 然后同步部分表内容的总结
同步处理部分数据 背景 最近在项目上发现两个分库进行数据同步时部分内容同步存在问题. 最简单的方法是导表,但是害怕有其他关联信息异常, 所以同事想到了dblink的方式. 这里简单整理一下 同事用到的 ...
- Oracle 修改参数
alter system set sga_max_size=30720M scope=spfile; alter system set sga_target=30720M; alter system ...