AC算法(Actor-Critic算法)最早是由《Neuronlike Adaptive Elements That Can Solve Difficult Learning Control Problems Neuronlike Adaptive Elements That Can Solve Difficult Learning Control Problems》論文提出,不過該論文是出於credit assignment problem設計了actor部分和critic部分,其中critic對actor獲得的reward進行credit assignment 處理和學習,然后把處理后獲得的新reward傳遞給actor進行學習,這樣結合了critic和actor兩部分學習器,得到了一個更優的學習器。
可以看到最初的AC算法只是為了更好解決credit assignment問題,將Actor和Critic兩者結合,其中的Critic主要就是為每一步的actor學習給出一個更好的credit assignment的reward。最初的AC算法中critic更多的是在輔助actor來進行學習的,可以看到現在的AC算法除了保留了將兩個學習器結合的思想以外已經與最初的AC算法差距較大了,而現在的AC算法形式為論文《Policy Gradient Methods for Reinforcement Learning with Function Approximation》給出的。
因此,本文主要討論的是對論文《Policy Gradient Methods for Reinforcement Learning with Function Approximation》的一些理解。前幾天寫過一個該論文的一些基本形式和證明(
論文《policy-gradient-methods-for-reinforcement-learning-with-function-approximation 》的閱讀——強化學習中的策略梯度算法基本形式與部分證明
),所以本文算是一個補充版,或是后續版。
---------------------------------------------------------
首先給出論文《Policy Gradient Methods for Reinforcement Learning with Function Approximation》中的定理1:
定理1 又被稱作是策略梯度定理,可以說強化學習中的策略梯度一類的算法基本都是基於這個定理來進行構建的。由於前文對該定理給出了一些解釋,這里就不具體解釋了。
本文的重點是講一下對論文中定理2的一些理解, 下面給出定理2及其前提設定:
上面的內容比較長,可以說公式(3)和(4)是對定理2的前提設定,也就是說定理2是假設在滿足公式(3)和(4)的前提條件下進行推導的。
由公式(3)和(4)我們可以推導出定理2的表現形式,即公式(5)。其中公式(6)及以下為對定理2的表現形式(即公式(5))進行的證明過程。
公式(3)的意思是說,滿足公式(3)的話,f(s,a) 對 Q(s,a)的估計為收斂於局部最優,換句話說就是:公式(3)是 f(s,a) 對 Q(s,a)的估計收斂於局部最優的表現形式。假設公式(3)成立則說明 f(s,a) 對 Q(s,a)的估計是假設收斂於局部最優的。
公式(4)則是假設f(s,a)對參數w的微分等於log(pi(s,a)) 對參數theta的微分。
在公式(3)和(4)成立的前提下,才得到定理2 的表現形式(公式5),也就是說定理2是在講滿足公式(3)和(4)的前提下才可以用f(s,a)替代Q(s,a)來對策略的表現求梯度(即定理1)。
剛開始看到定理2的時候感覺多此一舉,直接用一個函數來近似表示Q(s,a)不就可以了嗎,為什么還要假設滿足公式(3)和(4)。研究了些時間才有所了解,如果不滿足公式(3),那么f(s,a)對Q(s,a)的估計是沒有限定的,也就是說f(s,a)是不能很好的來估計Q(s,a)的,所以我們要加入公式(3)作為前提。或者說只有滿足了公式(3)才能說f(s,a)是對Q(s,a)的很好的估計,因為此時的估計函數f(s,a)是收斂於局部最優的。
那么公式(4)又是為何呢,它又起到什么作用呢?
個人理解:
即使滿足了公式(3),f(s,a)是對Q(s,a)的一個很好的估計(收斂於局部最優),也不能說f(s,a)就一定可以替換定理1中的Q(s,a)。因為畢竟f(s,a)並不正在等於Q(s,a),只能說在(s,a) 這個(狀態,動作 對)分布的情況下,f(s,a)與Q(s,a)的差值平方在(s,a)分布的情況下的期望對參數w的導數為0,因為畢竟 f(s,a) 對Q(s,a)的估計還是難免會存在誤差的。
在不考慮公式(4)的情況下,我們只能說下面的公式是成立的:
但是對於公式(6),即下面公式,是難以使其成立的。
也或者說下面公式是難以成立的:
----------------------------------------------
以上對公式(3)和(4)的一個理解就是,如果只滿足了公式(3)只能說明f(s,a)對Q(s,a)的估計收斂於局部最優,而只有同時滿足公式(4)的收斂於局部最優的f(s,a)才能很好的替換定理1中的Q(s,a)。
當然,在實際應用中公式(3)和公式(4)都是難以滿足的,或者說論文中的定理1和定理2是純理論假設推導,是在一種很理想化的情況下才會成立。
公式(3)的表現形式我們可以假設策略固定不變,然后在固定策略的前提下一直訓練f(s,a)使其對Q(s,a)的估計收斂於局部最優,而此時所得到的f(s,a)並不一定會滿足公式(4)。而只有滿足公式(4)的收斂於局部最優的f(s,a)才滿足定理2,才可以替換定理1中的Q(s,a)。
現在的常用函數一般為深度神經網絡,也就是說f(s,a)和pi(s,a)一般也是用深度神經網絡來表示的,現在常用的對f(s,a)進行更新的方法一般可以較好的使f(s,a)對Q(s,a)的估計收斂,至於能否收斂於局部最優就難以保證了,而對於公式(4)中的限定現在也是基本沒有見過哪個具體算法對其進行限定的。
可以說對公式(3)基本可以實現部分滿足(使其收斂,不保證收斂於局部最優),而對於公式(4)的限定實際算法一般不做處理。
----------------------------------------------------