您當前的位置:首頁 > 攝影

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

作者:由 強化學習實驗室 發表于 攝影時間:2022-04-20

本文發表於Arxiv 2022,論文連結詳見

https://

arxiv。org/pdf/2203。0894

9。pdf

一、問題

本文指出現實中的offline資料集往往是在不同的場景下收集的,比如資料可能來自於多個人類的演示,或者是來自於目的不同的多個策略。現有的嘗試解決所謂多模態資料的方法包括AWAC、AWR、ABM等方法,他們透過計算每個 pair的advantage,來動態調整重建行為策略時這些樣本的權重,並使用KL散度來約束學習策略與行為策略的區別。然而,這些方法在這種資料集上重建出的行為策略與最優策略的分佈偏移可能是非常大的,導致這類演算法往往效果很差。

具體來說,假設有一個數據集,其資料由推動、抓取和開箱子三個任務的資料組成,而離線強化學習的學習目標是學出將一個物體放置到一個指定的位置,那麼與這個任務高度相關的動作則同時存在於推動任務與抓取任務的資料集中。在這種情況下,諸如透過最小化重建的行為策略與學習策略之間的KL散度的方法,則會容易擬合出如下圖所示的藍色區域的動作分佈,而藍色區域中存在著OOD的動作,採取這些OOD的動作便很容易導致目標任務的失敗。

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖1 多模態資料示例

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖2 現有基於KL散度約束方法的缺陷

本文透過一個toy實驗驗證了一下上述猜想。本文設計了一個導航任務,該任務的目標是繞過障礙並導航至目標低點。在該任務的初始狀態,智慧體面前就有一個障礙,因此在初始狀態時,最優的策略應該是向左或者向右繞過該障礙。本文采用了AWAC在該任務上進行了訓練,實驗結果發現,AWAC確實會在最優策略機率高的動作上賦予一些較高的權重,然而它同時也在一些OOD動作上賦予了很高的權重。同樣的問題不止存在於用KL散度衡量距離的方法中,同樣出現在用MMD衡量距離的方法中。

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖3 toy example實驗結果

二、方法

本文的想法是,既然在這種多模態資料的原始空間中,在不同的狀態下存在多個高reward的動作,那能否構造一個隱空間,這個隱空間基於不同的state,把獲得高reward的動作都對映到同一個鄰近空間裡,從而捕捉與目標任務相關的高價值動作呢?具體思路如下圖所示:

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖4 LAPO研究思路

基於這個思路,本文結合了PLAS和AWR,設計了本文的方法LAPO(Latent-space advantage-weighted policy training),其中包含一個advantage加權的行為策略模型與一個隱策略網路。

首先,本文采用AWR的思想,最大化advantage加權動作的log-likelihood,設計了一個類似於VAE的模型來重建產生多模態資料的行為策略,稱為動作策略

\pi_{\theta}

\begin{aligned} \max _{\pi_{\theta}, q_{\psi}} \mathbb{E}_{s, a \sim \mathscr{D}}\left[\omega \mathbb { E } _ { q _ { \psi } ( z | s , a ) } \left[\log \left(\pi_{\theta}(a \mid s, z)\right)-\right.\right. \left.\beta \operatorname{D}_{K L}\left(q_{\psi}(z \mid s, a) \| p(z)\right)\right] \end{aligned}

其中

q_{\psi}

是變分分佈,

\omega=\exp (A(s, a) / \lambda)

是變換每個action的advantage得到的權重。該模型輸入的是當前的狀態與一個表徵

z

,這個

z

是由一個隱策略網路輸出的隱向量,可以理解為表徵後的動作。

其次便是這個隱策略網路。該隱策略

z \sim \pi_{\vartheta}(z \mid s)

輸入state,輸出動作隱變數

z

除了以上二者,還有便是傳統DDPG或TD3演算法中的Q函式。三者一起形成了一個policy iteration的流程。具體來說,三者的串聯關係如下圖所示:

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖5 LAPO元件關係圖

在這個policy iteration的流程中,policy evaluation時Q函式的更新方法如下:

\begin{gathered} \underset{Q_{\phi}}{\operatorname{argmin}} \mathbb{E}_{\mathscr{D}}\left[\left(r\left(s_{t}, a_{t}\right)+\gamma V\left(s_{t+1}\right)\right.\right.\left.\left.-Q_{\phi}\left(s_{t}, a_{t}\right)\right)^{2}\right] \end{gathered}

\begin{gathered} V(s)=\mathbb{E}_{a \sim \pi_{\theta}(. \mid s, z)}\left[Q_{\phi^{\prime}}(s, a)\right] . \\ z \sim \pi_{\vartheta}(. \mid s) \end{gathered}

然而需要注意的是,由於隱變數

z

將用作動作策略的輸入,因此一個無界的

z

可能導致動作策略生成OOD動作。 因此,為了更好地確保取樣分佈內的動作,隱策略

\pi_{\vartheta}(z \mid s)

可以建模為一個截斷的高斯分佈,或者對於確定性的策略,直接將輸出的

z

clip到

\left[-z_{\max }, Z_{\max }\right]

而隱策略

\pi_{\vartheta}(z \mid s)

則在policy improvement時,透過最大化Q函式來直接更新:

\underset{\pi_{\vartheta}}{\operatorname{argmax}} \mathbb{E} \underset{\substack{a \sim \pi_{\theta}(. \mid s, z) \\ z \sim \pi_{\vartheta}(. \mid s) \\ s \sim \mathscr{D}}}{ }[Q(a, s)] .

注意,此更新不影響動作策略

\pi_{\theta}

,其引數在Q值回傳時固定不變。

整體的演算法流程如下圖所示:

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖6 LAPO演算法流程

三、實驗結果

在toy example上驗證了LAPO可以生成更多高價值的動作:

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖7 toy example上LAPO的效果

本文在多模態與單模態資料集上都驗證了自己的效果:

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖8 多模態資料結果

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖9 單模態資料結果

還分別驗證了隱策略的重要性和約束

z

範圍的必要性:

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖10 隱策略的重要性

論文分享:Latent-Variable Advantage-Weighted Policy Optimization for Offline RL

圖11 約束z的必要性

四、總結

考慮的多模態資料類似於模仿學習中的設定,為該設定下的多模態離線強化學習提供了一個新的方案。

標簽: 策略  動作  模態  本文  LAPO