機(jī)器之心報(bào)道
機(jī)器之心編輯部
自然智能(Natural intelligence)過程就像一條連續(xù)的流,可以實(shí)時(shí)地感知、行動(dòng)和學(xué)習(xí)。流式學(xué)習(xí)是 Q 學(xué)習(xí)和 TD 等經(jīng)典強(qiáng)化學(xué)習(xí) (RL) 算法的運(yùn)作方式,它通過使用最新樣本而不存儲(chǔ)樣本來(lái)模仿自然學(xué)習(xí)。這種方法也非常適合資源受限、通信受限和隱私敏感的應(yīng)用程序。
然而,在深度強(qiáng)化學(xué)習(xí)中,學(xué)習(xí)器(learners )幾乎總是使用批量更新和重放緩沖區(qū),這種方式使得它們?cè)谟?jì)算上很昂貴,并且與流式學(xué)習(xí)不兼容。
研究認(rèn)為批量深度強(qiáng)化學(xué)習(xí)之所以普遍,是因?yàn)樗臉颖拘矢?。流式深度?qiáng)化學(xué)習(xí)存在樣本效率問題,經(jīng)常出現(xiàn)不穩(wěn)定和學(xué)習(xí)失敗的情況。這一現(xiàn)象稱為流式障礙。
就像下圖展示的,流式強(qiáng)化學(xué)習(xí)需要從即時(shí)單個(gè)樣本進(jìn)行更新,而無(wú)需存儲(chǔ)過去的樣本,而批量強(qiáng)化學(xué)習(xí)則依賴于存儲(chǔ)在重放緩沖區(qū)中的過去樣本的批量更新。

為了解決流式障礙,本文來(lái)自阿爾伯塔大學(xué)等機(jī)構(gòu)的研究者提出了 stream-x 算法,這是第一類深度強(qiáng)化學(xué)習(xí)算法,用于克服預(yù)測(cè)和控制流式障礙,并匹配批量強(qiáng)化學(xué)習(xí)的樣本效率。

- 論文地址:https://openreview.net/pdf?id=yqQJGTDGXN
- 項(xiàng)目地址:https://github.com/mohmdelsayed/streaming-drl
- 論文標(biāo)題:Deep Reinforcement Learning Without Experience Replay, Target Networks, or Batch Updates
論文作者還提供了 stream-x 算法的最小實(shí)現(xiàn)(大約 150 行代碼),感興趣的讀者可以參考原項(xiàng)目。
本文證明了 stream-x 算法能夠克服流式障礙。
在電力消耗預(yù)測(cè)任務(wù)、MuJoCo Gym、DM Control Suite、MinAtar 和 Atari 2600 上的結(jié)果證明,該方法能夠作為現(xiàn)成的解決方案,克服流式障礙,提供以前無(wú)法通過流式方法實(shí)現(xiàn)的結(jié)果,甚至超越批量 RL 的性能。特別是,stream AC 算法在一些復(fù)雜的環(huán)境中達(dá)到了已知的最佳性能。
如下所示,經(jīng)典的流方法(例如 Classic Q )和批處理 RL 方法的流式版本(例如 PPO1)由于流式障礙而表現(xiàn)不佳。相比之下, stream-x 算法(例如 stream Q )克服了流式障礙,并與批處理 RL 算法競(jìng)爭(zhēng),證明了其穩(wěn)定性和魯棒性。

這項(xiàng)研究得到了強(qiáng)化學(xué)習(xí)之父 Richard Sutton 的轉(zhuǎn)發(fā)和評(píng)論:
「最初的強(qiáng)化學(xué)習(xí)(RL)算法受自然學(xué)習(xí)的啟發(fā),是在線且增量式的 —— 也就是說,它們是以流的方式進(jìn)行學(xué)習(xí)的,每當(dāng)新的經(jīng)驗(yàn)增量發(fā)生時(shí)就學(xué)習(xí),然后將其丟棄,永不再次處理。
流式算法簡(jiǎn)單而優(yōu)雅,但在深度學(xué)習(xí)中,RL 的首次重大成功并非來(lái)自流式算法。相反,像 DQN(深度 Q 網(wǎng)絡(luò))這樣的方法將經(jīng)驗(yàn)流切割成單獨(dú)的轉(zhuǎn)換(transitions),然后以任意批次進(jìn)行存儲(chǔ)和采樣。隨后的一系列工作遵循、擴(kuò)展并完善了這種批量方法,發(fā)展出異步和離線強(qiáng)化學(xué)習(xí),而流式方法卻停滯不前,無(wú)法在流行的深度學(xué)習(xí)領(lǐng)域中取得良好效果。
直到現(xiàn)在,阿爾伯塔大學(xué)的研究人員已經(jīng)證明,在 Atari 和 Mujoco 任務(wù)上,流式強(qiáng)化學(xué)習(xí)(Streaming RL) 算法可以與 DQN 一樣有效。
在我看來(lái),他們似乎是第一批熟悉流式強(qiáng)化學(xué)習(xí)算法的研究人員,認(rèn)真地解決深度強(qiáng)化學(xué)習(xí)問題,而不受批量導(dǎo)向的軟件和批量導(dǎo)向的監(jiān)督學(xué)習(xí)思維方式的過度影響?!?/p>
還有網(wǎng)友表示,流式算法確實(shí)塑造了強(qiáng)化學(xué)習(xí)的格局。

方法介紹
本文通過引入流式深度強(qiáng)化學(xué)習(xí)方法 ——Stream TD (λ)、Stream Q (λ) 和 Stream AC (λ),這些統(tǒng)稱為 stream-x 算法,并利用資格跡,來(lái)解決流式障礙問題。
該方法無(wú)需使用重放緩沖區(qū)、批量更新或目標(biāo)網(wǎng)絡(luò),即可從最新的經(jīng)驗(yàn)中進(jìn)行學(xué)習(xí)。與普遍認(rèn)知相反,本文證明了流式深度強(qiáng)化學(xué)習(xí)可以是穩(wěn)定的,并且在樣本效率上可與批量強(qiáng)化學(xué)習(xí)相當(dāng)。
由于流式學(xué)習(xí)方法在使用樣本后必須將其丟棄,因此可能會(huì)導(dǎo)致樣本效率低下。為此,本文提出了兩種技術(shù)來(lái)提高流式學(xué)習(xí)方法的樣本效率:1)稀疏初始化,2)資格跡。
算法 1 展示了本文提出的稀疏初始化技術(shù) — SparseInit。此稀疏初始化方案可用于全連接層和卷積層。

算法 3 展示了如何構(gòu)建一個(gè)優(yōu)化器,該優(yōu)化器使用有效步長(zhǎng)這一條件來(lái)控制更新大小。

下面為 stream-x 算法偽代碼。為了提高算法可讀性,作者使用了以下顏色編碼:紫色表示層歸一化,藍(lán)色表示觀測(cè)規(guī)一化,橙色表示獎(jiǎng)勵(lì)縮放,青色表示步長(zhǎng)縮放,棕色表示稀疏初始化。


實(shí)驗(yàn)結(jié)果
為了演示 Stream-x 算法的有效性,該研究首先展示了在不同環(huán)境中經(jīng)典方法失敗的流式障礙,而 Stream-x 算法克服了這一障礙,并且與其他批處理方法性能相當(dāng)。
克服流式障礙
流式深度強(qiáng)化學(xué)習(xí)方法經(jīng)常會(huì)遇到不穩(wěn)定和學(xué)習(xí)失敗的情況,稱為流式障礙。圖 2 顯示了三個(gè)不同的具有挑戰(zhàn)性的基準(zhǔn)測(cè)試任務(wù)中的流障礙:MuJoCo、DM Control 和 Atari。

Stream-x 算法的樣本效率
該研究通過比較不同算法的學(xué)習(xí)曲線來(lái)研究 stream-x 方法的樣本效率。圖 3 顯示了不同深度 RL 方法在四個(gè)連續(xù)控制 MuJoCo 任務(wù)上的性能。

圖 4 展示了流 Q (0.8) 與其對(duì)應(yīng)經(jīng)典方法以及 DQN1 和 DQN 在 MinAtar 任務(wù)上的性能。

Stream-x 算法在擴(kuò)展運(yùn)行中的穩(wěn)定性
接下來(lái),研究團(tuán)隊(duì)探究了 Stream-x 算法在長(zhǎng)時(shí)間運(yùn)行時(shí)的穩(wěn)定性,以有效地揭示方法是否可以長(zhǎng)時(shí)間運(yùn)行而不出現(xiàn)任何問題。實(shí)驗(yàn)結(jié)果如下圖 5 所示:

圖 6 顯示了不同智能體在總共經(jīng)歷 2 億幀的 Atari 游戲上的性能:

感興趣的讀者可以閱讀論文原文,了解更多研究?jī)?nèi)容。
熱門跟貼