強化學習基礎與 Policy Gradient:參數藏在取樣分布裡,梯度怎麼算|Stanford CS229 第 18 堂
這堂課前 55 分鐘把循序決策寫成 MDP(狀態、動作、轉移機率、獎勵、折扣因子),推出固定策略的 Bellman 方程式是一組線性方程式;後 20 分鐘推導 policy gradient:用 ∇p = p∇log p 把梯度換回期望值,轉移機率因為不含 θ 而從梯度裡消失,最後停在「log 機率梯度的和 × 折扣獎勵的和」這條公式,變異數縮減留到下一堂。
這堂課前 55 分鐘把循序決策寫成 MDP(狀態、動作、轉移機率、獎勵、折扣因子),推出固定策略的 Bellman 方程式是一組線性方程式;後 20 分鐘推導 policy gradient:用 ∇p = p∇log p 把梯度換回期望值,轉移機率因為不含 θ 而從梯度裡消失,最後停在「log 機率梯度的和 × 折扣獎勵的和」這條公式,變異數縮減留到下一堂。
CS224R Spring 2026 第一講做三件事:交代課務、說明為什麼要學 deep RL、把「行為」寫成可以學的東西。核心是一組定義:state、action、trajectory、reward、policy,以及「最大化期望總獎勵」這個目標。最後用一個例子收尾:拿 ℓ2 回歸去模仿一群要切換車道、一群要直行的駕駛,policy 會學到兩者的平均值,一個沒人示範過的半切換動作。這個問題是 L2 的起點。
CS234 Winter 2026 的作業一共 68 分、四題:庫存 MDP 看視野與折扣怎麼改變最佳策略(8)、自駕車的 proxy reward 為什麼讓 AI 車乾脆不上匝道(5)、用 Bellman residual 界住貪婪策略的表現(30),以及在 RiverSwim 上親手寫 value iteration 與 policy iteration(25)。三題紙筆在練同一件事:你寫下的 reward、γ 與價值函數,不一定是你以為的那個目標。
CS234 Winter 2026 第一講先回答 RL 是什麼:在不確定之下,從經驗學會做好決策。它通常同時牽涉四件事:最佳化、延遲後果、探索、泛化。接著用火星探測車的七格世界,從 Markov process 一路加到 Markov reward process,定義 return、value function 和折扣因子,最後推出 MRP 的 Bellman 方程:可以直接解矩陣反轉,也可以用動態規劃迭代。加上動作之後就是 MDP,這是下一講的起點。
CS234 Winter 2026 第二講假設世界模型已知,回答怎麼算出最好的 policy。先把 MDP 加上 policy 變回 MRP,用 Bellman backup 迭代評估 policy;再用 policy iteration 交替評估與改進,並證明每一輪都不會變差,最多 |A|^|S| 輪就停。另一條路是 value iteration:直接重複套用 Bellman 最佳化運算子,因為它在 γ < 1 時是 contraction,所以一定收斂。最後補上 finite horizon:這時最好的 policy 通常會隨剩餘步數改變。
不知道轉移機率與 reward,要怎麼估一個策略值多少?CS234 第 3 講給三個答案:Monte Carlo 直接平均整條軌跡的回報(無偏、變異大、要等 episode 結束),TD(0) 用「一步 reward+下一狀態的估計值」當目標(有偏、變異小、每一步都能更新),certainty equivalence 先估模型再做動態規劃(最省資料、最貴的計算)。第 4 講開頭的 AB 例子把差別講到最清楚:同一批資料,MC 說 V(A)=0,TD 說 V(A)=0.75。
HW6 Problem 2(15 分)給你一張 4×5 的 Gridworld:動作會打滑、獎勵在離開格子時才拿到。你要在 notebook 裡寫 policy evaluation、policy iteration 與 value iteration 各一步,再觀察折扣因子 γ 怎麼改變策略,最後反問「這樣建模機器人任務合理嗎」。環境規則全部已知,所以這是規劃,還不是學習。
Lecture 9–12 與 Project 3 用同一個 Gridworld 對照已知模型的 value iteration、未知模型的 Q-learning,以及用 features 泛化的 approximate Q-learning。
HW8 把 state、action、reward、transition 與 value update 接起來,驗收你能否區分環境動態、policy 與估計誤差。