ICML 2022
paper
Introduction
利用Transformer对强化学习进行序列建模在离线强化学习中展露头角,但是无法避免的是这种方法受限于离线数据的质量,因此本文将其结合到online的在线微调过程,进而形成本文ODT。为了解决从offline到online过程中的performance drop,文章提出两点:1)采用随即策略扩大探索,并采用策略熵进一步优化探索 ,2)扩展Hindsight experience replaybuffer(HER)
Method
2.1 ODT
本文方法是基于Transformer + RL的offline方法Decision Transformer(DT)。
然而将其简单的从offline迁移到online会出现崩溃,改进的第一步便是提出一种广义的概率学习目标,即学习一种随即策略最大化其似然函数,例如该策略是具有对角协方差矩阵的多元高斯分布,用于模拟状态和rtg条件下的动作分布。其中rgt表示一条轨迹从t时刻到结束的累计奖励: g t = ∑ t ′ = t ∣ τ ∣ r t ′ , g_{t}=\sum_{t^{\prime}=t}^{|\tau|}r_{t^{\prime}}, gt=∑t′=t∣τ∣rt′,
π θ ( a t ∣ s − K , t , g − K , t ) = N ( μ θ ( s − K , t , g − K , t ) , Σ θ ( s − K , t , g − K , t ) ) , ∀ t , \pi_{\theta}(a_{t}|\mathbf{s}_{-K,t},\mathbf{g}_{-K,t}) = \mathcal{N}(\mu_{\theta}(\mathbf{s}_{-K,t},\mathbf{g}_{-K,t}),\Sigma_{\theta}(\mathbf{s}_{-K,t},\mathbf{g}_{-K,t})),\forall t, πθ(at∣s−K,t,g−K,t)=N(μθ(s−K,t,g−K,t),Σθ(s−K,t,g−K,t)),∀t,
最大化对数似然,即最小化负对数似然
J ( θ ) = 1 K E ( a , s , g ) ∼ T [ − log π θ ( a ∣ s , g ) ] = 1 K E ( a , s , g ) ∼ T [ − ∑ k = 1 K log π θ ( a k ∣ s − K , k , g − K , k ) ] \begin{aligned}J(\theta)&=\frac{1}{K}\mathbb{E}_{(\mathbf{a},\mathbf{s},\mathbf{g})\sim\mathcal{T}}\big[-\log\pi_\theta(\mathbf{a}|\mathbf{s},\mathbf{g})\big]\\&=\frac{1}{K}\mathbb{E}_{(\mathbf{a},\mathbf{s},\mathbf{g})\sim\mathcal{T}}\big[-\sum_{k=1}^{K}\log\pi_\theta(a_k|\mathbf{s}_{-K,k},\mathbf{g}_{-K,k})\big]\end{aligned} J(θ)=K1E(a,s,g)∼T[−logπθ(a∣s,g)]=K1E(a,s,g)∼T[−k=1∑Klogπθ(ak∣s−K,k,g−K,k)]
传统的DT方法没有与环境交互,所以没有对探索进行量化。本文基于策略熵实现:
H θ T [ a ∣ s , g ] = 1 K E ( s , g ) ∼ T [ H [ π θ ( a ∣ s , g ) ] ] = 1 K E ( s , g ) ∼ T [ ∑ k = 1 K H [ π θ ( a k ∣ s − K , k , g − K , k ) ] ] \begin{aligned}H_\theta^T[\mathbf{a}|\mathbf{s},\mathbf{g}]=&\frac{1}{K}\mathbb{E}_{(\mathbf{s},\mathbf{g})\sim\mathcal{T}}\big[H[\pi_\theta(\mathbf{a}|\mathbf{s},\mathbf{g})]\big]\\=&\frac{1}{K}\mathbb{E}_{(\mathbf{s},\mathbf{g})\sim\mathcal{T}}\big[\sum_{k=1}^KH\big[\pi_\theta(a_k|\mathbf{s}_{-K,k},\mathbf{g}_{-K,k})\big]\big]\end{aligned} HθT[a∣s,g]==K1E(s,g)∼T[H[πθ(a∣s,g)]]K1E(s,g)∼T[k=1∑KH[πθ(ak∣s−K,k,g−K,k)]]
其中 H [ π θ ( a k ) ] H[\pi_{\theta}(a_{k})] H[πθ(ak)]表示Shannon熵。类似于SAC,对策略熵设置下界保证其探索,那么优化问题转化为:
min θ J ( θ ) subject to H θ T [ a ∣ s , g ] ⩾ β \min_\theta J(\theta) \quad\text{subject to} \quad H_\theta^T[\mathbf{a}|\mathbf{s},\mathbf{g}]\geqslant\beta θminJ(θ)subject toHθT[a∣s,g]⩾β
该问题转化为对偶问题: max λ ⩾ 0 min θ L ( θ , λ ) : J ( θ ) + λ ( β − H θ T [ a ∣ s , g ] ) \max_{\lambda\geqslant0}\min_\theta L(\theta,\lambda) :J(\theta)+\lambda(\beta-H_{\theta}^{\mathcal{T}}[\mathrm{a|s},\mathrm{g}]) maxλ⩾0minθL(θ,λ):J(θ)+λ(β−HθT[a∣s,g])
进一步交替优化参数 θ \theta θ与 λ \lambda λ。优化 θ \theta θ时,固定参数 λ \lambda λ,即优化下述问题: min θ J ( θ ) − λ H θ T [ a ∣ s , g ] \min_\theta J(\theta)-\lambda H_\theta^T[\mathbf{a}|\mathbf{s},\mathbf{g}] minθJ(θ)−λHθT[a∣s,g]
优化 λ \lambda λ时,固定参数 θ \theta θ,即优化下述问题: min λ ⩾ 0 λ ( H θ T [ a ∣ s , g ] − β ) \min\limits_{\lambda\geqslant0}\lambda(H_\theta^T[\mathbf{a}|\mathbf{s},\mathbf{g}]-\beta) λ⩾0minλ(HθT[a∣s,g]−β)
不同于SAC的最大化累计回报的优化目标,本方法关注的是动作序列的监督学习。严格地说, H θ T [ a ∣ s , g ] H_\theta^T[\mathbf{a}|\mathbf{s},\mathbf{g}] HθT[a∣s,g]是交叉条件熵,对离线与在线数据发挥不同作用。离线时控制分布不匹配的程度(对最小负对数似然添加正则化项, λ \lambda λ控制正则程度),在线时则鼓励策略进行探索。
2.2 ReplayBuffer
ReplayBuffer中存在的是trajectories,而非一般RL的transitions。离线训练后,将离线数据中最高的轨迹累计回报的轨迹数据初始化Buffer。在线交互时,完成一次episode获得trajectory,采用先入先出的规定对Buffer进行更新。
对Buffer中的轨迹采样是基于HER的思想。轨迹被采样的概率与其长度相关,具体见Algorithm 2伪代码的2行。然后均匀的对长度k的子序列抽样,具体见Algorithm 2伪代码的7行