第三部《強化學習》第七週70/100 小結與測驗:現代強化學習的戰力榜 🏆 你的選擇是哪一派?

更新 發佈閱讀 19 分鐘

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

70/100 第七週:📌 高階強化學習演算法

70.小結與測驗:現代強化學習的戰力榜 🏆 你的選擇是哪一派?

________________________________________

🧠 知識總攬

本章節聚焦在「策略梯度的進階演化」,從 TRPO 到 PPO、再到 TD3 和 SAC,逐步展現強化學習演算法在穩定性、樣本效率與泛化能力上的突破。

________________________________________

🔑 核心主題整理:

強化學習進階單元總整理

61 ➡️ TRPO

o 關鍵詞:Trust Region、KL 限制、二階近似

o 👉 利用信賴區間控制策略變化幅度,提升學習穩定性。

62 ➡️ TRPO 原理

o 關鍵詞:共軛梯度法、線性搜尋、安全更新

o 👉 透過高效二階優化計算,精確控制更新步幅。

63 ➡️ PPO

o 關鍵詞:策略剪裁、穩定性佳、主流應用

o 👉 簡化 TRPO 的安全更新,用剪裁法平衡穩定與效率。

64 ➡️ PPO 細節

o 關鍵詞:clip 損失、value loss、entropy、訓練技巧

o 👉 結合多種損失設計,提升策略多樣性與收斂穩定性。

65 ➡️ TD3

o 關鍵詞:雙 Q、延遲更新、目標平滑雜訊

o 👉 解決 Q-learning 在連續控制中高估問題,提升穩定性。

66 ➡️ SAC

o 關鍵詞:最大熵、策略分布、溫度自調、Q1+Q2

o 👉 鼓勵探索與穩健學習兼具,適用複雜連續控制任務。

67 ➡️ PPO vs DQN vs A2C

o 關鍵詞:策略對比、應用推薦、訓練效率

o 👉 比較不同演算法在各類任務的適用性與特點。

68 ➡️ 多任務擴展

o 關鍵詞:Shared Policy、Multi-head、干擾控制

o 👉 發展可同時處理多目標的共享或獨立學習架構。

69 ➡️ 模型型 vs 無模型型

o 關鍵詞:預測 vs 經驗、樣本效率 vs 穩定性

o 👉 取決於能否建模環境,平衡資料效率與學習風險。

70 ➡️ 小結與測驗

o 關鍵詞:回顧 + 分派最適方法

o 👉 綜合整理學習內容,幫助選擇適合的應用策略。

_______________________________________

🏆 現代強化學習戰力榜分析:你的選擇是哪一派?

在強化學習主流演算法中,

🥇 PPO 以平衡的穩定性、中等探索性與樣本效率成為目前各類應用中全能主流王者,尤其適合自駕仿真與機器人控制等通用任務。

🥈 SAC 則在探索性與穩定性上都表現出色,適合探索需求高、連續動作控制精準的任務,被譽為穩定精準策略家。

🥉 TD3 針對高精度控制任務如 MuJoCo 環境特別擅長,屬於控制任務專精者。

🎓 TRPO 以嚴謹的理論穩健性為特色,多見於學術穩健派的研究與安全敏感測試場景。

🎮 DQN 則憑藉高樣本效率與簡單架構,仍在離散動作與經典遊戲領域保有實用價值,是經典實用派代表。

🧩 A2C 在並行訓練上具備良好基礎,適合作為並行探索者的入門穩定方案。

🌟 Model-Based 方法 則在能建立準確模型時,展現極高的樣本效率與控制能力,特別適合可模擬的醫療、製程優化等高價值領域。

________________________________________

✅ 測驗區:你真的掌握了高階強化學習嗎?

________________________________________

1️⃣ TRPO 中使用 KL 散度限制的目的為何?

A. 增加策略探索能力

B. 降低收斂速度

✅ C. 防止策略更新過度偏離

D. 優化策略損失值

📘 解析:

TRPO(Trust Region Policy Optimization)引入 KL 散度限制,是為了保證每次策略更新時不會「走得太遠」,避免策略性能急劇下降。這種「小步快跑」的做法讓學習更加穩定,是其核心特色。

________________________________________

2️⃣ PPO 的剪裁機制(clipping)主要解決什麼問題?

A. 數據重複問題

✅ B. 策略更新不穩定

C. 動作空間過小

D. 模型過擬合

📘 解析:

PPO 的 clipping 會限制策略比值 r(θ) 不超過 [1−ϵ,1+ϵ] 範圍,從而避免策略暴衝或忽然改變太多。這解決了原本策略梯度方法更新過度導致不穩定的問題。

________________________________________

3️⃣ TD3 使用兩個 Q 網路的主要目的是?

A. 增加探索性

B. 提高策略熵值

✅ C. 減少 Q 值過估計(Overestimation)

D. 模擬多任務學習

📘 解析:

DDPG 容易高估 Q 值,造成策略偏誤。TD3 採用兩個 Q 網路 Q1,Q2,並在目標值中使用 min⁡(Q1,Q2)可以有效抑制過估計問題,讓學習過程更準確穩定。

________________________________________

4️⃣ SAC 與 TD3 的最大差異在哪裡?

A. TD3 支援離散動作空間

✅ B. SAC 引入最大熵原則來強化探索

C. TD3 沒有使用 Critic 網路

D. SAC 使用 Q-learning 更新 Q 值

📘 解析:

SAC(Soft Actor-Critic)在 reward 中加入 entropy bonus,目的是鼓勵策略保留「不確定性」,進而提升探索能力。這與 TD3 專注 exploitation 的設計不同,是兩者在設計哲學上的主要差異。

________________________________________

5️⃣ 在以下情境中,選哪個方法最合適:你要訓練一個能操作不同任務的通用機器手臂?

A. DQN

B. SAC

✅ C. Multi-task PPO

D. TRPO

📘 解析:

多任務學習(如 MT10、MetaWorld)需要策略能泛化到多種情境。PPO 在穩定性與可擴展性上表現優異,並容易整合「任務提示編碼」或「環境變數」作為輸入,非常適合建構 multi-task shared policy。

________________________________________

✍️ 延伸挑戰題(簡答題 x3)

________________________________________

1️⃣ 請解釋「最大熵策略」在強化學習中的功能與價值,並舉出一個使用它的演算法。

👉 最大熵策略在強化學習中除了追求累積回報外,額外鼓勵策略保持高隨機性(高熵),促進探索多樣化,避免過早陷入次優解,提升泛化能力與穩定性。

代表演算法如 SAC (Soft Actor-Critic) 就採用最大熵目標,在學習過程中平衡回報與策略多樣性。

________________________________________

2️⃣ 為什麼 PPO 被視為目前工業應用最穩健的演算法?它相較於 TRPO 有哪些改進?

👉 PPO 使用剪裁 (clipping) 機制限制每次策略更新的幅度,避免策略崩壞,既簡單又穩定,對超參數不敏感,訓練容易收斂,適合實際部署。

相較於 TRPO,PPO 移除了複雜的二階優化(如共軛梯度計算),用簡單的單階剪裁方法達到類似穩定效果,因此在工業應用上更易實作、運算成本更低、調參更方便。

________________________________________

3️⃣ 假設你在處理一個真實場域且訓練成本很高(如醫療、機器手臂),你會選用模型型還是無模型型 RL?為什麼?

👉 若能取得較可靠的環境模型,模型型 RL 可透過模擬大量虛擬樣本,極大提升樣本效率,降低實體訓練成本,非常適合高代價場域。

若環境建模困難或模型準確性不足,則採用穩健的 Model-Free RL(如 PPO) 仍是較保險選擇,透過實驗設計控制真實互動成本。

________________________________________

示範一個簡易的 高階強化學習演算法實作案例,選用目前最受歡迎、結構穩定的演算法——✅ PPO(Proximal Policy Optimization),並搭配 CartPole-v1 環境進行演練。

________________________________________

🛠️ PPO 高階強化學習:簡易實作案例(使用 PyTorch)

📦 環境需求:

pip install gym torch numpy

________________________________________

🔁 一、核心架構概覽:

環境互動 → 收集軌跡 → 計算 advantage → PPO clip 損失 → 更新策略與值網路

________________________________________

📘 二、完整代碼(簡化版本)

python

import gym

import torch

import torch.nn as nn

import numpy as np

from torch.distributions import Categorical

import torch.optim as optim

# 建立 Actor-Critic 架構

class PPOActorCritic(nn.Module):

def __init__(self, obs_dim, act_dim):

super().__init__()

self.shared = nn.Sequential(

nn.Linear(obs_dim, 64),

nn.ReLU(),

)

self.actor = nn.Sequential(

nn.Linear(64, act_dim),

nn.Softmax(dim=-1)

)

self.critic = nn.Linear(64, 1)

def forward(self, x):

shared = self.shared(x)

return self.actor(shared), self.critic(shared)

# 計算 Advantage

def compute_advantage(rewards, values, gamma=0.99):

advantage = []

G = 0

for r, v in zip(reversed(rewards), reversed(values)):

G = r + gamma * G

advantage.insert(0, G)

return torch.tensor(advantage) - torch.tensor(values)

# 主訓練流程

env = gym.make('CartPole-v1')

obs_dim = env.observation_space.shape[0]

act_dim = env.action_space.n

model = PPOActorCritic(obs_dim, act_dim)

optimizer = optim.Adam(model.parameters(), lr=1e-3)

eps_clip = 0.2

epochs = 1000

for episode in range(epochs):

state = env.reset()

log_probs, values, rewards, states, actions = [], [], [], [], []

for _ in range(200):

state_tensor = torch.tensor(state, dtype=torch.float32)

probs, value = model(state_tensor)

dist = Categorical(probs)

action = dist.sample()

next_state, reward, done, _ = env.step(action.item())

# 儲存資料

log_probs.append(dist.log_prob(action))

values.append(value.item())

rewards.append(reward)

states.append(state_tensor)

actions.append(action)

state = next_state

if done:

break

# 計算 advantage

returns = compute_advantage(rewards, values)

log_probs = torch.stack(log_probs)

values = torch.tensor(values)

returns = returns.detach()

# PPO clip 損失

for _ in range(4): # 多輪更新

probs, values_new = model(torch.stack(states))

dist = Categorical(probs)

new_log_probs = dist.log_prob(torch.stack(actions))

ratio = torch.exp(new_log_probs - log_probs)

surr1 = ratio * returns

surr2 = torch.clamp(ratio, 1 - eps_clip, 1 + eps_clip) * returns

loss = -torch.min(surr1, surr2).mean() + 0.5 * (returns - values_new.squeeze()).pow(2).mean()

optimizer.zero_grad()

loss.backward()

optimizer.step()

if episode % 50 == 0:

print(f"Episode {episode} | Return: {sum(rewards):.2f}")

這份程式透過簡單的 PPO Actor-Critic 架構,在每個回合中與環境互動收集資料,記錄狀態、動作、回饋與動作機率,完成完整 episode 後計算 Advantage 作為學習信號。接著運用 PPO clip objective,以新舊策略比值 (ratio) 控制每次更新幅度,穩定提升策略表現,同時同步更新價值預測。整個訓練流程不斷重複,最終模型學會穩定控制 CartPole-v1 環境,展現出 PPO 簡單穩定又高效的特性。

________________________________________

✅ 重點說明:

元素 說明

PPOActorCritic 建立共享的策略與值網路

compute_advantage 利用折扣回報 - 值函數估計計算 advantage

ratio = exp(new_log - old_log) 核心 clip 策略更新計算方式

torch.min(surr1, surr2) PPO clip 損失函數,避免策略跳太快

多輪mini-batch 更新 提升 sample efficiency

________________________________________

🎯 執行效果:

這段程式碼通常在幾百個 episodes 就能讓 CartPole 穩定達成 200 分,展示 PPO 的強大穩定性與適應力。

✨ 章末啟示與導向

TRPO → PPO → TD3/SAC 是策略學習的進化主線

對於高穩定性 + 高探索 + 多場景泛化能力的需求,PPO 與 SAC 是現代工業與科研應用首選

若能結合「模型型預測 + 策略梯度更新」,將開啟未來強化學習更高效的新時代!



留言
avatar-img
留言分享你的想法!
avatar-img
Hansen W的沙龍
16會員
368內容數
AIHANS沙龍是一個結合AI技術實戰、產業策略與自我成長的知識平台,主題涵蓋機器學習、生成式AI、創業經驗、財務規劃及哲學思辨。這裡不只提供系統化學習資源與實作案例,更強調理性思維與行動力的結合。無論你是AI初學者、創業者,還是追求人生升維的行者,都能在這裡找到前進的方向與志同道合的夥伴。
Hansen W的沙龍的其他內容
2025/10/16
模型型RL透過學習環境模型預測未來、樣本效率高但建模困難;無模型型RL僅依互動經驗學習、穩定實用但需大量資料。實務上常結合兩者,如Dyna-Q、MuZero。模型型適合可模擬任務,無模型型適合真實複雜環境,是強化學習發展的互補方向。
2025/10/16
模型型RL透過學習環境模型預測未來、樣本效率高但建模困難;無模型型RL僅依互動經驗學習、穩定實用但需大量資料。實務上常結合兩者,如Dyna-Q、MuZero。模型型適合可模擬任務,無模型型適合真實複雜環境,是強化學習發展的互補方向。
2025/10/16
多任務強化學習(MTRL)讓AI以單一策略處理多個任務,提升泛化與效率。透過共享參數、多頭網路或策略融合,AI能適應多樣環境。挑戰在於任務干擾與過度專化,需以加權訓練與正規化平衡。此技術是邁向通用人工智慧的重要一步。
2025/10/16
多任務強化學習(MTRL)讓AI以單一策略處理多個任務,提升泛化與效率。透過共享參數、多頭網路或策略融合,AI能適應多樣環境。挑戰在於任務干擾與過度專化,需以加權訓練與正規化平衡。此技術是邁向通用人工智慧的重要一步。
2025/09/25
DQN 適合離散動作,簡單高效但偏高估;A2C 結合策略與價值,支援多環境並行,穩定性中偏高;PPO 引入剪裁更新,穩定性與泛用性最佳,為工業主流。選擇需依任務特性決定,善用工具才能事半功倍。
2025/09/25
DQN 適合離散動作,簡單高效但偏高估;A2C 結合策略與價值,支援多環境並行,穩定性中偏高;PPO 引入剪裁更新,穩定性與泛用性最佳,為工業主流。選擇需依任務特性決定,善用工具才能事半功倍。
看更多
你可能也想看
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
本文介紹了人工智慧(AI)及機器學習(ML)的基本概念和關係,探討了數據在機器學習中的重要性,以及深度學習和生成式人工智慧的應用。
Thumbnail
本文介紹了人工智慧(AI)及機器學習(ML)的基本概念和關係,探討了數據在機器學習中的重要性,以及深度學習和生成式人工智慧的應用。
Thumbnail
在當今快速發展的技術時代,人工智能 Artificial Intelligence 和機器學習 Machine Learning 已成為推動業務創新和增長的重要力量。從改善客戶服務到優化運營流程,AI和ML的應用範圍日益廣泛,為企業創造出前所未有的機會。企業又可如何利用AI和ML提升業務呢?
Thumbnail
在當今快速發展的技術時代,人工智能 Artificial Intelligence 和機器學習 Machine Learning 已成為推動業務創新和增長的重要力量。從改善客戶服務到優化運營流程,AI和ML的應用範圍日益廣泛,為企業創造出前所未有的機會。企業又可如何利用AI和ML提升業務呢?
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 77 ,我們在給定句子 「 Transformers possess surprising emerging features 」的情
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 77 ,我們在給定句子 「 Transformers possess surprising emerging features 」的情
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 76 ,我們在給定句子 「 Transformers possess surprising emerging features 」的情
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 76 ,我們在給定句子 「 Transformers possess surprising emerging features 」的情
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 75 ,我們在給定句子 「 Transformers possess surprising emerging features 」的情
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 75 ,我們在給定句子 「 Transformers possess surprising emerging features 」的情
Thumbnail
先寫結論: AI真的很厲害,而且只會愈來愈厲害,但我們人類還是得繼續學習。而且因為AI工具的便利,人類學習將更貼近學習的本質---為了成長和幸福。 以往為了應付工業化進程而必須花大量時間反覆記誦或演練的重複性工作,將大量減少,也不再需要花大量時間學習某些特定目標的應用技能工具,如:『文件繕打
Thumbnail
先寫結論: AI真的很厲害,而且只會愈來愈厲害,但我們人類還是得繼續學習。而且因為AI工具的便利,人類學習將更貼近學習的本質---為了成長和幸福。 以往為了應付工業化進程而必須花大量時間反覆記誦或演練的重複性工作,將大量減少,也不再需要花大量時間學習某些特定目標的應用技能工具,如:『文件繕打
Thumbnail
以下都是轉貼各方觀點,重點可以進一步看發表者跟回應者,我自己也有自身應用場景的murmur : 低利率環境可能回不去 科技掌握在大資金公司時代則是持續下去 工業時代引導一波人才需求 東方社會喜歡考試定生死 學校教育外還有補習班可以協助 既然AI工具隨處可得 培養厚植的各方素養與多元興趣
Thumbnail
以下都是轉貼各方觀點,重點可以進一步看發表者跟回應者,我自己也有自身應用場景的murmur : 低利率環境可能回不去 科技掌握在大資金公司時代則是持續下去 工業時代引導一波人才需求 東方社會喜歡考試定生死 學校教育外還有補習班可以協助 既然AI工具隨處可得 培養厚植的各方素養與多元興趣
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News