一、概述
引用GAE論文的觀點,策略梯度法存在的兩個方面問題:
- 樣本利用率低,由於樣本利用率低需要大量採樣;
- 算法訓練不穩定,需要讓算法在變化的數據分佈中穩定提升;
目前比較常用的四種置信域方法TRPO、ACER、ACKTR、PPO,就是圍繞策略梯度法的上述兩方面問題進行改進和優化。
二、算法簡介
2.1 TRPO
由於強化學習中數據分佈是變化的,策略梯度法使用不合適的步長設定會導致訓練很不穩定,TRPO的置信域方法就是為了解決步長設計的問題,通過控制步長最大化優化目標,能保證算法單調,能夠解決算法訓練的穩定性問題。
缺點是需要計算多次Fisher線性矩陣,計算量大,訓練速度慢,無法應用到大規模問題中。
2.2 ACER
ACER的能進行on-policy和off-policy的更新,大大提高了樣本利用效率,主要使用了四個技術:
- 截斷重要性採樣,控制方差的同時保證了無偏性;
- Q_retrace的使用,提高了off-policy值函數估計的穩定性;
- stochastic dueling network,SDN,用於連續動作控制算法值函數估計;
- 一種新的置信域方法,計算簡單,適合大規模問題。
具體見我另一篇博客:
yr15:強化學習論文筆記——ACERzhuanlan.zhihu.com
2.3 ACKTR
ACKTR算法的核心是使用KFAC算法進行優化,K-FAC能夠在較短的時間內近似出Fisher矩陣,每次更新所需的時間只比SGD多10~20%,因此能夠使用自然梯度對模型進行更新。自然梯度法是二階優化,相比SGD對單樣本利用率更高,從而提高了樣本利用率。K-FAC分解如下圖所示:
2.4 PPO
PPO使用clip的方法對前後策略變化進行限制,格式簡單且運算效率高,能夠用於大規模問題,對數據的小批量多次更新也提高了數據利用效率,PPO是目前業界比較主流的算法。
這次讀論文的時候發現了,PPO在clip的時候取最小min是因為TRPO的優化目標函數是累計獎勵值的下界,通過最大化下界來最大化累計獎勵值,理論上不能將下界放大,所以取min。因此對騰訊提出的dual PPO就保持懷疑態度,但是由於clip ratio本身也改變了原優化問題的範圍,通過進一步的clip將大的負數部分clip掉對於訓練也是有好處的,可能更加穩定。