強化學習中,確定性策略和隨機策略的區別,以及各自經典的演算法是什麼?
強化學習(reinforcement learning)中,確定性(deterministic)策略和隨機(probalistic)策略的區別,以及各自經典的演算法是什麼?
在強化學習中,確定性策略和隨機策略是modle free策略搜索的兩類主要方法。這兩者的區別也比較明顯,有各自的優缺點,下面我簡單說一下。
兩者的區別
確定性策略,在相同的狀態下,其輸出的動作是確定的;而對於隨機策略,對於相同的狀態,其輸出的狀態並不唯一,而是滿足一定的概率分布,從而導致即使是處在相同的狀態,也可能輸出不同的動作。
另外,就兩者的優缺點來說,確定性策略的優點是能夠利用確定性梯度優化策略,所以不需要太多的採樣數據,計算效率也很快。缺點是由於每次面對同一狀態其輸出的動作是唯一的,無法討論一些其它動作的效果,不具有自學習的能力;
而隨機策略的優點是能夠探索好的經驗,然後集成到一個策略中。而且隨機策略比較成熟,現有的輪子比較多。而缺點是需要採樣的數據量較大,學習比較慢;
兩者對應的經典演算法
確定性策略的經典演算法
? DPG
? DDPG
隨機性策略的經典演算法
? TRPO
? PGQ
? MC Control
? SARSA
? Q learning
本文作者:京東金融-消費者金融部-風險管理部潘曉
@京東白條 的分類錯了。
我用David Silver的講稿中的例子來解釋一下:
對於上圖的遊戲,一個agent在迷宮中移動,能看到附近格子的信息,所以agent分辨不出上圖灰色的格子的區別(因為左右都是白色的格子)。
如果採用deterministic policy的策略,是對每個s都有一個確定性的a,即 ,那麼最後學習的結果可能如下:
很明顯,這個策略並不是一個最優的策略,或者說並不是一個好的策略,因為如果agent的初始位置在第一個白色格子,或者第二個白色格子的話,那麼會出現死循環,如果每一步有cost的話,那麼cost的累積會很大。
但是stochastic policy可以緩解這個問題,stochastic policy是對每個s下每個a有一定的概率,即 ,所有的概率和為一。採用隨機策略最終可能學出的下圖:
在灰色格子有一定概率向左走,有一定概率向右走,很明顯,這個策略優於上面的策略,agent在任何一個位置最終都會達到目標.
所以核心的區別其實很簡單,最終的策略是學出 還是
具體的演算法,白條明顯就是錯了。常規基於Value function的策略是確定性的,或者近確定性的。
所以
Q-learing等明明是確定性的,卻被划到了隨機性策略,我表示也是很無奈啊。
隨機性策略經典演算法:
vanilla Policy Gradient
nature Policy Gradient
REINFORCE
Action-Value Actor-Critic
Natural Actor-Critic
等等
確定性經典演算法:
Q-learning(one step, two step.....)
SARSA(one step, two step.....)
TD( )
SARSA( )
等等
推薦閱讀:
TAG:演算法 | 機器學習 | 強化學習ReinforcementLearning |