近端策略优化深度强化学习算法
PPO:Proximal?Policy?Optimization Algorithms,其優化的核心目標是:
?ppo paper
策略梯度
以下是馬爾可夫決策過程MDP的相關基礎以及強化學習的優化目標:
策略梯度Policy Gradoent的相關推導:
?openai spinningup
重要性采樣
通過從一個已知的分布中采樣來估計另一個分布。在PPO中,π_old是π的一個近似分布,我們希望學習的策略π在π_old的基礎上穩步學習,兩者差距不能太大;于是我們從π_old的分布中采樣,以π/π_old的作為權重。一個不嚴謹的理解是差值為0或比值為1都表示兩個變量一致。我們的目的就是期望π在π_old的附近學習。
取R(τ)為優勢函數At,可以從每個t為粒度來重新考查PG,在此基礎上對π_old進行重要性采樣,最終結果為:
KL散度
KL散度即兩個分布的相對熵H_p(Q) - H(P):使用不正確的分布Q代替真實分布P時所產生的額外代價。只有當兩個分布一致時,KL散度為0,否則總是正的。在PPO中,KL散度用來衡量policy π與π_old的偏離程度,期望兩者是接近的。
?koller pgm
模型結構
當action是連續動作空間時,policy π網絡學習的是分布的參數mean和vars;當是離散的時候,是其多項式分布。
與off-policy學習DQN的Target Network網絡相似,包含一個策略“目標”網絡π_old,在每次采集完數據即學習前,π網絡把參數同步至π_old。
損失函數
policy π 網絡和 Value網絡是分開的,分別優化兩個網絡的目標函數。
π的目標函數:
?ppo paper
注意優勢函數A是基于π_old的。KL散度以懲罰項與優勢函數加在一起,系數根據KL的大小調整。
Value的損失函數:一般的state Value殘差即可。
?openai spinningup
學習過程
可以通過多個actor實現并行采集數據,π_old指的是采集數據的policy,學習優化可以多次使用數據,但π_old不變。采樣數據的action通過π_old的分布參數決定的分布上采樣;優勢函數可以是任何一種近似,比如TD Residual:R(s_t, a_t) + V(s_t+1) - V(s)。
?ppo paper
總結
PPO是一種基于策略梯度優化的、面向連續或離散動作空間的on-policy深度強化學習算法。
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的近端策略优化深度强化学习算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FDD系统
- 下一篇: 仿真RM码,及在高斯信道下的译码性能,对