演員-評論家 是什麼?

Actor-Critic — 演員-評論家 的完整解釋

演員-評論家是一種強化學習演算法,結合了策略梯度(演員)和時序差分學習(評論家)的優點,以實現更穩定的學習。

容易混淆

演員-評論家 vs 策略梯度 vs Q-Learning

演員-評論家:演員選動作,評論家評分,兩者配合學習。

策略梯度:只有演員,看最終結果好壞來調整策略,沒有即時評分。

Q-Learning:只有評論家,學每個狀態-動作的價值,選價值最高的動作。

最關鍵的區別:演員-評論家結合了兩者的優點,既能直接學策略(演員),又能用價值估計減少學習的不穩定性(評論家)。

記住這句就好

一個負責做決定,一個負責打分數,邊做邊學。

實際案例

AlphaGo 的訓練

DeepMind 的 AlphaGo 在訓練過程中使用了演員-評論家的變體。策略網路(演員)決定下哪一步棋,價值網路(評論家)評估當前局面的勝率。這讓 AlphaGo 能在每一步棋都得到回饋,而不是等到整盤棋結束才知道好不好。

機器人行走控制

OpenAI 用 PPO(一種演員-評論家的改良版)訓練虛擬機器人學走路。演員決定每個關節的力矩,評論家評估當前姿勢離「穩定行走」有多遠。從完全不會走到穩定行走大約需要幾百萬步的訓練。

深入了解

演員-評論家的主要變體

方法 特點 適用場景
A2C(Advantage Actor-Critic) 用優勢函數減少方差 一般強化學習任務
A3C(Asynchronous A2C) 多個環境平行訓練,加速學習 需要大量探索的環境
PPO(Proximal Policy Optimization) 限制策略更新幅度,訓練更穩定 連續動作空間、機器人控制
SAC(Soft Actor-Critic) 加入最大熵探索,平衡探索和利用 複雜連續控制任務
TD3(Twin Delayed DDPG) 用兩個評論家減少過高估計 連續動作空間

情境判斷

Q1(直覺題): 你要訓練一個遊戲 AI 玩超級瑪利歐,每一步都需要即時決策(跳、跑、停)。你應該用 Q-Learning 還是演員-評論家?

→ 演員-評論家更適合。Q-Learning 需要列舉所有可能的動作組合,但瑪利歐的動作空間複雜且需要連續決策,演員-評論家能更自然地處理這類問題。

Q2(判斷題): 你用演員-評論家訓練一個交易機器人,訓練過程中評論家的價值估計一直震盪不收斂。你應該怎麼處理?

→ 這是演員-評論家的常見問題:演員和評論家互相影響導致不穩定。可以嘗試降低學習率、使用目標網路(target network)延遲更新評論家、或換用更穩定的 PPO 或 TD3 演算法。

相關術語

常見問題

演員-評論家比純策略梯度好在哪?

主要是方差更小,學得更穩。純策略梯度要等到整個回合結束才能更新,中間好壞參半的動作很難被正確歸因。評論家提供每一步的價值估計,讓演員能更精準地知道哪個動作真的有幫助。

評論家不準怎麼辦?

評論家不準會誤導演員。常見的解法是用兩個獨立的評論家(如 TD3),取較小的估計值來避免過度樂觀。也可以用 GAE(Generalized Advantage Estimation)來平衡偏差和方差。

演員-評論家能處理離散動作空間嗎?

可以。雖然演員-評論家在連續動作空間特別有優勢,但 A2C/A3C 等方法對離散動作空間(如棋盤遊戲、Atari 遊戲)也表現很好。