離線強(qiáng)化學(xué)習(xí)新范式!京東科技&清華提出解耦式學(xué)習(xí)算法
離線強(qiáng)化學(xué)習(xí)算法 (Offline RL) 是當(dāng)前強(qiáng)化學(xué)習(xí)最火的子方向之一。離線強(qiáng)化學(xué)習(xí)不與環(huán)境交互,旨在從以往記錄的數(shù)據(jù)中學(xué)習(xí)目標(biāo)策略。在面臨數(shù)據(jù)收集昂貴或危險(xiǎn)等問(wèn)題,但是可能存在大量數(shù)據(jù)領(lǐng)域(例如,機(jī)器人、工業(yè)控制、自動(dòng)駕駛),離線強(qiáng)化學(xué)習(xí)對(duì)比到在線強(qiáng)化學(xué)習(xí)(Online RL)尤其具有吸引力。

在利用貝爾曼策略評(píng)估算子進(jìn)行策略評(píng)估時(shí),根據(jù) X 的不同可以把當(dāng)前的離線強(qiáng)化學(xué)習(xí)算法分為 RL-based (x=π)和 Imitation-based (x=μ), 其中π為目標(biāo)策略,μ為行為策略 (注:目標(biāo)策略:進(jìn)行學(xué)習(xí)更新的策略;行為策略:離線數(shù)據(jù)中的策略)。當(dāng)前,不管是 RL-based 還是 Imitation-based, 都有各自?xún)?yōu)勢(shì)以及劣勢(shì):
1.RL-based 優(yōu)勢(shì):可以進(jìn)行數(shù)據(jù)外的泛化,最后達(dá)到學(xué)習(xí)到超越行為策略的目標(biāo)策略。劣勢(shì):需要在策略評(píng)估中準(zhǔn)確的價(jià)值估計(jì)(更多的行為正則化)和策略提升(更少的行為正則化)之間進(jìn)行權(quán)衡。在策略評(píng)估過(guò)程中,如果選取了數(shù)據(jù)分布外的動(dòng)作,無(wú)法準(zhǔn)確估計(jì)動(dòng)作價(jià)值函數(shù)(action-state value),最后導(dǎo)致的目標(biāo)策略學(xué)習(xí)失敗。
2.Imitation-based 優(yōu)勢(shì):因?yàn)樵诓呗栽u(píng)估的過(guò)程中都是數(shù)據(jù)分布內(nèi)的動(dòng)作,既可以帶來(lái)訓(xùn)練的穩(wěn)定性,又避免了數(shù)據(jù)分布外的策略評(píng)估,可以學(xué)習(xí)到接近行為策略庫(kù)中最好的策略。劣勢(shì):因?yàn)槎际遣扇?shù)據(jù)分布內(nèi)的動(dòng)作,所以很難超越原數(shù)據(jù)中存在的行為策略。

POR 基于此,既能避免策略評(píng)估過(guò)程中的權(quán)衡,也能擁有數(shù)據(jù)外泛化的能力。該工作已被 NeurIPS 2022 接收,并被邀請(qǐng)進(jìn)行口頭匯報(bào)(oral presentation)論文和代碼均已開(kāi)源。

- 論文:https://arxiv.org/abs/2210.08323
- 代碼:https://github.com/ryanxhr/POR
state-stitching vs. action-stitching
- 任務(wù):走格子,終點(diǎn)在右上角,起點(diǎn)在右下角。找到最短從起點(diǎn)到終點(diǎn)的路徑。
- 規(guī)則:智能體可以在任何一個(gè)格子選擇它周?chē)陌藗€(gè)格子,走到終點(diǎn)給與獎(jiǎng)勵(lì) 1,其他所有的行為獎(jiǎng)勵(lì)都是 0。
- 數(shù)據(jù):綠色的行走路徑是已有的路徑數(shù)據(jù)。
之前的 imitation-based 算法都是使用 action-stitching: 拼湊數(shù)據(jù)中可用的軌跡以達(dá)到目標(biāo)策略的學(xué)習(xí)。如視頻中藍(lán)色的軌跡,是在 action-stitching 下能夠?qū)W習(xí)到的最好軌跡,但是在數(shù)據(jù)外無(wú)法進(jìn)行有效的泛化,從而學(xué)習(xí)到超越數(shù)據(jù)中行為策略的目標(biāo)策略。但是,POR 通過(guò)解耦式的學(xué)習(xí)范式,能夠讓目標(biāo)策略進(jìn)行有效的泛化,從而超越行為策略的表現(xiàn)。
如何實(shí)現(xiàn) state-stitching?
Policy-guided Offline RL (POR)的學(xué)習(xí)過(guò)程分為三步,這三步是分別解耦的,互不影響。值得注意的是,POR 全程都是基于 imitation-based 的學(xué)習(xí),也就是樣本內(nèi)的學(xué)習(xí)(in-sample learning),不會(huì)對(duì)數(shù)據(jù)分布外的動(dòng)作進(jìn)行價(jià)值評(píng)估。

1. 利用分位數(shù)回歸學(xué)習(xí)價(jià)值函數(shù)的置信上界。
2. 利用已經(jīng)學(xué)習(xí)到的價(jià)值函數(shù)學(xué)習(xí)指導(dǎo)策略,該指導(dǎo)策略可以在給定當(dāng)前的狀態(tài)下,生成到樣本內(nèi)的下一步最優(yōu)的狀態(tài)位置(s')。后面一項(xiàng)作為約束項(xiàng)保證生成的狀態(tài)滿足 MDP 條件。
3. 利用數(shù)據(jù)中所有的樣本進(jìn)行學(xué)習(xí)一個(gè)執(zhí)行策略,該執(zhí)行策略在給定當(dāng)前狀態(tài)(s)和下一步的狀態(tài) (s') 之后,能夠采取正確的動(dòng)作從當(dāng)前狀態(tài)(s)移動(dòng)到下一步狀態(tài)(s')。

在測(cè)試過(guò)程,根據(jù)當(dāng)前狀態(tài)信息(s),先通過(guò)指導(dǎo)策略給出下一步的最優(yōu)狀態(tài)(s')。
給定(s, s'),執(zhí)行策略能夠進(jìn)行動(dòng)作選取和執(zhí)行。雖然 POR 的整個(gè)學(xué)習(xí)過(guò)程都是樣本內(nèi)的學(xué)習(xí),但是可以利用神經(jīng)網(wǎng)絡(luò)的泛化性能進(jìn)行數(shù)據(jù)外的泛化學(xué)習(xí),最后實(shí)現(xiàn) state-stitching。

實(shí)驗(yàn)
作者對(duì)比了 POR 和其他算法在 D4RL Benchmark 上的表現(xiàn)。從表格來(lái)上看,POR 在次優(yōu)數(shù)據(jù)上的表現(xiàn)非常亮眼,在具有更大難度 Antmaze 任務(wù)上的表現(xiàn)均取得最優(yōu)的算法性能。

同時(shí),作者對(duì)比了 POR(state-stitching) 和 IQL(action-stitching)的訓(xùn)練曲線,以表現(xiàn) state-stitching 的優(yōu)勢(shì)。

解耦有哪些額外的好處
1. 重新學(xué)習(xí)指導(dǎo)策略以實(shí)現(xiàn)算法的性能提高。
真實(shí)的世界中往往存在?量的次優(yōu)甚?隨機(jī)的數(shù)據(jù)集 (D_o),如果直接引入到正在學(xué)習(xí)的原始數(shù)據(jù)集 (D_e) 上可能會(huì)導(dǎo)致學(xué)到?個(gè)較差的策略,但是對(duì)于解耦式學(xué)習(xí)算法來(lái)講,針對(duì)到不同的組件,學(xué)習(xí)不同的數(shù)據(jù)集來(lái)提升表現(xiàn)。在學(xué)習(xí)價(jià)值函數(shù)的時(shí)候往往是越多的數(shù)據(jù)集越好,因?yàn)榭梢园褍r(jià)值函數(shù)可以學(xué)得更準(zhǔn)確;相反,策略的學(xué)習(xí)是不希望引入 (D_o)。
作者對(duì)比了三個(gè)不同的算法在不同訓(xùn)練場(chǎng)景下的表現(xiàn):
1. Main : 在原始數(shù)據(jù)集上 (D_e) 進(jìn)行學(xué)習(xí),不引入額外次優(yōu)數(shù)據(jù)集。
2. More:把原始數(shù)據(jù)集 (D_e) 和新數(shù)據(jù)集(D_o)進(jìn)行混合,作為新的數(shù)據(jù)集進(jìn)行學(xué)習(xí)。
3. Mix: 對(duì)于解耦的算法,對(duì)于不同的學(xué)習(xí)部分,可以用不同的數(shù)據(jù)集進(jìn)行學(xué)習(xí),所以只有 POR 可以有 Mix 的學(xué)習(xí)范式。

從上圖可以看到,當(dāng)加入新的次優(yōu)數(shù)據(jù)一起訓(xùn)練過(guò)后(More),可能會(huì)導(dǎo)致比原來(lái)的只用原始數(shù)據(jù)集(Main)表現(xiàn)更好或者更差,但是針對(duì)到可以解耦的訓(xùn)練形式,用以 (D_o+D_e) 重新學(xué)習(xí)指導(dǎo)策略,作者實(shí)驗(yàn)說(shuō)明了更多的數(shù)據(jù)可以增強(qiáng)指導(dǎo)策略的擇優(yōu)性和泛化能力,同時(shí)保持行為策略不變,從而實(shí)現(xiàn)了執(zhí)行策略的提升。
4. 當(dāng)面對(duì)新任務(wù)的時(shí)候,因?yàn)閳?zhí)行策略是和任務(wù)無(wú)關(guān)的,只需要重新學(xué)習(xí)指導(dǎo)策略。
為此,作者提出了三個(gè)任務(wù)分別是 (a): four-room: 要求 agent 從綠色方塊到紅色方塊。(b) 除了完成任務(wù)(a) 之外,要求 agent 不能觸碰河流。(c)除了完成任務(wù)(a),(b)之外,要求 agent 必須獲得鑰匙才算完成任務(wù)。

上圖,是完成策略學(xué)習(xí)之后,對(duì)策略進(jìn)行 50 次的 rollout 的軌跡,在任務(wù) (b) 和任務(wù) (c) 作者沿用任務(wù) (a) 的執(zhí)行策略,只重新學(xué)習(xí)了指導(dǎo)策略。從上圖可以看出,解耦的學(xué)習(xí)方式可以在使用盡可能少的計(jì)算資源之下,完成任務(wù)的遷移。



































