(2021 CoRL)Offline-to-Online Reinforcement Learning via Balanced Replay and Pessimistic Q-Ensemble
一、简介
深度离线强化学习(deep offline RL)可以利用大型离线数据集训练Agent,在在线部署的时候进行 online fine-tuning。但是使用传统的 off-policy RL 算法微调 offline RL agent会遇到问题,主要原因是存在分布偏移(distribution shift)。在在线部署的时候,Agent会遇到offline dataset中未出现过的 state-action,即 out-of-distribution (OOD) online samples,Q-function 无法准确估计OOD online samples 的价值,所以利用这种数据进行更新会导致 bootstrap error,从而策略更新的时候会朝着乱七八糟的方向(arbitrary direction)更新,这就使得我们一开始通过 offline dataset 训练好的比较好的初始策略被破坏,越更新效果越差。
针对上述问题,本文采用两个方案解决:
-
A balanced replay scheme:也就是微调的时候从 offline dataset 中取数据 与 online samples 进行混合,文中称之为取 near-on-policy samples,混合后的数据自然和可以减少 distribution shift。具体的通过衡量offline数据的 online-ness分值,然后根据分值排序选择。
“This adjusts the sampling distribution for Q-learning to be closer to online samples, which enables timely value propagation and more accurate policy evaluation in the novel state-action regime.” 文中这样解释此番操作效果。
-
A pessimistic Q-ensemble scheme:为防止Q-function对novel states过估计,所以采用 multiple pessimistic Q-functions,给novel states进行悲观的(较低的)分值,从而引导 Agent 采取悲观地(谨慎地)策略、更稳健地进行微调。
二、背景知识
此处只介绍 Conservative Q-learning:
conservative Q-learning 采用悲观的方式对当前策略进行评估,给出的是 the ground-truth Q-function 的 a lower bound (in expectation) 。具体地,策略评估阶段 CQL 最小化如下目标函数:
- 策略采用 empirical behavior policy:
- α 0 \alpha_{0} α0是折扣因子;
- B π \mathcal{B}^{\pi} Bπ是 bellman operator。
公式中第1项是寻常的Bellman backup;第2项是正则项,用来减少Q-function对unseen states的评估值。
三、Fine-tuning Offline RL Agent
Figure 1: (a) Log-likelihood estimates of (i) offline samples and (ii) online samples gathered by the offline RL agent, based on a VAE model trained on the offline dataset.
Figure 1 (a) 可视化了distribution shift,可以清晰地看到online dataset、offline dataset中state-action分布的差别。具体方式是,首先训练一个 variational autoencoder (VAE)对 halfcheetah-random dataset 的 state-action pairs 进行重建;然后比较 (i) offline samples d o f f ( s , a ) d^{off}(s,a) doff(s,a) 和 (ii) online samples d o n ( s , a ) d^{on}(s,a) don(s,a) 的 log-likelihood。注意数据都是一个CQL agent在训练过程中收集的。
Figure 1: (b) Fine-tuning performance on halfcheetah-medium task when using online samples exclusively (Online only), or when using both offline and online data drawn uniformly at random (Uniform).
Figure 1 (b) 展示的是微调过程中使用两种数据的差别。红色实线(online only) 展示的是 微调过程中只使用 online samples 的效果,由于 online samples 与 训练时的 offline samples 存在 distribution shift,所以微调初期agent策略退化了,出现性能骤降。蓝色实线(Uniform)使用 从online buffer和offline buffer中均匀随机采样的数据(即,balanced replay scheme),由于offline data通常很大,采样的offline samples更多,所以曲线呈现很缓慢的性能提升。
Figure 1 © Fine-tuning performance on halfcheetah-random and halfcheetah-medium-expert tasks, when using a pessimistic (denoted CQL-init) and a non-pessimistic (denoted FQE-init) Q-function, respectively.
Figure 1 © 比较了离线训练时,采用 pessimistic Q-function(CQL-init)和 non-pessimistic Q-function(FQE-init)的差别。在halfcheetah-random任务中,由于offline buffer对动作空间覆盖广,两者表现相似;在halfcheetah-medium-expert任务中,此时offline buffer中的数据是medium-level policy和expert得到的,所以 FQE-init 在微调初期性能骤降,这说明了在OOD state-action上出现了Q-value过估计,policy可能倾向于潜在的不好的action,从而进一步偏离安全、见过的轨迹,而CQL-init 能在在线微调时遇见的states上保持悲观谨慎,因此性能缓慢稳定上升。
四、方法
在offline训练过程中,训练 N N N个 CQL agents 得到 ensemble agent;然后在online部署中使用 balanced replay scheme采样offline和online samples,微调 ensemble agent
4.1 Balanced Experience Replay
就是在微调过程中将 offline samples 与 online samples 进行混合。但是需要挑选与 online samples 比较相似的数据,文中称为 在线程度 (online-ness) ,具体计算 density ratio w ( s , a ) : = d o n ( s , a ) / d o f f ( s , a ) w(s,a):=d^{on}(s,a)/d^{off}(s,a) w(s,a):=don(s,a)/doff(s,a) 作为 PER 中样本的优先级。其中, d o n ( s , a ) d^{on}(s,a) don(s,a) 表示 online buffer中 state-action 的分布, d o f f ( s , a ) d^{off}(s,a) doff(s,a) 表示 offline buffer 中 state-action 的分布。 d o n ( s , a ) d^{on}(s,a) don(s,a) 和 d o f f ( s , a ) d^{off}(s,a) doff(s,a) 难以求解,因为 they can in principle be stationary distributions of complex policy mixtures。所以文章利用 a likelihood-free density ratio estimation method,通过训练一个神经网络 w ψ ( s , a ) w_{\psi}(s,a) wψ(s,a) 来估计 w ( s , a ) w(s,a) w(s,a),训练的时候分别使用数据 B o f f \mathcal{B}^{off} Boff 和 B o n \mathcal{B}^{on} Bon 。
Density ratio estimator(Sinha et al., 2020)具体流程如下:
在density ratio的估计中还用了self-normalization。
4.2 Pessimistic Q-Ensemble
对N个预训练的CQL进行集成,即 { Q θ i , π ϕ i } i = 1 N \{ Q_{\theta_i}, \pi_{\phi_i} \} ^N_{i=1} {Qθi,πϕi}i=1N,其中 θ i \theta_i θi和 ϕ i \phi_i ϕi分别表示第 i i i个agent的Q-function和policy的参数。具体定义如下:
其中
微调时参数 θ \theta θ和 ϕ \phi ϕ依据SAC算法的更新规则更新。
五、实验
😅不想整理啦~
总结
1、利用 VAE 的 Log-likelihood 可视化 两个数据集分布之间的差异的trick可以借鉴;
2、思路简单易懂、还有效……提出了一个简单的框架,包括balanced replay scheme和pessimistic Q-ensemble scheme,这两个在 offline RL 进行 online 部署的时候回非常有用,尤其是采 pessimistic Q-value 对 novel states 进行评价。
3、Balanced Experience Replay 是不是有点像 主动学习 了。之前做过一个类似的研究,想法与Balanced Experience Replay 很像,之后给大家介绍一下 😄。