AI時代系列(3) 機器學習三部曲: 📘 第三部:《強化學習 —— AI 的決策與進化》
53/100 第六週:📌 策略梯度與 Actor-Critic 架構
53.策略梯度與 Q-Learning 比較 ⚖ 行為學習與價值學習的選擇!
_______________________________________
🎯 單元導讀
在強化學習的世界中,有兩條主要的學習道路:
1. Q-Learning:學習「每個行動的價值」,再從中選擇最好的
2. 策略梯度(Policy Gradient):直接學習「該怎麼做」,不再依賴 Q 值估計
這兩者就像「用成績預測升學機率」vs.「直接學會怎麼考高分」。
本單元將從概念、應用、優缺點、實作等層面,深入比較這兩種強化學習策略。
________________________________________
🧠 一、核心概念差異表
Q-Learning 屬於值函數學習法,透過學習 𝑄(𝑠,𝑎) 來間接導出最優策略,動作選擇時取 Q 值最大的行動(argmax),適合離散動作空間與明確決策任務,更新上依據 TD 誤差,學習效率高但可能出現震盪;而策略梯度法則是直接學習策略分布
𝜋(𝑎∣𝑠),透過抽樣選擇動作,特別適合連續動作或需隨機性的場景,更新時以回報加權做梯度上升,學習穩定但易受高方差影響,收斂速度較慢。
________________________________________
🧪 二、簡易範例對照:CartPole 任務
Q-Learning
- 屬於 Off-policy TD (Temporal Difference) 控制方法。
- 在訓練過程中,每一步都會估算 Q(s, a)。
- 選擇動作時,通常使用 ε-greedy:大多選最大 Q 值動作,有時隨機探索。
- 更新 Q 值的方式是:用當前獎勵 + 下一狀態的最大 Q 值,來修正原本的 Q 值。
- 可以用 Q 表 或 神經網路(DQN) 近似。
- 優點:在條件滿足時能收斂到最優策略。
REINFORCE
- 屬於 蒙地卡羅策略梯度方法。
- 每回合完整跑完一個 episode,計算總回報。
- 根據該回報來強化「當時動作」的機率,直接更新策略。
- 直接學習 策略 π(a|s;θ),不需要建立 Q 表。
- 優點:簡單直觀,能處理連續動作空間。
- 缺點:高方差,需要大量樣本才能穩定。
________________________________________
📈 三、學習穩定性與效率比較
在學習穩定性與效率上,Q-Learning 透過 TD 誤差可即時更新,具有較快的收斂速度與中等偏差,由於每步都有新估計值可修正,適合持續在線學習;而 Policy Gradient 必須等整個 episode 結束後才能計算完整回報進行更新,收斂速度相對較慢,且回報 𝐺𝑡帶來高方差問題,學習過程穩定但效率較低,偏重在方差控制而非偏差修正。
________________________________________
🔍 四、何時選擇哪一種?
✅ 適合 Q-Learning 的情境
• 離散動作空間,如:上下左右、買賣停
• 環境明確、能穩定估算價值
• 想用 DQN、Double DQN、Dueling 架構等進行值逼近
✅ 適合策略梯度的情境
• 連續動作空間(如角度控制、速度調節)
• 策略須保持隨機性(如對話生成、博弈任務)
• 目標是學會「怎麼做」,而不是「做了有多好」
________________________________________
🧠 五、從人類學習角度理解
Q-Learning
- 就像 考試後看分數:每次做題、考完試,先看分數(Q 值)好不好。
- 之後根據這些「分數」來調整未來的讀書方向(例如哪一科要加強)。
- 強調「結果 → 修正未來選擇」。
Policy Gradient(策略梯度)
- 就像 每次練習都在調整表現:不去在意分數,而是透過一次次練習的體驗,讓表現更自然更好。
- 每次練習的經驗,會直接影響下次做同樣事情的方式。
- 強調「過程中的表現 → 直接調整行為」
________________________________________
📌 六、能否結合?(答案是:可以!)
最常見的就是:
✅ Actor-Critic 方法
• Actor:學策略 π(a|s)
• Critic:學值函數 V(s) 或 Q(s, a) → 提供學習指導給 Actor
👉 這就是策略梯度與價值估計的完美融合,也是後續單元的主軸!
________________________________________
🧩 七、問題與思考 💭
1️⃣ 如果你要設計一個智慧機器人,在連續空間中平衡飲料杯,該選用哪種方法?為什麼?
👉
應該選用策略梯度法。因為平衡飲料杯涉及連續控制(如手腕角度、力量、速度的微調),動作空間為連續值。策略梯度法可以直接學習參數化的連續策略(如高斯分布),不需離散化動作,能更精細地學習平衡過程中的微小變化,控制效果自然流暢。
________________________________________
2️⃣ 為什麼策略梯度能容許「機率性策略」,而 Q-Learning 通常偏向「確定性行為」?
👉
策略梯度直接學習整個動作機率分布 π(a∣s),允許自然地存在機率性策略,特別適合在環境不確定性大或需要多樣性探索的情境中使用;而 Q-Learning 是透過估算每個動作的 Q 值再取 argmax,天生導向確定性行動(選擇目前看起來最好的動作),雖然可以搭配 ε-Greedy 增加探索,但核心仍以確定性為主。
________________________________________
3️⃣ 假如某環境中 reward 稀少但策略需要非常準確,會建議使用哪一種?還有什麼輔助技巧?
👉
這種情境下可以優先考慮策略梯度法,因為它在稀疏回報下仍能透過整體回報學習,適合處理稀疏獎勵與高精度需求。但因為方差可能較大,訓練上建議搭配:
• baseline(如 value function)降低方差
• advantage function 幫助分辨哪些行動特別好
• reward shaping(適當調整獎勵設計)讓學習信號更具引導性
• 模擬訓練(simulation pre-training) 增加樣本效率
• curriculum learning(課程式訓練) 由簡單到困難逐步學習
______________________________________
✅ 八、小結與啟示
• Q-Learning 是價值導向的估計學習,效率高,但可能偏差
• 策略梯度是直接學行為策略,穩定但方差高
• 選擇哪種方法,取決於任務型態、動作空間特性、策略目標
• 實務中經常將兩者結合 → Actor-Critic 架構就是代表!