Actor-Critic:強化學習中的參與者-評價者演演算法簡介

2020-10-05 12:00:01

Actor-Critic從名字上看包括兩部分,參與者(Actor)和評價者(Critic)。其中Actor使用策略函數,負責生成動作(Action)並和環境互動。而Critic使用我們之前講到了的價值函數,負責評估Actor的表現,並指導Actor下一階段的動作。

基於策略和基於價值的RL演演算法

在基於策略的RL中,最優策略是通過直接操縱策略來計算的,而基於價值的函數通過找到最優值函數來隱式地找到最優策略。 基於策略的RL在高維和隨機的連續動作空間以及學習隨機策略方面非常有效。 同時,基於價值的RL在樣品效率和穩定性方面表現出色。

策略梯度RL的主要挑戰是高梯度方差。 減少梯度估計方差的標準方法是使用基線函數b(st)[4]。 關於新增基線會引起很多關注,這會在梯度估計中引起偏差。 有證據表明,基線不能為梯度估算提供基礎。

證明基線是無偏見的

REINFORCE演演算法的策略梯度表示式如下所示:

REINFORCE的策略梯度表達的期望形式

我們可以寫出軌跡的獎勵R(τ)如下:

然後新增基線函數,如下所示修改策略梯度表示式:

插入基線功能

我們可以將獎勵和基準期限稱為優勢函數。 可以表示如下:

優勢功能

在上面的等式中要注意的重要一點是基線b是s_t而不是s_t` [4]的函數

我們可以重新排列表示式,如下所示:

上式是等效的E(X-Y)。 由於期望的線性,因此我們可以將E(X-Y)重新排列為E(X)-E(Y)[3]。 因此,對上面的等式進行了如下修改:

如果帶有基線的第二項為零,則可以證明新增基線函數b在梯度估計中未新增偏差。 那意味著

我們可以將期望概括如下:

第二項的證明為零,如下所示:

上面的推論證明,新增基線函數對梯度估計沒有偏差

Actor-critic

簡單來說,Actor-Critic是策略梯度的時間差異(TD)版本[3]。它有兩個網路:參與者和評論家。參與者決定應該採取哪種行動,評論家告知參與者該行動有多好,應該如何調整。參與者的學習基於策略梯度方法。相比之下,評論家通過計算價值函數來評估參與者的行動。

這種型別的架構是在生成對抗網路(GAN)中,鑑別器和生成器都參與遊戲[2]。生成器生成偽影象,鑑別器使用其真實影象的表示來評估所生成的偽影象的品質[2]。隨著時間的流逝,生成器可以建立偽造的影象,這些偽造的影象對於鑑別器是無法區分的[2]。同樣,Actor和Critic都參與了遊戲,但是與GAN [2]不同,他們都在不斷改進。

Actor-critic類似於帶有基準的稱為REINFORCE的策略梯度演演算法。強化是MONTE-CARLO的學習,它表示總收益是從整個軌跡中取樣的。但是在參與者評論家中,我們使用載入程式。因此,優勢功能的主要變化。

策略梯度總回報中的原始優勢函數更改為自舉。 資料來源:[3]

最後,b(st)更改為當前狀態的值函數。 可以表示如下:

我們可以為actor-critic編寫新的修改後的優勢函數:

或者,將優勢函數稱為TD錯誤,如Actor-Critic框架所示。 如上所述,參與者的學習是基於策略梯度的。 參與者的策略梯度表示式如下所示:

參與者的政策梯度表達

Actor-Critic演演算法的虛擬碼[6]

1、使用來自參與者網路的策略πθ對{s_t,a_t}進行取樣。

2、評估優勢函數A_t。 可以將其稱為TD誤差δt。 在Actor-critic演演算法中,優勢函數是由評論者網路產生的。

3、使用以下表示式評估梯度:

4、更新策略引數θ

5、更新基於評價者的基於價值的RL(Q學習)的權重。 δt等於優勢函數。

6、重複1到5,直到找到最佳策略πθ。

參照

  1. https://inst.eecs.berkeley.edu/~cs188/sp20/assets/files/SuttonBartoIPRLBook2ndEd.pdf
  2. https://theaisummer.com/Actor_critics/
  3. http://machinelearningmechanic.com/deep_learning/reinforcement_learning/2019/12/06/a_mathematical_introduction_to_policy_gradient.html
  4. https://danieltakeshi.github.io/2017/03/28/going-deeper-into-reinforcement-learning-fundamentals-of-policy-gradients/
  5. https://en.wikipedia.org/wiki/Expected_value
  6. http://rail.eecs.berkeley.edu/deeprlcourse-fa17/f17docs/lecture_5_actor_critic_pdf

作者:Dhanoop Karunakaran

deephub翻譯組