簡介
強化學習 (RL) 是機器學習的第三個範例 - 代理學習如何在環境中採取行動以最大化累積獎勵。
1. 強化學習 vs 有監督 vs 無監督
| 範式 | 資料 | 回饋 | 範例 |
|---|---|---|---|
| 監督 | (x, y) 對 | 標籤 | 圖像分類 |
| 無人監督 | 僅限 x | 無 | 聚類 |
| RL | 狀態、行動 | 獎勵(延遲) | 遊戲玩法 |
強化學習的獨特特徵
- 順序決策:影響未來的決策
- 延遲獎勵:無法立即知道該行為是好還是壞
- 探索與利用:嘗試新事物與利用已知知識
- 無監督者:僅獎勵訊號
2. 智能體-環境互動循環
每個強化學習問題都遵循一個循環:
Agent quan sát state s_t
→ Chọn action a_t theo policy π
→ Environment trả về reward r_{t+1} và state mới s_{t+1}
→ Lặp lại
範例:機器人穿越迷宮
import gymnasium as gym
env = gym.make("FrozenLake-v1", render_mode="human")
state, info = env.reset()
for step in range(100):
action = env.action_space.sample() # Random policy
next_state, reward, terminated, truncated, info = env.step(action)
print(f"State: {state}, Action: {action}, Reward: {reward}")
if terminated or truncated:
state, info = env.reset()
else:
state = next_state
3.核心概念
州
充分描述了環境的當前狀態。
行動(一)
決定執行哪個代理 - 離散(左/右)或連續(旋轉角度)。
獎勵 (r)
來自環境的標量響應-智能體希望最大化總獎勵。
政策 (π)
狀態→動作映射策略:
- 確定性:π(s) = a
- 隨機:π(a|s) = P(a|s)
值函數 V(s)
從狀態 s 開始時的期望累積獎勵:
$$V^\pi(s) = \mathbb{E}\pi\left[\sum{t=0}^{\infty} \gamma^t r_{t+1} | s_0 = s\右]$$
Q-函數 Q(s,a)
在狀態 s 選擇動作 a 時的期望累積獎勵:
$$Q^\pi(s,a) = \mathbb{E}\pi\left[\sum{t=0}^{\infty} \gamma^t r_{t+1} | s_0 = s, a_0 = a\右]$$
4.馬可夫決策過程(MDP)
MDP 是 RL 的標準數學架構:(S, A, P, R, γ)
| 成分 | 符號 | 描述 |
|---|---|---|
| 州 | S | 各州合集 |
| 行動 | 一個 | 所有動作集合 |
| 過渡 | P(s' | s,a) |
| 獎勵 | R(s,a,s') | R(s,a,s') |
| 折扣 | γ ∈ [0,1] | 折扣係數 |
馬可夫性質:未來只取決於現在,而不取決於過去。
5. 探索與利用
| 戰略 | 描述 | 權衡 |
|---|---|---|
| 探索 | 嘗試新動作 | 尋找更好的策略 |
| 剝削 | 使用最著名的動作 | 短期回報最大化 |
平衡方法:
- ε-貪婪:機率為 ε 的隨機
- UCB:信賴上限
- 湯普森採樣:貝葉斯方法
總結
| 概念 | 描述 |
|---|---|
| RL | 代理人從與環境的互動中學習 |
| MDP | 數學架構:狀態、行動、獎勵 |
| 政策 | 行動選擇策略 |
| 價值 | 預期累計獎勵 |
| 探索 | 嘗試新事物與探索之間的平衡 |