第三部《強化學習》30/100 小結與測驗:MC 方法優缺點對比 📘 理論與實務的對話! ______________

更新 發佈閱讀 13 分鐘

AI時代系列(3) 機器學習三部曲: 📘 第三部:《強化學習 —— AI 的決策與進化》

30/100 第三週:📌 蒙地卡羅方法(Monte Carlo Methods)

30.小結與測驗:MC 方法優缺點對比 📘 理論與實務的對話!

_______________________________________

🧠 一、本週重點整理

在本週的單元中,我們學習了「蒙地卡羅方法(Monte Carlo, MC)」作為一種不需環境模型、完全依賴經驗樣本的強化學習方式。以下是重點回顧:

________________________________________

🧩 單元統整對照表:

單元 主題 關鍵學習內容

21 蒙地卡羅方法概述➔ 用樣本估期望,從 episode 推算 V 值

22 First vs Every Visit➔ 兩種 MC 記錄方式,收斂特性各異

23 從遊戲中學策略➔ AlphaGo 初期訓練核心概念:MC + 自我對弈

24 使用隨機軌跡估值➔ 不用模型也能學策略,靠 Gt 統計更新

25 採樣與重要性修正➔ Off-policy 策略學習的關鍵橋梁

26 O-policy vs Off-policy➔ 自己學 vs 學別人,實務應用互有優勢

27 蒙地卡羅控制策略➔ ε-Greedy 引導策略進化,邁向最優解

28 ε-Greedy 策略應用➔ 探索與利用的智慧平衡方式

29 Blackjack 實作➔ 模擬環境中練習策略估計與控制的實踐

________________________________________

📘 二、MC 方法優缺點對比

蒙地卡羅控制方法具備許多優缺點。其優點在於不需要事先了解環境的轉移機率模型,實作概念直觀、容易上手,並能直接利用實際互動過程中完整的 episode 進行學習,具備一致性保證,理論上可收斂至正確的價值估計,特別適合模擬環境與回合制任務。

然而,其缺點也相對明顯:需要完整 episode 才能更新,無法即時學習,回報變異性大,收斂速度可能較慢;在狀態空間較大時,若未搭配函數逼近技術,記憶體需求與計算成本也會迅速攀升。因此,蒙地卡羅控制較適合用在中小型、具終止條件的任務中,若應用於大型或連續性問題,需結合更進階的方法才能有效發揮。

________________________________________

🧪 三、測驗題組:MC 方法理解評估

1️⃣ MC 方法需在何種條件下才能更新狀態價值?

A. 每執行一步即可更新

B. 只要採取動作就能更新

✅ C. 必須等到 episode 結束

D. 任意時刻皆可更新

📘 解析:

蒙地卡羅方法必須等一整個 episode 結束後,才能依據整體回報來更新狀態價值。這是它與時序差分(TD)法最大不同之處。TD 可以每一步更新,而 MC 依賴完整軌跡。

________________________________________

2️⃣ 下列何者是 MC 方法的一項優勢?

A. 不需要使用任何獎勵函數

B. 可直接預測所有 Q 值

✅ C. 不需知道環境的轉移機率

D. 能即時處理時間差異更新

📘 解析:

MC 方法是典型的 model-free 強化學習方法,能在不需要知道環境轉移機率(如 P(s'|s,a))的前提下運作,只依靠觀察得到的經驗(sample trajectories)進行學習。

________________________________________

3️⃣ 使用 First-Visit MC 的優點為何?

A. 更新次數最多

B. 會立刻學習

C. 更容易處理連續任務

✅ D. 避免重複樣本導致偏差

📘 解析:

First-Visit Monte Carlo 方法只在狀態第一次出現在某次 episode 中時進行更新,可減少重複樣本對學習造成的偏差,提升穩定性。相比之下,Every-Visit MC 會對所有出現次數進行平均,可能引入更多方差。

________________________________________

4️⃣ MC 方法若用於策略控制,通常搭配哪種策略改進機制?

A. Q-learning

B. SARSA

✅ C. ε-Greedy

D. TD(λ)

📘 解析:

當 MC 被應用於學習 Q 值並進行策略改進時,會搭配 ε-Greedy 策略:以高機率選擇當前最佳行動,但保留少量機會隨機探索其他動作,以避免陷入局部最優。

________________________________________

5️⃣ 加權重要性修正的特點是?

A. 無偏且變異小

✅ B. 有偏但變異小

C. 無偏且回報穩定

D. 不適用於 Off-policy

📘 解析:

加權重要性修正是 Off-policy MC 方法常用技術,雖會引入一點偏差(bias),但可顯著降低變異性(variance),從而提升學習的穩定性與效率。這是一種實務中常見的權衡手段。

________________________________________

📝 簡答題

1️⃣ 請說明 MC 方法為什麼不適合即時學習(如遊戲即時反應任務)?

✅ 參考答案:

因為 MC 方法需要等到完整 episode 結束才能計算 G<sub>t</sub>,因此無法在每一步即時更新價值,只適用於有限步驟的回合制任務。

________________________________________

2️⃣ 請舉出一個 Off-policy 學習場景與其應用價值。

✅ 參考答案:

在醫療診療紀錄中,我們只能使用既有的歷史行為策略(醫生過去的處置方式)來預測新的策略(例如新的藥物治療)可能的效果。這種情況下就需要 Off-policy 學習與重要性修正。

________________________________________

3️⃣ 若你設計一套 MC 控制演算法訓練遊戲 AI,你會如何設定 ε 值以平衡探索與利用?

✅ 參考答案:

可設初期 ε 值高(如 1.0),讓 AI 大量探索,隨著訓練進行逐步下降(如 ε ← ε × 0.995),最終趨近於較小值(如 0.05),讓策略穩定利用。

________________________________________

四 🃏 Blackjack 環境下的 Monte Carlo 每次-訪問法(Every-Visit MC)

這裡提供一個簡單的 蒙地卡羅方法(Monte Carlo) 實作範例,採用 OpenAI Gym 中的 Blackjack-v1 環境,用來訓練 AI 預估每個狀態的期望報酬(值函數 V(s))。

python

import gymnasium as gym

import numpy as np

from collections import defaultdict

# 初始化環境

env = gym.make("Blackjack-v1", sab=True)

# 建立狀態-值函數:預設為 0

value_table = defaultdict(float)

returns_sum = defaultdict(float)

returns_count = defaultdict(int)

# 訓練參數

num_episodes = 500_000

# 每次-訪問蒙地卡羅法

for _ in range(num_episodes):

episode = []

state, _ = env.reset()

done = False

while not done:

# 隨機策略:以等機率選擇 action(0=不要牌, 1=要牌)

action = env.action_space.sample()

next_state, reward, terminated, truncated, _ = env.step(action)

episode.append((state, reward))

state = next_state

done = terminated or truncated

# 計算總報酬並更新 V(s)

G = 0

visited_states = set()

for state, reward in reversed(episode):

G += reward

if state not in visited_states:

returns_sum[state] += G

returns_count[state] += 1

value_table[state] = returns_sum[state] / returns_count[state]

visited_states.add(state)

# 顯示其中幾個狀態的估值

for state, value in list(value_table.items())[:10]:

print(f"狀態 {state} 的估計價值 V(s) = {round(value, 2)}")

這段程式碼利用蒙地卡羅控制(MC-Control)搭配 ε-greedy 策略來訓練 Blackjack 智慧體。每次完整執行一場遊戲,記錄所有 (state, action, reward) 序列,並透過回溯累加回報 G 來更新 Q 值。採用 First-Visit 策略,避免重複更新同一回合內的相同行為,並用多次觀察到的回報平均值來穩定 Q 值估計。透過 ε-greedy 策略平衡探索與利用,AI 逐漸學會在不同手牌與莊家資訊下,什麼時候該要牌、什麼時候該停牌,最終形成穩定的決策策略。

________________________________________

✅ 解釋重點:

env = gym.make("Blackjack-v1", sab=True):建立 Blackjack 環境。

蒙地卡羅方法不需要模型,只透過與環境互動來學習。

這是 Every-Visit MC:即使狀態在一回合中出現多次,仍會多次更新。

隨著迭代次數增加,估算的 V(s) 會逐漸接近真實的期望值。

採用的是隨機策略,可進一步結合 ε-Greedy 作為控制方法(下一步)。

________________________________________

🎯 延伸建議:

可修改 env.action_space.sample() 為 ε-Greedy 策略提升效果

可擴展為 MC 控制演算法,學習 Q(s,a) 與最優策略 π(s)

________________________________________

✅ 五、小結與啟示:

• 蒙地卡羅方法強調「從經驗學習」,是強化學習入門的重要技術

• 無需環境模型,但需要完整 episode,適合模擬環境與離線訓練

• 理論簡單但實務中有高變異與延遲更新的挑戰

• MC 方法是深入 TD 學習與 Actor-Critic 演算法前的重要橋樑!





留言
avatar-img
留言分享你的想法!
avatar-img
Hansen W的沙龍
9會員
274內容數
AIHANS沙龍是一個結合AI技術實戰、產業策略與自我成長的知識平台,主題涵蓋機器學習、生成式AI、創業經驗、財務規劃及哲學思辨。這裡不只提供系統化學習資源與實作案例,更強調理性思維與行動力的結合。無論你是AI初學者、創業者,還是追求人生升維的行者,都能在這裡找到前進的方向與志同道合的夥伴。
Hansen W的沙龍的其他內容
2025/09/24
本單元以 Blackjack 遊戲示範蒙地卡羅控制實作,透過完整回合試錯與 ε-Greedy 策略更新 Q 值,AI 學會在不同手牌與莊家情境下選擇要牌或停牌。隨訓練累積,策略逐步收斂接近最優解,展現強化學習自動形成「算牌」式決策的能力。
2025/09/24
本單元以 Blackjack 遊戲示範蒙地卡羅控制實作,透過完整回合試錯與 ε-Greedy 策略更新 Q 值,AI 學會在不同手牌與莊家情境下選擇要牌或停牌。隨訓練累積,策略逐步收斂接近最優解,展現強化學習自動形成「算牌」式決策的能力。
2025/09/24
Epsilon-Greedy 策略透過以 1−ε 機率選最佳行動、ε 機率隨機探索,平衡利用與探索,避免陷入次優解。固定 ε 簡單但收斂慢,動態衰減更實用。此方法廣泛應用於 Q-learning、MC 控制與 SARSA,是強化學習中最基礎且實用的探索機制。
2025/09/24
Epsilon-Greedy 策略透過以 1−ε 機率選最佳行動、ε 機率隨機探索,平衡利用與探索,避免陷入次優解。固定 ε 簡單但收斂慢,動態衰減更實用。此方法廣泛應用於 Q-learning、MC 控制與 SARSA,是強化學習中最基礎且實用的探索機制。
2025/09/24
蒙地卡羅控制透過完整回合試錯與回報平均更新 Q 值,並結合 ε-Greedy 改進策略,使 AI 能逐步逼近最優解。其優點是直觀、無需模型,適合模擬與探索初期,但在長回合或稀疏獎勵下學習效率低,常需與 TD 方法結合。
2025/09/24
蒙地卡羅控制透過完整回合試錯與回報平均更新 Q 值,並結合 ε-Greedy 改進策略,使 AI 能逐步逼近最優解。其優點是直觀、無需模型,適合模擬與探索初期,但在長回合或稀疏獎勵下學習效率低,常需與 TD 方法結合。
看更多
你可能也想看
Thumbnail
在小小的租屋房間裡,透過蝦皮購物平臺採購各種黏土、模型、美甲材料等創作素材,打造專屬黏土小宇宙的療癒過程。文中分享多個蝦皮挖寶地圖,並推薦蝦皮分潤計畫。
Thumbnail
在小小的租屋房間裡,透過蝦皮購物平臺採購各種黏土、模型、美甲材料等創作素材,打造專屬黏土小宇宙的療癒過程。文中分享多個蝦皮挖寶地圖,並推薦蝦皮分潤計畫。
Thumbnail
小蝸和小豬因購物習慣不同常起衝突,直到發現蝦皮分潤計畫,讓小豬的購物愛好產生價值,也讓小蝸開始欣賞另一半的興趣。想增加收入或改善伴侶間的購物觀念差異?讓蝦皮分潤計畫成為你們的神隊友吧!
Thumbnail
小蝸和小豬因購物習慣不同常起衝突,直到發現蝦皮分潤計畫,讓小豬的購物愛好產生價值,也讓小蝸開始欣賞另一半的興趣。想增加收入或改善伴侶間的購物觀念差異?讓蝦皮分潤計畫成為你們的神隊友吧!
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我最近在網上學到了一個非常實用的方法,可以快速了解一個行業。這個方法來自麥肯錫的工作方法,搭配ChatGPT使用非常高效。只要你學會了,就能輕鬆掌握任何行業的基礎知識。 麥肯錫的方法論 第一步:總結關鍵詞
Thumbnail
我最近在網上學到了一個非常實用的方法,可以快速了解一個行業。這個方法來自麥肯錫的工作方法,搭配ChatGPT使用非常高效。只要你學會了,就能輕鬆掌握任何行業的基礎知識。 麥肯錫的方法論 第一步:總結關鍵詞
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 繼 AI說書 - 從0開始 - 82 與 xxx ,我們談論了衡量 AI 模型的方式,那當你訓練的模型比 State-of-the-Art 還要好並想要進行宣稱時,需要
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 繼 AI說書 - 從0開始 - 82 與 xxx ,我們談論了衡量 AI 模型的方式,那當你訓練的模型比 State-of-the-Art 還要好並想要進行宣稱時,需要
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 xxx 提到,既然提到訓練,就表示要有一套衡量基準供大家遵守,有鑑於此,以下繼續介紹幾類衡量方式: MCC: 首先介紹 True (T) Positive (
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 xxx 提到,既然提到訓練,就表示要有一套衡量基準供大家遵守,有鑑於此,以下繼續介紹幾類衡量方式: MCC: 首先介紹 True (T) Positive (
Thumbnail
延續上週提到的,「有哪些不訓練模型的情況下,能夠強化語言模型的能力」,這堂課接續介紹其中第 3、4 個方法
Thumbnail
延續上週提到的,「有哪些不訓練模型的情況下,能夠強化語言模型的能力」,這堂課接續介紹其中第 3、4 個方法
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News