- 论文题目: Conservative Q-Learning for Offline Reinforcement Learning
- CQL 是师兄盛赞的一篇论文:“是 offline RL 最精彩的工作之一,扭曲了 Q function,认为没看过的 Q 很有风险,把 OOD(out of distribution)的 Q 函数值拉低(因为 Q learning 的 argmax 一向是 over-estimated),ID(in distribution)的 Q 函数值拉高,因此倾向于选择原来数据集里有的 ID 的 action。”
- 本博客为非常详细的 CQL 论文阅读笔记,但【不能代替】阅读原文的工作量。原文写的也很好,是 AI 顶会的风格,相对容易读懂。
- pdf 版本:https://proceedings.neurips.cc/paper/2020/file/0d2b2061826a5df3221116a5085a6052-Paper.pdf
- Appendix:https://proceedings.neurips.cc/paper_files/paper/2020/file/0d2b2061826a5df3221116a5085a6052-Supplemental.pdf
- review 总结
- 0 abstract
- 1 intro
- 2 preliminaries
-
3 CQL framework
- 3.1 Conservative Off-Policy Evaluation
- 3.2 Conservative Q-Learning for Offline RL
- 3.3 Safe Policy Improvement Guarantees
- 4 如何实现 CQL
- 5 related work
- 6 experiment
- 7 discussion
- Appendix
review 总结
open review: https://proceedings.neurips.cc/paper_files/paper/2020/file/0d2b2061826a5df3221116a5085a6052-Review.html
-
contribution:用于 offline RL 的保守 Q 学习(Conservative Q-Learning,CQL)。
- 一种新的 Q function 更新规则,对 Q 分布进行额外的正则化:通过在适当选择的 state-action pair 上的辅助分布下,在通常的 Bellman update 中添加正则项,用来最小化 OOD action 的 Q value,从而减少对 OOD action 的 Q value 高估。
- 作者表明,这个更新规则能够渐进得到,从精确 policy evaluation 中获得的 policy value 的下限。
- 在学习算法中使用这种保守的 Q function,从而得到 Conservative Q-Learning 算法(CQL)。作者表明,以这种方式得出的策略更新是保守的,因为在每次迭代中,策略都会针对 value 的 lower-bound 进行优化。
- CQL 算法有几个不同的变体,它们在 offline control 的 benchmark 中性能很好,并且,对于 offline RL 中 behavior policy 与实际 policy 的 action distribution 不一致,所导致的 Q 分布的误差更稳健。
- 公式 1:在估计特定策略的 Q function 时,添加一个 penalty,会产生对 policy value 的低估,但这种低估过于保守。
- 公式 2:在估计 Q function 时,在 penalty 中减去基准策略(行为策略 behavior policy)的 value。这也被证明会低估 policy value。作者从理论与实验上验证了这个 idea。
-
strength:
- 简单而新颖的方法,概念上聪明的想法。通过直接最小化 off-policy Q value,而不是估计 Q function 中的行为密度或不确定性,来对抗 offline Q learning 中的高估。很聪明,因为与大多数现有方法相反,它不需要任何形式的状态访问密度。
- 具体的,该方法将 value 取多少 lower-bound,取决于经验行为分布 (pi_beta),其中很少被评估的 actions 会导致更大的 lower-bound。(?)
- 之前没有针对 offline RL 的这种研究,因为将 Q function 正则化,对 OOD action 表现不好。(?)
-
weaknesses:
- 虽然本文的理论动机集中在构建下界,但没有讨论下界是多少 以及这是否合理(?奇怪的英文句子)。主要弱点在于 alpha,它以 Q 值的平方损失相对于 Q 值的线性差进行交互(?)。
- 在实证(实验)中比较平均值,而非提供适当统计数据(比如方差这种统计量),是有缺陷的。
- 公式 1 和 2 必然会收敛到一个 fixed point(忽略不属于 D 的动作)是显而易见的吗?能否解释一下,针对 BC (behavior cloning 行为克隆 模仿学习)策略进行正则化的方法,为何会比 BC 策略表现更差?在我看来,总是可以选择足够强大的正则化,至少让它跟 BC 策略一样好,为什么表 1 和 2 中的情况不是这样呢?
0 abstract
Effectively leveraging large, previously collected datasets in reinforcement learning (RL) is a key challenge for large-scale real-world applications. Offline RL algorithms promise to learn effective policies from previously-collected, static datasets without further interaction. However, in practice, offline RL presents a major challenge, and standard off-policy RL methods can fail due to overestimation of values induced by the distributional shift between the dataset and the learned policy, especially when training on complex and multi-modal data distributions. In this paper, we propose conservative Q-learning (CQL), which aims to address these limitations by learning a conservative Q-function such that the expected value of a policy under this Q-function lower-bounds its true value. We theoretically show that CQL produces a lower bound on the value of the current policy and that it can be incorporated into a policy learning procedure with theoretical improvement guarantees. In practice, CQL augments the standard Bellman error objective with a simple Q-value regularizer which is straightforward to implement on top of existing deep Q-learning and actor-critic implementations. On both discrete and continuous control domains, we show that CQL substantially outperforms existing offline RL methods, often learning policies that attain 2-5 times higher final return, especially when learning from complex and multi-modal data distributions.
摘要:
- 在强化学习(RL),有效利用事先收集的大型数据集,是大规模实际应用面临的一个关键挑战。离线强化学习(offline RL)算法,有望从以前收集的静态数据集中学习有效的策略,而无需进一步的交互。
- 然而,在实践中, offline RL 是服务器托管网一项重大挑战。因为数据集与所学策略之间的 state-action 联合分布的偏移,会导致对 value 的高估,因此,标准的 off-policy RL 魔改成的 offline RL 可能会失败,尤其是在复杂和多模式数据分布上。
- 在本文中,我们提出了保守 Q-learning (CQL),旨在通过学习一个保守的 Q 函数来解决这些局限性,即,在该 Q 函数下,policy value 的期望值低于其真实值。
- 我们从理论上证明,CQL 能生成当前 policy value 的下限,并基于该下限学习新策略,从而保证理论上的改进。
- 在实践中,CQL 通过一个简单的 Q 值正则化器(regularizer),增强了标准的 Bellman error 优化目标,该正则化器可以在现有的 Deep Q Learning 和 Actor-Critic 的基础上直接实现。
- 在离散和连续控制域上,我们的研究表明,CQL 的性能大大优于现有的 offline RL 方法,其学习策略的最终收益往往能提高 2-5 倍,尤其对于复杂和多模态的数据分布。
1 intro
- Offline RL / batch RL:[11, 15, 30, 3, 27, 54, 34]
- 在 offline 环境中,直接使用现有的 value-based 的 off-policy RL 算法,通常性能不佳,这是由于从 OOD action 中 bootstrap 的问题 [30, 15] 和过拟合 [13, 30, 3],通常表现为 value function 的错误的乐观估计。
- 如果我们能学习一个保守的 value function 估计值,为真实值提供一个下限,那么就能解决高估问题。
- 事实上,由于 policy evaluation 和 policy improvement 通常只使用 value function,我们可以学习一个不那么保守的下限 Q 函数,这样,策略下的 Q 函数期望值是下限,而非使用点式下限。(见后文,从公式 1 到公式 2)
- main idea:在适当选择的 (state,action) 分布下,最小化 Q 值(公式 1),然后通过在数据分布上加入最大化项,进一步收紧这一约束(公式 2)。
- 算法框架 CQL:通过在训练过程中对 Q 值进行正则化,学习保守的 value function 下限估计值。
- 理论分析:只有在策略下的 Q 函数期望值,才会是真实策略值的下限,从而避免了逐点的 Q 函数下限可能产生的额外低估,这在探索文献 [46, 26] 中,通常是在相反的背景下进行探讨的。
- 通过实验,证明了我们的方法对 Q 函数估计误差的稳健性。
- 如何实现 CQL:将这些保守估计,用于策略评估和离线 RL。
- 简单修改:只需在 Q 函数更新中添加 CQL 正则化项,就能在许多标准 online RL 算法 [19, 8] 的基础上,用不到 20 行代码实现 CQL。
- 实验:适用于具有复杂数据集组合的领域(已知先前的方法通常在这些领域表现不佳)[12](可能是 D4RL 的 random medium expert 之类)和具有高维视觉输入的领域 [5, 3](其实应该就是 Atari 的 state – 游戏屏幕截图吧)。
- 在许多 benchmark 上,CQL 的表现比之前的方法高出 2-5 倍之多,而且还是在从人机交互中收集的大量现实数据集上,唯一的表现优于简单 behavior cloning 的方法。
2 preliminaries
- 符号定义:
- (pi_{beta}(a|s)) 代表 behavior policy。(d^{pi_beta}(s)) :(pi_{beta}(a|s)) 的 discounted marginal state-distribution。离线数据集 D,相当于在 (d^{pi_beta}(s)pi_beta(a|s)) (state-action 联合分布)里采样得到。
- (hat pi_beta(a|s)) 代表 empirical behavior policy,(hat pi_beta(a|s)={sum_{(s,a)}1[s=s,a=a]}/{sum_s1[s=s]}) ,就是在历史数据的 state s 下有多少次选择了 action a。
- 假设 reward 有 bound: |r(s, a)| ≤ R_max。
- 回顾:
- 回顾 Q-learning method:迭代计算 Q function,(B^*Q(s,a)=r(s,a)+gamma E[max Q(s’,a’)])。
- 回顾 actor-critic:要训一个 actor policy,用来做 (pi(a|s)=argmax_aE[Q(s,a)])。
- 由于 dataset D 不会包含所有的 transition tuple (s,a,s’),所以 policy evaluation 步骤事实上用的是 empirical Bellman operator,称为 (hat B^pi),它只备份(backs up)单个样本。
- (没有听懂,应该是只对单个 (s,a,s’) 做 Bellman 迭代吧)
- offline RL:给定数据集 (D={(s,a,r,s’)}),是用 behavior policy (pi_{beta}(a|s)) 收集的。然后在这个数据集上做 policy evaluation + policy improvement。(evaluation 是在更新 Q function,新 Q 接近 r + 老 Q,用 min 最小化平方误差来写)
- 问题:这样直接做 offline RL,会出现 action distribution shift(动作分布偏移)的现象。
- 大概就是,最后训出来的 policy 的 action distribution 跟采样策略 (pi_beta(a|s)) 不太一样(?)
- 由于 policy 的训练目标是最大化 Q 值,因此,可能会倾向于 Q 值被高估的 out-of-distribution 行为。
- 经典 offline RL 方法 [30, 27, 59, 54],通过限制所学策略 [34] 远离 OOD action,来缓解这一问题。
- 需要注意的是,在训练 offline RL 的 Q function 时,不会受到 state distribution shift(状态分布偏移)的影响,因为 Bellman backup 不会在 OOD 的状态上更新 Q 函数,但是在测试时,可能会遇到新 state,受影响。
3 CQL framework
3.1 Conservative Off-Policy Evaluation
CQL 最初的 idea:
- 我们只有行为策略 (_(a|s)) 生成的数据集 D,但是要估算目标策略 的 value function (V^(s))。
- 因为希望防止 policy value 的高估,因此在学习标准 Bellman error 目标的同时,还通过最小化 Q 值,来学习一个保守的 Q 函数 lower-bound。
- 使用一种惩罚方式:最小化【特定的】state-action pair distribution (s,a) 下的 Q 函数期望值。
- 标准 Q 函数训练并不去管 unobserved state 下的 Q 函数值,却去更新 unobserved action 下的 Q 函数值,因此,我们限制 与数据集中的状态边际(state-marginal)相匹配,(mu(s,a) = d^{^}(s)mu(a|s))。【没有听懂】
- 这样,就得到了训练 Q 函数的迭代更新,它是权衡因子(tradeoff factor) ≥ 0 的函数:
【3.1 节的公式 1:加了一个惩罚项,最小化 E_{ 分布} Q(s,a) 】
定理 3.1 的解释:
- 证明:这样得到的 Q function,是所有 s-a dataset 分布的下界。
- 这个下界可以更紧一些。如果只要求 ((a|s)) 下, (hat Q^) 的期望值低于 (V_),我们可以通过在数据分布 (_(a|s))下,引入一个额外的 Q 值最大化项来改进约束,从而实现迭代更新(等式 1 中红色部分的变化):
【3.1 节的公式 2:拉低了 分布的 s-a,但拉高了 (ssim D,asimhatpi_beta(a|s)) 的 Q value,pi hat 是 empirical behavior policy】
定理 3.2 的解释:
- 虽然得到的 (hat Q_) 可能不是对每个点都能有下限,但当 (mu(a|s)=(a|s)) 时,有数学期望 (E_{(a|s)} [hat Q^(s,a)]≤V^ (s))。
- 因为公式 2 最大化了行为策略(behavior policy)(hatpi_beta(a|s)) 的 Q 值,因此可能会高估 (hatpi_beta(a|s)) 下的 action,所以说 Q hat 不是 point-wise lower-bound。
- 在 Appendix D.2 中证明,只有最大化 (hatpi_beta(a|s)) 时,才能取得数学期望的 lower bound(?)
理论分析:(有点复杂,没看懂…)
- 公式 1 2 使用的经验贝尔曼算子 (hat B^) ,而非实际的贝尔曼算子 (B^)。
- CQL 是 lower-bound 的证明,在 Appendix C。
定理 3.1:
- point-wise lower bound。
- 对于公式 1 中希望最小化的分布 (a|s),只要满足 (mathrm{supp}~musubsetmathrm{supp}~hat) (不知道什么意思…),就有≥ 1- 的概率满足,求得的 (hat Q^pi(s,a)le Q^pi(s,a)) – 一个含 的东西 + 一串东西。
- 只要 足够大,就有 (hat Q^pi(s,a)le Q^pi(s,a)),对任意 s ∈ D、任意 a。
- 当 (hat B^=B^) 时,任何 >0 都能保证, (hat Q^pi(s,a)le Q^pi(s,a)),对任意 s ∈ D、任意 a。
定理 3.2:
- 数学期望 lower bound 。
- 当 (mu=pi) 时((pi) 是当前训出来的策略(?)),通过策略 (pi) 下 的 Q function 得到的 value function (hat V^pi(s)=E_{pi(a|s)}[hat Q^pi(s,a)]),是真实 value function (V^ (s)=E_{(a|s)}[Q^(s,a)]) 的 lower bound。
- 因为(一大串公式),对任意 s ∈ D,有 V hat ≤ V – 一个含 的东西 + 一串东西。
- 因此,若 > 一串东西,对任意 s ∈ D,都有 V hat ≤ V 的概率 ≥ 1-。若 (hat B^=B^) ,任何 >0 都能保证 V hat ≤ V 。
讨论:
- 在定理 3.1 3.2 的证明中,假设 Q function 是精确计算的,没有使用 function approximation(如 NN)。
- 不过,定理 3.2 可以 generalize 到 linear function approximator 和基于 neural tangent kernel (NTK) 的 NN 拟合器,见 Appendix D.1 的定理 D.1 D.2。
- 总之,证明了 Q ← min E_ Q(s,a) + 1/2 [Q(s,a) – BQ(s,a)] 是 Q function 的下界,Q ← min [E_ Q(s,a) – E_(hat_) Q(s,a)] + 1/2 [Q(s,a)-BQ(s,a)] 是更紧的下界。
- 随着可用数据变多,|D(s,a)| 增加,保证下界所需的 值变小;在无限数据中,只需极小的 便可维持下界。
3.2 Conservative Q-Learning for Offline RL
背景:
- 在 3.1 节的公式 2 中令 = ,做 policy evaluation – policy improvement 循环,可以得到 Q function 下限,但这样计算成本太高(?)
- 由于 policy iteration 得到的 (hatpi_k) 通常来自于 Q function,因此可以改进 的选择,进行一些近似,得到一个在线(online)算法(?)
定义了 CQL(R) ,是一类优化问题,R() 是正则化项。
【3.2 节的公式 3: (min_Qmax_mu alpha(E_mu Q-E_{hatpi_beta} Q)+1/2[Q-BQ]^2+R(mu)),变成了 min max 形式,还加了一个 的正则化项】
CQL 的变体:
- 如果令 R() = -DKL(, ),即策略的 action 分布与一个先验 action 分布的 KL 散度。
- 1 – 若 = Uniform(a),那么将会变成公式 4 的形式,称为 CQL(H)。H 是信息熵的意思。
- 2 – 若 = (hatpi_{k-1}) 即上次得到的策略,那么,等式 4 的第一项会变成 (hatpi_{k-1}(a|s)) 的 actions 的 Q values 的指数加权平均值。
- 根据经验,这种变体在高维行动空间(如表 2)中更稳定,因为在高维行动空间中,由于方差较大,通过抽样估计 (logsum_aexp) 具有挑战性。(没有听懂)
- 3 – 在附录 A 中,讨论 CQL 的另一个变体,并将其与分布稳健优化(distributionally robust optimization)[43] 联系起来。
CQL 的理论分析:
- 去证明 CQL 确实是保守的(conservative),每个 policy iterate 都根据 value 的 lower bound 来优化得到。
- 有 sampling error 样本误差的情况见 Appendix C,这里我们就不考虑了。
定理 3.3:
- 证明:前面提到的 CQL(H),学习了实际 Q function 的 lower bound。
- 令 (_{hat Q^k}(a|s)∝exp hat Q^k(s,a)) (这是得到 policy 的方式),假设 (D_{TV}(hat ^{k+1}, _{hat Q^k})leepsilon) (大概就是策略变化缓慢的意思),则有 (hat Q^k) 下的 policy value 是真实 value 的 lower bound,(hat V^{k+1}(s) ≤ V^{k+1}(s)) 。
- —— 只要满足,LHS ≥ RHS。
- LHS:是在 CQL 更新的迭代 k+1 中, Vk+1 值的保守程度,如果学习到的策略正好等于 (hat Q^k) 的 softmax 策略(正比于 exp)(按理来说是这样的),即 (hat _{k+1}=_{hat Q^k}) 时。
- RHS:然而,实际策略 (hat _{k+1}) 可能不同,RHS 是由于这种差异而可能高估的最大值。
- 为了得到下限,我们要求低估 value function 的量更大,可以通过较小的 (即策略变化缓慢)得到。
- (基本没看懂…)
CQL 的 Q function update 是 gap-expanding 的:
- 是说,1. ID(分布内)的 Q value、2. 错误乐观估计的 OOD Q value,它们之间的 difference,比真实 Q function 的 difference 更高。
- 这意味着,策略 (_k(a|s)∝exphat Q^k(s,a)) 被约束的更接近数据集 D 的经验策略分布 (hat _(a|s)),隐式地防止了 OOD 的 distribution shift。
定理 3.4:(CQL is gap-expanding)
- 在任何步迭代 k 中,CQL 都能扩大行为策略 (_(a|s)) 和 (mu_k) 下预期 Q 值的差距。
- 因此,对于足够大的 (_k),对于任意 s ∈ D,我们有 (E_{_(a|s)}[hat Q^k(s,a)]−E_{mu_k(a|s)}[hat Q^k(s,a)]> E_{_(a|s)}[Q^k(s,a)]−E_{mu_k(a|s)}[Q^k(s,a)]) 。
(Appendix B 通过实验证明,先前的 offline RL 方法,如果没有明确限制或正则化 Q 函数,可能不具备对于 OOD Q 值高估的鲁棒性)
总结:
- 证明了 CQL RL 算法可以学习到下限 Q 值,在足够大的 下。这意味着,最终策略的 value function 至少能有我们计算的 Q hat 那么大,我们计算的 Q hat 是一个下限。
- 证明了 Q function 是 gap-expanding 的,这意味着它只能高估 ID action 和 OOD action 之间的 gap,从而防止 OOD 行动。(所谓的拉高 ID action,拉低 OOD action)
3.3 Safe Policy Improvement Guarantees
本 subsection 总结:
- CQL 优化的是一个定义明确的、包含惩罚项的(penalized)经验 RL 目标函数(empirical RL objective),并针对 behavior policy(行为策略),进行了高置信度(概率 ≥ 1-)的安全策略改进。
- 改进的程度会受到较高 sampling error(采样误差)的负面影响,而 sampling error 会随着观察样本的增多(|D| 变大)而减小。
定理 3.5:
- 定义:任意策略的 empirical return(经验收益)(J(, hat M)),为 empirical MDP(经验 MDP) (hat M) 的 discounted return(应该是 discounted reward 求和吧)。其中,empirical MDP 由数据集 D 得出,(hat M={(s, a, r, s’)∈D}) 。
- 设 (hat Q^pi) 是公式 2 的不动点(fixed point)(即已经求到了策略 的 value function),则 (^*(a|s):=argmax_ E_{ssim(s)} [hat V^(s)]) (该 value function 导出的 policy)可以等价表示为,(^*(a|s)←argmax_J(,hat M)−frac{1}{1−} E_{s∼d^_{hat M}(s)}[D_{CQL}(,hat _)(s)]) ,其中 D_CQL 是一个 penalty, (D_{CQL}(, _)(s):=sum_a (a|s)cdot (frac{(a|s)}{_(a|s)}−1)) 。
- 证明见 Appendix D.4。
- 直观地说,定理 3.5 表明,CQL 优化了经验 MDP (hat M) 中的策略收益,同时还通过 D_CQL 惩罚项,确保学习到的策略 与行为策略 (hat _) 不会相差太大。
- 这种惩罚是通过 CQL 的 gap-expanding(定理 3.4)特性,来隐式引入的。
定理 3.6:
- 在定理 3.5 和 CPO [1] 分析的基础上,证明 CQL 提供了行为策略 (hat _) 上的 -safe policy improvement。
- 设 (^*(a|s)) 是定理 3.5 得到的策略。那么,在实际 MDP M 中,策略 (^*(a|s)) 是行为策略 (hat _) 上的 -safe policy improvement,即,满足 (J(^*,M)ge J(hat _, M)-zeta) 的概率为 1 – , 由下式给出:
- 【没编号的公式,一大串,很吓人】
- 的表达式由两项组成:
- 第一项表示,由于 M hat 和 M 之间的不匹配(也称为抽样误差 sampling error),而导致的 M 中策略性能的下降。第二项表示,由于经验 MDP M hat 中的 CQL,而导致的策略性能的提高。
- 针对 CQL Q 函数优化 后,得到的策略 * 比行为策略 (hat _) 好,如果我们适当选择 值;当采样误差较小,也就是 |D(s)| 较大时,较小的 值就足以保证策略性能的改进。
4 如何实现 CQL
算法伪代码:
- 看看如何在 actor-critic 和 Q-learning 上使用 CQL。
- 伪代码见 Algorithm 1 ,与传统 actor-critic 和 Q-learning 的区别,用红色标出了。
- (第 3 步)使用 CQL 框架中的 CQL(H) 或一般的 CQL(R),替代希望最小化的 Bellman error,作为训练 Q 函数 (Q_) 的梯度下降目标( 是神经网络参数)。
- 不像之前的 offline RL 方法 [30, 59, 54, 34] ,CQL 不需要策略约束(policy constraint),因此不需要拟合一个额外的 behavior policy estimator(行为策略估计器)。
- (第 4 步)对于 actor-critic 框架,还需训练一个策略 。
Implementation details:
- 声称,对于连续控制,只需在 SAC(soft actor-critic)[19] 上增加 20 行代码;对离散控制,则是 QR-DQN [8] 的 20 行代码。
- 对 gym 和离散控制,tradeoff factor 固定为附录 F 中所述的恒定值;对于其他领域, 通过拉格朗日双梯度下降法(Lagrangian dual gradient descent)自动调整。
- 我们使用 SAC 的默认超参数,但策略的学习率是从 {3e-5、1e-4、3e-4} 中选择的,并且小于或等于 Q 函数(?),这是由定理 3.3 决定的。
- 详细内容见 Appendix F。
5 related work
本章 review 了 offline RL 和 off-policy evaluation 的工作,更多内容详见 Appendix E。
Off-policy evaluation (OPE):
- 早期工作 [51, 49, 52] 先收集 Monte-Carlo returns,再在 Monte-Carlo returns 中使用 per-action importance sampling,来获得 OPE return 的估计。
- 近期工作 [36, 17, 40, 60] 通过某种动态规划(dynamic programming)[34],直接估计状态分布的 importance ratios(重要性比率),使用 marginalized importance sampling(边际重要性采样)。这通常比 per-action importance sampling 方差更小,但期望值会有 bias。
- 由于使用 DP,因此它们可能会受到 OOD 动作的影响 [34, 17, 20, 40]。
- 相比之下,CQL 中的 regularizer 因其 gap-expanding 行为,而明确解决了 OOD 行为的影响,并获得了保守的 value 估计。
Offline RL:
- 先前研究试图解决 learned policy 的 action distribution 与 behavior policy 偏离的问题,去限制 learned policy 与 behavior policy 接近,例如通过 KL-divergence [27, 59, 48, 54]、Wasserstein 距离 [59] 或 MMD [30] 来衡量。然后,在贝尔曼策略更新(Bellman backup)中,只使用从该被限制的策略中采样的行动,或使用值惩罚(value penalty)。
- 对 unobserved actions,SPIBB [33, 41] 使用 Q-learning 算法中的 behavior policy 进行 bootstrap。
- 大多数这种方法,都需要单独估计一个 behavior policy 模型 (a|s) [15, 30, 59, 27, 54, 55],因此,受限于准确估计未知 behavior policy 的能力 [42];如果从多个来源收集数据 [34],去估计 behavior policy 可能尤为复杂。
- 相比之下,CQL 无需估计 behavior policy。
- 先前研究已经探索了某些形式的 Q-function penalties [23, 58],但仅限于 standard online RL setting with demonstrations。
- Luo 等人 [38] 通过在 state-space 上强制执行一个 linear extrapolation property,学习了一个 conservatively-extrapolated value function,然后,学习动力学模型(dynamics model),从而获得 goal-reaching tasks 的策略。
- Kakade 和 Langford [28] 提出了 CPI 算法,在 online RL 中保守地改进策略。
- 其他先前的研究,会估计某种不确定性(uncertainty),以确定 Q 值预测的可信度 [30, 3, 34],通常使用 online RL exploration 中的不确定性估计技术 [47, 26, 46, 7]。
- 由于 offline RL [34] 对不确定性估计的保真度(fidelity)要求很高,因此,这些方法在 offline RL [15, 30, 34] 中一般表现不佳。
- Robust MDP [24, 50, 56, 44] 一直是 offline RL 中流行的 theoretical abstraction,但在 policy improvement 上往往非常保守。
- 由于 CQL 不会低估所有 state-action tuple 的 Q value,因此 CQL 不会那么保守。
- 关于 high confidence policy improvement 的研究 [57],为策略改进提供了安全保证,但往往也比较保守。
- 定理 3.4 所示的 CQL backup 的 gap-expanding 特性,与 gap-increasing Bellman backup operators [6, 37] 如何在 online RL 中对 estimation error 更 robust 有关。
理论结果:
- 我们的理论结果(定理 3.5、3.6)与之前 safe policy improvement 的工作有关 [33, 50]。
- 与 Laroche 等人的定理 1 和 2 [33] 比较,发现相似的 quadratic dependence on the horizon,和一个 inverse square-root dependence on the counts。
- 我们的 bound 比 Petrik 等人[50]的 ∞-norm(无穷范数)bound 有所改进。
6 experiment
baselines:
- 使用 policy constraint(限制与 behavior policy 离得不太远)的先前 offline RL 方法:BEAR [30] 和 BRAC [59]。
- SAC [19],一个 off-policy actor-critic method 的 offline RL 版本。
- behavioral cloning (BC)。
实验环境与结果:
- Gym domains:
- offline datasets 分为 “-random” “-expert” “-medium”。当只使用单一种类的 dataset 时,CQL 只比其他方法厉害一点点(baselines 使用了 [12] 的 performance 报告);但当多个 datasets 一起使用时,甚至能 outperform 一到两倍。
- Adroit tasks:
- Adroit [53] 是 D4RL [12] 中最复杂的任务,使用有限的 human demonstrations,控制一个 24-DoF 的机器手。
- 任务过于复杂,先前的 offline RL 方法都会挂掉,behavior cloning(BC)表现最好。
- CQL outperform 了 BC,是其他 offline RL 方法的 2-9 倍。
- CQL() 其中 (rho=hatpi^{k-1}) 在一部分任务上 outperform 了 CQL(H),两个 CQL 方法的方差都比 baselines 更好。
- AntMaze:
- MuJoco Ant robot,D4RL 中只提供 suboptimal 数据。
- 先前方法只能应对最简单的 U-maze,但 CQL 可以走一些更复杂的。
- Kitchen tasks:
- Franka kitchen domain [18] from D4RL [14],控制一个 9-DoF robot,按顺序操作各种物体(microwave, kettle, …),达到指定的终态;对于每个终态要求的物体,只有一个 episode 结束时的 spare 0 1 reward,代表该物体是否达到终态(?)
- 包含 1. 从 dataset 里组合 trajectory 片段,2. 精确的 long-horizon 控制,3. 处理人类的远程指令。
- CQL outperforms 所有 baseline,成功率高达 40+%。
- Offline RL on Atari games:
- offline, image-based Atari games [5]。
- 与 REM [3] 和 QRDQN [8] 在五个 Atari tasks (Pong, Breakout, Qbert, Seaquest and Asterix) 上比较,(因为这些实验已经被 [3] 做过了)
- 使用了 Agarwal et al. [3] 的 evaluation protocol,包含两种数据:(1) online DQN agent 观察到的前 20% 样本组成(大概是训练过程的前 20%?);(2) 仅有 online DQN agent 观察到的所有样本的 1% 和 10%(大概是整个训练过程随机取 1 ~ 10%)。
- 对 (1),与 QR-DQN 和 REM 持平;对 (2),显著 outperform,尤其是在只有 1% 数据的条件下。
- 对 CQL 的分析:
- 通过计算 CQL 得到的 value function V hat,与真实 discounted return 进行比较,证明我们的 value function 是下限。
- 计算了 baseline(offline RL)的一些 value function,包括 ① Q-function ensemble(防止 over-estimate 的常用方法) ② BEAR [30] 一种 policy constraint 方法,发现它们 over-estimate 了。
- 还对公式 1 中的 CQL variant 进行评估,发现公式 2 确实获得了比公式 1 更紧的下限。
- Appendix B:跑实验证明定理 3.4(CQL 的 gap-expanding)。
- Appendix G: CQL 的 ablation study。
- 通过计算 CQL 得到的 value function V hat,与真实 discounted return 进行比较,证明我们的 value function 是下限。
7 discussion
- 提出了 offline RL 的 CQL 框架:可以学习 Q function 的 lower-bound。
- CQL 可直接应用于大规模数据集丰富的实际问题:自动驾驶、机器人和软件系统(如推荐系统)。
- limitations & future works:
- 虽然已经证明了 CQL 可以在 tabular、线性函数近似、某些非线性函数近似 Q function 的情况下,学习 Q function 的下限,但对 CQL + Deep NN 的严格理论分析,仍有待于未来的工作。
- 此外,offline RL 与标准监督学习方法一样,容易出现过拟合问题,因此未来工作的另一个重要挑战是,设计简单有效的早期停止方法,类似于监督学习中的验证误差。
Appendix
https://proceedings.neurips.cc/paper_files/paper/2020/file/0d2b2061826a5df3221116a5085a6052-Supplemental.pdf
- A. Discussion of CQL Variants – 讨论 CQL 的变体:CQL(H) CQL() CQL(var)。
- B. Discussion of Gap-Expanding Behavior 服务器托管网of CQL Backups – 好像是关于 CQL gap-expanding 的实验。
- C. Theorem Proofs – 出现在正文中的定理 3.1 – 3.4 的证明。
- D. Additional Theoretical Analysis – 进一步的理论分析。
- D.1 使用 Q function approximation 的 lower-bound 证明。
- D.2 公式 2 中 arg min [E_ Q – E_(pi_beta) Q] ,如果把 (pi_beta) 位置选择别的分布会怎样。
- D.3 公式 2 的 sample-based version(?)
- D.4 Safe Policy Improvement Guarantee for CQL。
- E. related work 扩展。
- F. setup 与实验细节等。
- G. Ablation Studies。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
目录 0. cv2简介 1. 打开摄像头 2. 画图,画线 3. 滤波 4. 获取角点 5. 梯度+边缘 6. 图形匹配 7. 形态学变化-膨胀腐蚀 8. 二值化+阈值 10. 总结 0. cv2简介 在这里先简单介绍一下cv2吧。 cv2 是 OpenCV …