機器之心專欄
機器之心編輯部
新方法 POR 對離線強化學習算法的政策評估和政策提升過程進行解耦式學習,完成了狀态連接配接的思想。POR 既擁有了訓練的穩定性,也擁有了穩定的邏輯範圍内的資料外的泛化能力,在 Benchmark 上表現驚人,并提出了該解耦式學習範式的潛在好處。
離線強化學習算法 (Offline RL) 是目前強化學習最火的子方向之一。離線強化學習不與環境互動,旨在從以往記錄的資料中學習目标政策。在面臨資料收集昂貴或危險等問題,但是可能存在大量資料領域(例如,機器人、工業控制、自動駕駛),離線強化學習對比到線上強化學習(Online RL)尤其具有吸引力。
在利用貝爾曼政策評估算子進行政策評估時,根據 X 的不同可以把目前的離線強化學習算法分為 RL-based (x=π)和 Imitation-based (x=μ), 其中π為目标政策,μ為行為政策 (注:目标政策:進行學習更新的政策;行為政策:離線資料中的政策)。目前,不管是 RL-based 還是 Imitation-based, 都有各自優勢以及劣勢:
1.RL-based 優勢:可以進行資料外的泛化,最後達到學習到超越行為政策的目标政策。劣勢:需要在政策評估中準确的價值估計(更多的行為正則化)和政策提升(更少的行為正則化)之間進行權衡。在政策評估過程中,如果選取了資料分布外的動作,無法準确估計動作價值函數(action-state value),最後導緻的目标政策學習失敗。
2.Imitation-based 優勢:因為在政策評估的過程中都是資料分布内的動作,既可以帶來訓練的穩定性,又避免了資料分布外的政策評估,可以學習到接近行為政策庫中最好的政策。劣勢:因為都是采取資料分布内的動作,是以很難超越原資料中存在的行為政策。
POR 基于此,既能避免政策評估過程中的權衡,也能擁有資料外泛化的能力。該工作已被 NeurIPS 2022 接收,并被邀請進行口頭彙報(oral presentation)論文和代碼均已開源。
- 論文:https://arxiv.org/abs/2210.08323
- 代碼:https://github.com/ryanxhr/POR
- 任務:走格子,終點在右上角,起點在右下角。找到最短從起點到終點的路徑。
- 規則:智能體可以在任何一個格子選擇它周圍的八個格子,走到終點給與獎勵 1,其他所有的行為獎勵都是 0。
- 資料:綠色的行走路徑是已有的路徑資料。
之前的 imitation-based 算法都是使用 action-stitching: 拼湊資料中可用的軌迹以達到目标政策的學習。如視訊中藍色的軌迹,是在 action-stitching 下能夠學習到的最好軌迹,但是在資料外無法進行有效的泛化,進而學習到超越資料中行為政策的目标政策。但是,POR 通過解耦式的學習範式,能夠讓目标政策進行有效的泛化,進而超越行為政策的表現。
如何實作 state-stitching?
Policy-guided Offline RL (POR)的學習過程分為三步,這三步是分别解耦的,互不影響。值得注意的是,POR 全程都是基于 imitation-based 的學習,也就是樣本内的學習(in-sample learning),不會對資料分布外的動作進行價值評估。
1. 利用分位數回歸學習價值函數的置信上界。
2. 利用已經學習到的價值函數學習指導政策,該指導政策可以在給定目前的狀态下,生成到樣本内的下一步最優的狀态位置(s')。後面一項作為限制項保證生成的狀态滿足 MDP 條件。
3. 利用資料中所有的樣本進行學習一個執行政策,該執行政策在給定目前狀态(s)和下一步的狀态 (s') 之後,能夠采取正确的動作從目前狀态(s)移動到下一步狀态(s')。
在測試過程,根據目前狀态資訊(s),先通過指導政策給出下一步的最優狀态(s')。
給定(s, s'),執行政策能夠進行動作選取和執行。雖然 POR 的整個學習過程都是樣本内的學習,但是可以利用神經網絡的泛化性能進行資料外的泛化學習,最後實作 state-stitching。
實驗
作者對比了 POR 和其他算法在 D4RL Benchmark 上的表現。從表格來上看,POR 在次優資料上的表現非常亮眼,在具有更大難度 Antmaze 任務上的表現均取得最優的算法性能。
同時,作者對比了 POR(state-stitching) 和 IQL(action-stitching)的訓練曲線,以表現 state-stitching 的優勢。
解耦有哪些額外的好處
1. 重新學習指導政策以實作算法的性能提高。
真實的世界中往往存在⼤量的次優甚⾄随機的資料集 (D_o),如果直接引入到正在學習的原始資料集 (D_e) 上可能會導緻學到⼀個較差的政策,但是對于解耦式學習算法來講,針對到不同的元件,學習不同的資料集來提升表現。在學習價值函數的時候往往是越多的資料集越好,因為可以把價值函數可以學得更準确;相反,政策的學習是不希望引入 (D_o)。
作者對比了三個不同的算法在不同訓練場景下的表現:
1. Main : 在原始資料集上 (D_e) 進行學習,不引入額外次優資料集。
2. More:把原始資料集 (D_e) 和新資料集(D_o)進行混合,作為新的資料集進行學習。
3. Mix: 對于解耦的算法,對于不同的學習部分,可以用不同的資料集進行學習,是以隻有 POR 可以有 Mix 的學習範式。
從上圖可以看到,當加入新的次優資料一起訓練過後(More),可能會導緻比原來的隻用原始資料集(Main)表現更好或者更差,但是針對到可以解耦的訓練形式,用以 (D_o+D_e) 重新學習指導政策,作者實驗說明了更多的資料可以增強指導政策的擇優性和泛化能力,同時保持行為政策不變,進而實作了執行政策的提升。
2. 當面對新任務的時候,因為執行政策是和任務無關的,隻需要重新學習指導政策。
為此,作者提出了三個任務分别是 (a): four-room: 要求 agent 從綠色方塊到紅色方塊。(b) 除了完成任務(a) 之外,要求 agent 不能觸碰河流。(c)除了完成任務(a),(b)之外,要求 agent 必須獲得鑰匙才算完成任務。
上圖,是完成政策學習之後,對政策進行 50 次的 rollout 的軌迹,在任務 (b) 和任務 (c) 作者沿用任務 (a) 的執行政策,隻重新學習了指導政策。從上圖可以看出,解耦的學習方式可以在使用盡可能少的計算資源之下,完成任務的遷移。