DRQN论文解读
論文題目:Deep Recurrent Q-Learning for Partially Observable MDPs
論文鏈接:https://arxiv.org/abs/1507.06527
目錄
- Abstract
- Introduction
- Deep Q-Learning
- Partial Observability
- DRQN Architecture
- Stable Recurrent Updates
- Atari Games: MDP or POMDP?
- Flickering Atari Games
- Evaluation on Standard Atari Games
- MDP to POMDP Generalization
- Related Work
- Discussion and Conclusion
Abstract
深度強化學(xué)習(xí)可以熟練應(yīng)對復(fù)雜的問題,但內(nèi)存有限,且在每個決策點需要輸入整個游戲界面。
為克服這些缺點,本文在DQN中加入循環(huán)網(wǎng)絡(luò),將第一個post卷積全連接層替換為循環(huán)(recurrent) LSTM,稱該方法為Deep Recurrent Q-Network(DRQN)。雖然DRQN在每個timestep只輸入一幀畫面,但通過時間整合信息,在常規(guī)的Atari游戲和閃爍版本的游戲(部分可觀察)中,達到了DQN的性能。
此外,用部分可觀察的數(shù)據(jù)進行訓(xùn)練,并用完整的觀察數(shù)據(jù)進行評估,DRQN的性能與觀察質(zhì)量有關(guān)。當(dāng)用完整的觀察數(shù)據(jù)進行訓(xùn)練,用部分可觀察的數(shù)據(jù)進行評估,DRQN的性能下降小于DQN。因此,給定相同長度的歷史數(shù)據(jù),DRQN是一種可行的替代方案,即在DQN的輸入層中加入幀的歷史數(shù)據(jù)。雖然該方法在游戲中沒有明顯的優(yōu)勢,但當(dāng)觀察質(zhì)量發(fā)生變化時,循環(huán)網(wǎng)絡(luò)在評估時具有更好的適應(yīng)性。
Introduction
DQN是從有限數(shù)量的狀態(tài)中學(xué)習(xí)映射關(guān)系。在實踐中,DQN將最近的四幀畫面當(dāng)作輸入進行訓(xùn)練,因此DQN無法記住四幀之前的內(nèi)容。換言之,任何需要超過四幀記憶的游戲都將表現(xiàn)為非MDP問題,因為游戲未來的狀態(tài)(和獎勵)不僅僅取決于DQN當(dāng)前的輸入。游戲不再是MDP問題,而是部分可觀察的MDP(POMDP)。現(xiàn)實世界中,任務(wù)往往不具有完整的信息,且有噪聲,因此是部分可觀察的。
如圖1所示,許多Atari2600游戲都是POMDP。例如Pong游戲,當(dāng)前游戲界面只顯示球和球拍的位置,但不知道球的速度。了解球的運動方向,對決定球拍的最佳位置是至關(guān)重要的。
我們觀察到,當(dāng)給定部分可觀察的狀態(tài)時,DQN的性能下降了。我們假設(shè)DQN可以通過RNN進行改善,以更好地處理POMDP問題。因此,我們引入了DRQN,將DQN與LSTM結(jié)合。我們證明了,DRQN可以處理POMDP問題,并且用完整的觀察進行訓(xùn)練,用部分可觀察的數(shù)據(jù)進行評估,DRQN相比DQN能更好地處理信息丟失。因此,當(dāng)觀察質(zhì)量下降時,DRQN表現(xiàn)更好。
Deep Q-Learning
環(huán)境是MDP的形式,用4元組(S, A, P, R)表示。在每個t時刻,agent與MDP的觀察進行交互:
Q-Learning是model-free、off-policy的算法,估計在給定狀態(tài)state下執(zhí)行某個行動action的長期回報reward的期望值。這些回報的估值,就是Q-values。Q-value的更新:
Atari游戲中,有太多獨一無二的狀態(tài),無法單獨估計每種狀態(tài)下的各種行動的Q值,所以2015年有人提出了DQN。
需要最小化損失函數(shù)來訓(xùn)練網(wǎng)絡(luò)參數(shù):
用DQN訓(xùn)練的Q-values可能是收斂的,也可能是發(fā)散的。
DQN使用三種技巧來提高訓(xùn)練的穩(wěn)定性:
網(wǎng)絡(luò)的損失定義如下:
Partial Observability
在現(xiàn)實世界中很少有完整的狀態(tài),即馬爾可夫性在現(xiàn)實世界中很少成立。POMDP承認輸入的是部分可觀察的數(shù)據(jù),所以能更好地捕捉現(xiàn)實世界的動態(tài)過程。形式上, POMDP可以表示為6元組,輸入agent的是部分可觀察的數(shù)據(jù),觀察質(zhì)量根據(jù)概率分布由系統(tǒng)產(chǎn)生的。
普通的DQN沒有明確的機制來解釋POMDP潛在的狀態(tài)(只有部分狀態(tài)被觀察到,還有部分狀態(tài)沒被觀察到),只有當(dāng)觀察的結(jié)果反映了潛在的狀態(tài)時才有效。一般來說,DQN根據(jù)觀察來評估Q-value,效果可能好,也可能不好,因為:
DRQN可以讓Q網(wǎng)絡(luò)更好地評估系統(tǒng)的潛在狀態(tài),縮小上述等式左右兩邊的差異。換言之,DRQN可以根據(jù)觀察內(nèi)容更好地估計實際的Q-value,在部分可觀察的環(huán)境中生成更好的策略。
DRQN Architecture
為了減少循環(huán)recurrency的影響,我們對DQN進行了較小的修改,僅將第一個全連接層替換為相同大小的循環(huán)的LSTM層。
如圖2所示,DRQN的結(jié)構(gòu)中,輸入一張84*84預(yù)處理后的圖像。該圖像用三個卷積層處理后,再輸入全連接的LSTM層。最后,線性層為每個action輸出一個Q-value。在訓(xùn)練過程中,網(wǎng)絡(luò)的卷積部分和循環(huán)部分(LSTM)的參數(shù)是從頭開始共同學(xué)習(xí)的。我們對幾種不同的結(jié)構(gòu)進行了實驗,最終采用了現(xiàn)在這種結(jié)構(gòu),詳情見附錄A。
Stable Recurrent Updates
更新一個循環(huán)卷積網(wǎng)絡(luò),需要向后傳遞許多包含游戲界面和target value的timestep。LSTM的初始隱藏狀態(tài)可以設(shè)為零,或者從先前的值接著計算。我們考慮兩種更新方式:
順序更新的優(yōu)點是將LSTM的隱藏狀態(tài)從episode一開始就向前推進。然而,對一個完整episode的經(jīng)驗進行順序采樣,違反了DQN的隨機采樣策略。隨機更新更好地遵循隨機采樣策略。但LSTM的隱藏狀態(tài)在每次更新開始時必須為零。將隱藏狀態(tài)設(shè)為零,會使LSTM更難學(xué)習(xí)函數(shù)(相比后向傳播到達的時間,函數(shù)跨越的時間長度更長)。
實驗表明,兩種更新方式都是可行的,在一組游戲中產(chǎn)生的收斂策略性能接近。因此,為了降低復(fù)雜性,本文中均采用隨機更新策略。我們希望所有的結(jié)果都能推廣到順序更新方式。
Atari Games: MDP or POMDP?
對于Atari 2600游戲,人類和agent只能觀察到游戲界面,但單個游戲界面不足以確定游戲的完整狀態(tài)。DQN用最后四幀的游戲界面,來代替游戲的完整狀態(tài)。許多游戲本來是POMDP,現(xiàn)在變成了MDP。所研究的游戲中,當(dāng)輸入4幀數(shù)據(jù)時是完全可觀察的,我們需要在不減少DQN輸入幀數(shù)的情況下引入部分可觀察的方法。
Flickering Atari Games
我們引入了Flickering Pong(閃爍版本的Pong游戲)——經(jīng)典Pong的一種修改版本,在每個timestep,游戲界面要么完全顯示,要么是模糊的,概率為0.5,模糊的游戲界面使游戲變成了POMDP。為了在Flickering Pong游戲中勝利,需要整合各幀的信息來估計相關(guān)變量,例如球的位置和速度、球拍的位置。由于一半的幀是模糊的,必須對幾個可能相鄰的模糊的輸入具有魯棒性。對游戲界面的時間序列來說,最重要的是檢測物體的速度。圖3將游戲界面可視化,最大化不同卷積過濾器(filter)的激活,并證實了10幀的DQN過濾器可以檢測物體的速度,盡管可能不如原版本的Pong游戲。
樣本卷積的過濾器從DQN 10幀數(shù)據(jù)中進行學(xué)習(xí)。每行的圖片是輸入幀,最大化指定層中特定卷積過濾器的激活。紅色邊框是輸入中導(dǎo)致最大化激活的圖像。第一個卷積層的過濾器僅檢測球拍。第二個卷積層的過濾器檢測球在特定方向上的移動,有些是同時跟蹤球和球拍。第三個卷積層的過濾器,幾乎全部都跟蹤球和球拍的相互作用,包括偏轉(zhuǎn)、球的速度和飛行方向。盡管一次只能看到一幀畫面,單個LSTM單元也能檢測到高級別的事件:agent錯過了球,球在球拍上的反射,球在墻壁上的反射。如果agent看到的是最后10幀重疊形成的圖像,最近的幀會有更高的亮度。
值得注意的是,DRQN在這項任務(wù)中表現(xiàn)很好,即使在每個timestep中僅輸入一幀。在一幀的情況下,DRQN的卷積層不可能檢測到任何類型的速度。所以,高級別(higher-level)的循環(huán)層需要同時補償閃爍版本中游戲界面和卷積速度檢測的不足。
圖3(d)中證實,LSTM層中的單個單元能夠通過時間整合有噪聲的單幀信息,以檢測高級別的Pong游戲的事件:玩家錯過球、球在球拍上反射、球在墻壁上反射。
DRQN使用后向傳播最后10個timestep進行訓(xùn)練。因此,非循環(huán)的10幀DQN和循環(huán)的1幀DRQN,都可以獲取相同游戲界面的歷史數(shù)據(jù)(2015年有人提出,LSTM可以在訓(xùn)練時通過有限的一組timestep學(xué)習(xí)函數(shù),然后在測試時將他們推廣到更長的序列中)。因此,在處理部分可觀測性時,可以選擇使用具有長期歷史觀測數(shù)據(jù)的非循環(huán)深度網(wǎng)絡(luò),或使用在每個timestep中由單個觀測值訓(xùn)練的循環(huán)網(wǎng)絡(luò)。本節(jié)的結(jié)果表明,循環(huán)網(wǎng)絡(luò)可以通過時間整合信息,并在卷積網(wǎng)絡(luò)的輸入層中保存幀的數(shù)據(jù),這種方案是可行的。
Evaluation on Standard Atari Games
我們選擇了以下九種Atari游戲進行評估:
- Asteroids and Double Dunk:包含不斷閃爍的畫面,有利于循環(huán)學(xué)習(xí);
- Beam Rider, Centipede, and Chopper Command:射擊游戲;
- Frostbite:與Frogger類似的游戲;
- Ice Hockey and Double Dunk:運動類游戲,需要定位球員、傳球、踢球,球員需要進攻和防守;
- Bowling:在特定時間執(zhí)行行動來引導(dǎo)保齡球;
- Ms Pacman:特點是閃爍的幽靈和藥丸;
給定最后四幀作為輸入,所有的這些游戲都是MDP,而不是POMDP。表1中的結(jié)果表明,DRQN和DQN的表現(xiàn)差不多。
MDP to POMDP Generalization
循環(huán)網(wǎng)絡(luò)能在標(biāo)準(zhǔn)的MDP上訓(xùn)練,然后在評估時推廣到POMDP嗎?為了解決這個問題,我們評估了DRQN和DQN在所有9個游戲的flickering版本中得分最高的策略,見表1.
圖5顯示,當(dāng)這兩種算法由于信息丟失而導(dǎo)致性能的顯著下降,當(dāng)觀察質(zhì)量下降時,DRQN比DQN更能維持性能。
我們得出結(jié)論,循環(huán)網(wǎng)絡(luò)對信息丟失具有一定的魯棒性,即使是用完整的狀態(tài)信息進行訓(xùn)練。
Related Work
當(dāng)使用策略梯度(policy gradient)時,LSTM網(wǎng)絡(luò)已經(jīng)被證明可以用來解決POMDP問題。與策略梯度不同,我們使用時間差分(temporal-difference)更新來引導(dǎo)動作值函數(shù)(action-value function)。此外,通過一起訓(xùn)練卷積層和LSTM層,我們能夠直接從像素中學(xué)習(xí),不需要手工設(shè)計的特征。
用LSTM作為advantage-function的逼近器,來解決部分可觀察的corridor和cartpole游戲,結(jié)果證明比非LSTM的RNN效果更好。雖然原理上類似,corridor和cartpole游戲的特征是只有一些特征的較小的狀態(tài)空間。
2015年,有人將LSTM與深度強化學(xué)習(xí)結(jié)合,以證明循環(huán)有助于玩基于文本的游戲。方法是類似的:雖然生成的文本比較復(fù)雜,但MDP具有相對低維度的狀態(tài)空間。兩種游戲中比較復(fù)雜的只有56個基本狀態(tài)。相比之下,Atari游戲的狀態(tài)空間更大,典型的游戲中有數(shù)百萬個不同的狀態(tài)。然而,文本游戲的行動空間更大,一個分支可以達到222,而Atari只有18.
Discussion and Conclusion
現(xiàn)實世界中,任務(wù)的狀態(tài)信息往往是不完整且有噪聲的,所以是部分可觀察的。我們對DQN進行了改進,將LSTM與DQN結(jié)合來處理POMDP問題,即DRQN。盡管在每一步中只輸入一幀數(shù)據(jù),DRQN仍然能夠跨越多個幀整合信息,以檢測相關(guān)信息,例如屏幕上物體的速度。此外,在閃爍版本的Pong游戲中,對于處理這種部分可觀察問題,DRQN比常規(guī)的DQN表現(xiàn)得更好。
當(dāng)訓(xùn)練部分是部分可觀察的,DRQN可以將策略推廣到完全可觀察的情形。在Pong游戲中,算法的性能與觀察質(zhì)量有關(guān),當(dāng)每個游戲界面都能觀察到時,性能達到最佳水平。結(jié)果表明,循環(huán)網(wǎng)絡(luò)學(xué)習(xí)的策略具有魯棒性,能處理丟失的游戲界面,并隨著觀察質(zhì)量的提高,性能也隨之提高。當(dāng)用常規(guī)的Atari游戲進行訓(xùn)練,用閃爍版本的游戲進行評估時,對不同質(zhì)量的觀察信息,DRQN比DQN的表現(xiàn)更好。
實驗中,Pong游戲代表了一類游戲。在一組閃爍版本的10幀MDP數(shù)據(jù)中,使用循環(huán)網(wǎng)絡(luò)在性能上沒有明顯的提升。在常規(guī)的Atari游戲中,DRQN和DQN的表現(xiàn)也沒有顯著差異。
我們得出結(jié)論,雖然DRQN在處理狀態(tài)觀察問題時是一種可行的方法,與在卷積網(wǎng)絡(luò)的輸入層中保存觀察信息相比,性能上沒有表現(xiàn)得更好。
總結(jié)
- 上一篇: 扬帆起航:CCF开源发展论坛在深举办
- 下一篇: 1_Java语言概述