AI時代系列(3) 機器學習三部曲: 📘 第三部:《強化學習 —— AI 的決策與進化》
42/100 第五週:📌 Deep Q-Network(DQN)與深度強化學習入門
42.用神經網路逼近 Q 函數 📈 將 Q 表格升級為函數估算器!
________________________________________
🎯 單元導讀
在傳統的 Q-Learning 中,我們會用一張 Q 表格(Q-table)記錄每個狀態-行動組合的價值:
Q(s, a) → 表格索引查找
但當環境狀態空間變得極大(如影像輸入、連續變數),表格法將難以維護與擴展。
這時候,我們可以使用 神經網路作為 Q 函數逼近器(Function Approximator),學會在任何狀態下預測 Q 值!
這正是深度 Q 網路(DQN)的核心思想!
________________________________________
🧠 一、為什麼要逼近 Q 函數?
問題 說明
表格法限制 需要為每個狀態-行動組合存一筆資料,維度太高時爆炸
無法泛化 每個狀態被視為獨立,不會從類似狀態中學習
資料稀疏 大多數狀態-行動對根本沒出現過,學不到價值
👉 使用神經網路後,我們可用以下方式近似 Q 函數:
Q(s, a) ≈ DNN(s, a; θ)
神經網路能「泛化」經驗 → 看過的幫助沒看過的!
________________________________________
🔁 二、深度 Q 網路(DQN)的模型設計
通常我們會設計一個神經網路:
• 輸入層:環境觀察(可為向量或圖像)
• 隱藏層:若干層 ReLU(或其他激活函數)神經元
• 輸出層:針對每個可能的行動 a,預測對應的 Q 值
範例架構(以小型網路為例):
Input: state s (e.g., [x, y, velocity])
Hidden: 128 units → 64 units
Output: [Q(s, a₁), Q(s, a₂), ..., Q(s, aₖ)]
選擇動作時:
a = argmax_a Q(s, a) = argmax_a DNN(s; θ)
________________________________________
🧪 三、DQN 的更新規則與 TD 誤差
訓練過程中,我們用 TD 誤差作為損失函數來更新神經網路:
Loss = (r + γ * max Q(s', a'; θ_target) - Q(s, a; θ))²
• θ_target 是目標網路參數(定期複製)
• θ 是主網路參數(即時更新)
這樣做可減少學習不穩定性,提升收斂速度!
________________________________________
📸 四、函數逼近 Q 的實際應用場景
- 🎮 電玩遊戲畫面輸入:以 Atari 為例,輸入 84×84 灰階影像,輸出對應各行動的 Q 值。
- 🚗 自駕車感測數據:輸入來自雷達或 LiDAR 的環境資訊,輸出轉彎、加速、煞車等控制 Q 值。
- 💹 金融交易:輸入股價走勢與技術指標,輸出買入、賣出、持有的 Q 值判斷。
________________________________________
🔍 五、挑戰與注意事項
1️⃣ 過度估計問題(Overestimation Bias)
• DQN 使用 max Q 易導致高估
• 解法:使用 Double DQN 分離動作選擇與評估
2️⃣ 不穩定與發散風險
• 使用 Replay Buffer 與 Target Network 是為了解決這些問題
• 可搭配 BatchNorm、Dropout 穩定訓練
3️⃣ 連續動作空間不可用 DQN
• 若動作空間為連續(如 -1 ~ +1),DQN 不適合,需改用 DDPG、SAC 等方法
________________________________________
💡 六、延伸思考與提問
1️⃣ 在影像輸入環境中,Q 表格為什麼不可行?
👉
影像輸入的狀態空間維度極高(例如 84×84 像素的灰階畫面就有 7,056 維),若用表格記錄每一個可能像素組合的 Q 值,狀態總數幾乎是無限大,無法儲存也無法涵蓋全部狀態。
試想:即使僅有 256 級灰階,所有像素排列組合會達到 256⁷⁰⁵⁶ 種可能,根本無法用表格存儲與學習。
這就是為什麼需要用神經網路進行函數逼近,透過模型自動學習如何從高維影像中抽取有用的特徵,估計出合理的 Q 值。
2️⃣ 你能想到哪些人生行為,也需要「類比經驗泛化」?
👉
面試應對:不同公司面試問題略有差異,但可利用過去回答經驗快速泛化新情境。
社交對話:與不同人聊天時,需要依據以往對人性格、情境的理解快速調整回應。
策略規劃:經營事業、投資理財等,面臨新局勢時需套用過去模式做出類比推估。
職場溝通:過去與上司、客戶的互動經驗,幫助預測不同主管與客戶的溝通風格。
這些其實都像是人類自然使用的「經驗轉移學習 (Transfer Learning)」。
3️⃣ 神經網路在 Q 函數估算中,有無可能產生過擬合?
👉
有可能。當資料樣本不足或訓練回合有限時,神經網路容易對某些狀態-行動對應關係學得過於精確,失去泛化能力。
可能造成後果:遇到未看過的類似狀態時,Q 值估計嚴重偏差,學習表現不穩定。
防止過擬合的方法:
🛑 Early Stopping:監控驗證集表現,提早終止訓練;
🎯 正則化 (L2/L1):限制模型權重複雜度;
🎲 Dropout:隨機屏蔽神經元增加泛化能力;
🔄 經驗回放 (Replay Buffer):增加訓練資料多樣性;
📊 目標網路 (Target Network):穩定目標 Q 值,減少快速震盪。
________________________________________
✅ 七、小結與啟示
• Q 函數表格無法應對高維狀態空間
• 用神經網路逼近 Q(s,a) 是深度強化學習的核心
• 搭配 TD 誤差更新、Replay Buffer 與 Target Network 可提升學習穩定性
• 對 AI 而言,Q 函數是價值觀;對人類而言,則是經驗與判斷的智慧!