博客專欄

EEPW首頁(yè) > 博客 > 三個(gè)經(jīng)典強(qiáng)化學(xué)習(xí)算法中重大缺陷(及如何修復(fù))

三個(gè)經(jīng)典強(qiáng)化學(xué)習(xí)算法中重大缺陷(及如何修復(fù))

發(fā)布人:大數(shù)據(jù)文摘 時(shí)間:2023-02-18 來(lái)源:工程師 發(fā)布文章
大數(shù)據(jù)文摘授權(quán)轉(zhuǎn)載自數(shù)據(jù)派THU

作者:Wouter van Heeswijk, PhD翻譯:陳之炎
校對(duì):張睿毅
如何克服經(jīng)典強(qiáng)化學(xué)習(xí)(RL)中遇到的下述缺陷:
諸如Q-learning和REINFORCE等強(qiáng)化學(xué)習(xí)算法問世已經(jīng)幾十年了,教科書仍然廣泛圍繞它們。然而這些算法暴露出的一些根本的缺陷,極大地增加了一個(gè)良好策略進(jìn)行學(xué)習(xí)的難度。
本文討論經(jīng)典強(qiáng)化學(xué)習(xí)算法的三個(gè)主要缺陷,以及克服這些缺陷的解決方案。

選擇高估值的動(dòng)作


問題描述


大多數(shù)RL算法在Q-learning算法基礎(chǔ)上使用價(jià)值函數(shù)來(lái)捕獲下游獎(jiǎng)勵(lì),其中Q-learning算法的驅(qū)動(dòng)機(jī)制是,它選擇生成最高期望值的那個(gè)動(dòng)作。由于初始化的不同,這種機(jī)制在嘗試第一個(gè)操作時(shí)往往會(huì)卡住,所以通常選擇概率為?的隨機(jī)操作,典型值設(shè)置為0.05左右。
在極限情況下,會(huì)無(wú)限頻次地嘗試每個(gè)動(dòng)作,直到Q收斂到真實(shí)值。然而,實(shí)際經(jīng)常是使用有限的樣本,Q值就帶偏差,因此問題是Q-learning算法會(huì)持續(xù)地選擇高估值的動(dòng)作!
想象一下,當(dāng)玩兩個(gè)相同的老虎機(jī)時(shí),早期迭代中機(jī)器A碰巧給出了高于平均水平的獎(jiǎng)勵(lì),所以它的Q值更高,繼續(xù)玩機(jī)器A。于是,由于機(jī)器B使用更少,因此需要更長(zhǎng)時(shí)間才能計(jì)算出Q值。即便實(shí)際上兩臺(tái)機(jī)器Q值相同。
從一般意義上來(lái)說(shuō),價(jià)值函數(shù)并不總是完美的,雖然RL更喜歡執(zhí)行估值較高的動(dòng)作,但不排除可能有時(shí)候RL會(huì)“獎(jiǎng)勵(lì)”估值低的動(dòng)作——這顯然不是理想的屬性。
圖片老虎機(jī)問題清楚證明了選擇值溢出動(dòng)作帶來(lái)的影響[圖源Bangyu Wang“Unsplash”雜志]

解決方案


Q-learning算法的問題可以溯源到用相同的觀察結(jié)果進(jìn)行采樣和更新的實(shí)踐,通過使用一個(gè)策略進(jìn)行采樣并更新另一個(gè)策略來(lái)解耦這些步驟,這正是Q-learning(Van Hasselt,2010)所做的。
圖片
雙Q-learning對(duì)網(wǎng)絡(luò)的動(dòng)作進(jìn)行采樣,再用另一個(gè)網(wǎng)絡(luò)的輸出更新Q值,這一過程通過解耦出了采樣和學(xué)習(xí),解決了高估值問題。【資料來(lái)源:Van Hasselt(2010)]

一般來(lái)講,與目標(biāo)網(wǎng)絡(luò)合作是一種不錯(cuò)的做法。目標(biāo)網(wǎng)絡(luò)是該策略的周期副本,用于生成訓(xùn)練的目標(biāo)值(而不是使用完全相同的策略來(lái)生成觀察和目標(biāo)),這種方法降低了目標(biāo)和觀察結(jié)果之間的相關(guān)性。
另一個(gè)解決方案是從Q-value估計(jì)不確定性的角度來(lái)考慮,不單單將動(dòng)作的期望值制成表格,還可以跟蹤觀察結(jié)果的方差,從而知道它是否偏離了真實(shí)值。使用不確定性邊界和知識(shí)梯度是實(shí)現(xiàn)這一目的的兩種方法。這里不再是簡(jiǎn)單地選擇具有最高期望Q值的動(dòng)作,還應(yīng)考慮可以從一個(gè)新的觀察中學(xué)習(xí)到多少。利用這種智能采樣方法可以探索具有高不確定性的動(dòng)作。

策略梯度更新不良


問題描述


策略梯度算法已經(jīng)存在了幾十年,是所有演員-評(píng)論家模型的根源。傳統(tǒng)的策略梯度算法,例如:REINFORCE,依靠梯度來(lái)確定權(quán)重更新的方向。高獎(jiǎng)勵(lì)和高梯度的結(jié)合會(huì)生成一個(gè)強(qiáng)大的更新信號(hào)。
圖片


傳統(tǒng)的策略梯度更新函數(shù),基于目標(biāo)函數(shù)梯度?_θJ(θ)和步長(zhǎng)α更新策略權(quán)值θ。
這個(gè)想法似乎很自然,如果獎(jiǎng)勵(lì)函數(shù)的斜率很大,就會(huì)朝這個(gè)方向邁出一大步;如果獎(jiǎng)勵(lì)函數(shù)的斜率很小,那么執(zhí)行大型更新就沒有任何意義了。盡管這種邏輯看起來(lái)令人信服,但它從根本上也還存在缺陷。
圖片左:超調(diào)行為示例,執(zhí)行一個(gè)錯(cuò)過獎(jiǎng)勵(lì)峰值的大策略更新。右:失速行為示例,被困在梯度接近0的局部最優(yōu)中。[圖片由作者提供]
梯度只提供局部信息,它告訴我們斜坡有多陡,但不知道朝該方向走多遠(yuǎn),可能會(huì)引發(fā)超調(diào)。此外,策略梯度并沒有考慮到缺乏梯度信號(hào)可能會(huì)被困在一個(gè)次優(yōu)的平臺(tái)之中。
更糟糕的是,無(wú)法通過強(qiáng)制更新某參數(shù)的局部權(quán)重來(lái)控制這種行為,例如,在下圖中,相同大小的權(quán)重更新對(duì)策略有截然不同的影響。
圖片兩個(gè)高斯策略更新的例子。盡管這兩個(gè)更新的參數(shù)空間大小相同,但左邊的策略顯然比右邊的策略受到的影響更大[圖片由作者提供]

解決方案


從簡(jiǎn)單的各種學(xué)習(xí)算法實(shí)驗(yàn)開始,傳統(tǒng)隨機(jī)梯度下降(SGD)算法只考慮一階矩,現(xiàn)代學(xué)習(xí)算法(例如,ADAM)考慮二階矩,大大提高了性能。
雖然沒有徹底解決策略梯度更新不良問題,但性能還是得到了顯著提高。
熵正則化是防止常規(guī)策略梯度算法過早收斂的一種常用方法,簡(jiǎn)單地說(shuō),RL中的熵是動(dòng)作選擇不可預(yù)測(cè)性的一個(gè)度量標(biāo)準(zhǔn)。熵正則化為探索未知行為增添了一個(gè)獎(jiǎng)項(xiàng),當(dāng)對(duì)系統(tǒng)了解較少時(shí),熵的值會(huì)更高:
圖片強(qiáng)化學(xué)習(xí)中熵的度量
更復(fù)雜的策略梯度算法的擴(kuò)展會(huì)考慮二階導(dǎo)數(shù),它提供了函數(shù)的局部敏感性信息。在平緩的局部可以放心地前進(jìn)多步;在一個(gè)陡峭的局部則傾向于謹(jǐn)慎地拾階而下。自然策略梯度、TRPO和PPO等算法考慮了更新的敏感性,明確地或暗中地都考慮了二階導(dǎo)數(shù)。目前,PPO是一種首選的策略梯度算法,它在實(shí)現(xiàn)難度,與速度性能之間,取得了良好的平衡。
圖片
自然策略梯度的權(quán)重更新方案,費(fèi)舍爾矩陣F(θ)包含關(guān)于局部靈敏度的信息,生成動(dòng)態(tài)權(quán)重更新。

非策略學(xué)習(xí)性能欠佳


問題描述


某些植根于Q-learning的算法依賴于非策略學(xué)習(xí),這意味著通過實(shí)際觀察到的動(dòng)作來(lái)執(zhí)行更新。然而,非策略學(xué)習(xí)需要一個(gè)元組(s,a,r,s’,a’)——實(shí)際上,正如與它同名的SARSA算法一樣——非策略學(xué)習(xí)使用動(dòng)作a*而不是a’。因此,權(quán)重更新時(shí)只需要存儲(chǔ)(s,a,r,s’),并學(xué)習(xí)獨(dú)立于智能體動(dòng)作的策略。
通過特定的設(shè)置,非策略學(xué)習(xí)可以從過往重放緩沖區(qū)中提取元組來(lái)重復(fù)使用之前的觀察,這為創(chuàng)建昂貴的觀察結(jié)果(計(jì)算上)提供了方便。只需將狀態(tài)輸入策略,以獲得動(dòng)作a*,使用結(jié)果值更新 Q值,無(wú)需重新計(jì)算從s到s’的過渡狀態(tài)。
然而,即便已經(jīng)在大型數(shù)據(jù)集上訓(xùn)練好了非策略強(qiáng)化學(xué)習(xí)算法,它在部署時(shí)的效果卻往往還是不盡如人意,為什么會(huì)這樣?
這個(gè)問題可以歸歸納出一個(gè)常見的統(tǒng)計(jì)學(xué)誤區(qū)——假設(shè)訓(xùn)練集能代表真實(shí)的數(shù)據(jù)集。但情況發(fā)生變化,該數(shù)據(jù)集對(duì)應(yīng)的策略無(wú)法反映智能體最終運(yùn)行的環(huán)境策略——通常,真實(shí)數(shù)據(jù)集不同于訓(xùn)練集,更新后的策略生成了不同的狀態(tài)-動(dòng)作組合。

解決方案


真正的非策略學(xué)習(xí)——例如,僅從靜態(tài)數(shù)據(jù)集中學(xué)習(xí)好的策略——在強(qiáng)化學(xué)習(xí)中可能是根本不可行的,因?yàn)楦虏呗圆豢杀苊獾貢?huì)改變觀察狀態(tài)-動(dòng)作組合的概率。由于不可能窮盡搜索空間,所以不可避免地會(huì)生成不可預(yù)見狀態(tài)-動(dòng)作組合的推斷值。
最常見的解決方案是不在一個(gè)完全靜態(tài)的數(shù)據(jù)集上進(jìn)行訓(xùn)練,而是用在新策略下生成的觀察結(jié)果不斷地豐富數(shù)據(jù)集。它有助于刪除舊的樣本,這些舊樣本不再代表最新策略下生成的數(shù)據(jù)。
另一種解決方案是重要性抽樣,它本質(zhì)上是根據(jù)當(dāng)前策略下產(chǎn)生的概率來(lái)重新權(quán)衡觀察結(jié)果。對(duì)于每個(gè)觀測(cè)結(jié)果,可以計(jì)算其在原始策略和當(dāng)前策略下產(chǎn)生的概率比,從而使來(lái)自類似策略的觀測(cè)結(jié)果更有可能被采用。
圖片
重要性抽樣考慮了原始策略和目標(biāo)策略之間的相似性,選擇在與當(dāng)前策略相似的策略下生成的具有更高概率的觀察值。

總結(jié)


本文探討了傳統(tǒng)RL算法中遇到的三個(gè)常見缺陷,以及解決這些問題的策略。

I. 高估值的動(dòng)作


問題描述:

  • 基于值函數(shù)近似的算法,系統(tǒng)地選擇估計(jì)價(jià)值高的動(dòng)作。


解決方案:

  • 使用目標(biāo)網(wǎng)絡(luò)來(lái)減少目標(biāo)和觀察之間的相關(guān)性(例如雙Q-learning)。
  • 在動(dòng)作選擇地價(jià)值估計(jì)中加入不確定性(如不確定性界限、知識(shí)梯度。)

II. 策略梯度更新不良


問題描述:

  • 策略梯度算法通常執(zhí)行更新步驟的能力較差,例如,停留在局部最優(yōu)時(shí)的小步驟、超出并錯(cuò)過獎(jiǎng)勵(lì)峰值的大步驟。


解決方案:

  • 使用ADAM學(xué)習(xí)算法取代標(biāo)準(zhǔn)的隨機(jī)梯度下降,它除了跟蹤一階梯度外,還跟蹤矩。
  • 在獎(jiǎng)勵(lì)信號(hào)中添加熵獎(jiǎng)勵(lì),鼓勵(lì)更多對(duì)未知區(qū)域的探索。
  • 部署包含二階矩(顯式或隱式)的算法,如自然策略梯度、TRPO或PPO。

III. 非策略學(xué)習(xí)性能欠佳


問題描述:

  • 回放緩沖區(qū)中的過程不能代表外樣本的過程,因此值被錯(cuò)誤地外推,性能下降。


解決方案:

  • 更新回放緩沖區(qū),添加新的過程,刪除舊的過程。
  • 執(zhí)行重要性抽樣,以增加概率從更近目標(biāo)中選取策略。
  • (如果樣本觀察成本更低)切換為策略學(xué)習(xí)。

參考文獻(xiàn)問題一:值高估動(dòng)作

哈塞爾特,H.(2010)。雙q學(xué)習(xí),神經(jīng)信息處理系統(tǒng)的研究進(jìn)展,23。Matiisen, Tambet (2015).揭開深度強(qiáng)化學(xué)習(xí)的神秘面紗。計(jì)算神經(jīng)科學(xué)實(shí)驗(yàn)室。https://neuro.cs.ut.ee/demystifying-deep-reinforcement-learning/

問題二:策略梯度更新不良

Mahmood,A. R.,Van Hasselt,H. P.,薩頓,R. S.(2014)?;诰€性函數(shù)近似的非策略學(xué)習(xí)的加權(quán)重要性采樣。神經(jīng)信息處理系統(tǒng)研究進(jìn)展,27。康奈爾大學(xué)計(jì)算優(yōu)化開放教科書,(2021)。 URL:https://optimization.cbe.cornell.edu/index.php?title=Adam

問題三:非策略學(xué)習(xí)性能欠佳

藤本,南州,梅格, D., & Precup, D. (2019年5月)。非策略深度強(qiáng)化學(xué)習(xí)探索,國(guó)際機(jī)器學(xué)習(xí)會(huì)議。(pp.2052–2062).PMLR.
原文標(biāo)題:Three Fundamental Flaws In Common Reinforcement Learning Algorithms (And How To Fix Them)原文鏈接:

https://towardsdatascience.com/three-fundamental-flaws-in-common-reinforcement-learning-algorithms-and-how-to-fix-them-951160b7a207



*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉