AI時代系列(2) 機器學習三部曲: 🔹 第二部:《深度學習 —— 神經網路的革命》
85/100 第九週:📌 深度強化學習(Deep Reinforcement Learning)🎮
85.探索 vs 利用(Exploration vs Exploitation)🔄 試錯與策略平衡的藝術!
________________________________________
🎯 單元導讀:
強化學習(Reinforcement Learning)中最核心的矛盾就是這個問題:
「我該嘗試新的行動?還是重複過去表現最好的選擇?」
這就是探索(Exploration)與利用(Exploitation)之間的取捨。
本課將深入說明這對矛盾的本質、常見解法與實務影響。
________________________________________
🧠 一、什麼是探索與利用?
概念 說明
探索 (Exploration) 嘗試新的、不確定的行為,以獲取未知資訊與長期可能回報
利用 (Exploitation) 選擇目前看起來最好的動作,以獲得最大即時回報
✅ 探索能讓模型學得更廣,但風險與成本較高
✅ 利用能快速獲利,但可能陷入「局部最佳解」
________________________________________
🎲 二、實例:經典探索困境
🎰 多臂拉霸機(Multi-Armed Bandit)
你面前有 10 台拉霸機,每台回報不同但不明確:
你會:
• 持續玩回報最高的那台?(利用)
• 還是輪流嘗試所有台,找出潛力股?(探索)
🎯 建議答案(邏輯清晰 + 舉例引導):
如果我面對這 10 台回報不明的拉霸機,單純只玩目前回報最高的那台(利用),雖然短期內可能拿到較多獎勵,但可能會錯過其他「還沒被我發現但其實更賺」的機台。
相反,如果我一開始願意花一些時間輪流嘗試每一台(探索),就可以建立更全面的理解,避免被局部最佳解誤導。
________________________________________
✅ 最佳策略:探索與利用的平衡
這正是強化學習中的核心課題。常見策略如:
• ε-greedy 方法:大部分時間選最好的機台(利用),但有 ε 機率隨機選擇(探索)
• UCB(上置信界 Upper Confidence Bound):選擇「預期高 + 不確定性大」的機台
• Thompson Sampling:用機率模型平衡探索與利用
________________________________________
🧠 結論:
🎰 一開始多探索,了解整體分布,
🔄 接著逐漸轉向利用,把資源集中在回報最穩定的選擇上。
這樣可以在長期獲得最大總報酬,也就是解決了 探索與利用的折衷問題。
________________________________________
⚙️ 三、探索與利用的策略實作
在強化學習中,「探索與利用」的平衡策略至關重要,為了解決只顧當前獲利而忽略潛力選項的問題,各種策略被設計出來實現有效探索。
最基本的是 ε-greedy,它會在大多數情況選擇 Q 值最高的動作(利用),但以 ε 的機率隨機選擇其他動作(探索),實作簡單且效果穩定。進一步的 Decay ε-greedy 則讓 ε 隨時間遞減,起初鼓勵探索,之後逐步轉為穩定利用,符合實際學習需求。
另一類策略如 Softmax(Boltzmann 分布),將所有 Q 值轉成機率分布,讓較佳的動作機率更高,但其他動作也有機會被選,探索行為更平滑自然。UCB(Upper Confidence Bound) 更進一步考慮了不確定性,會特別偏好那些嘗試次數少但可能潛力大的選項,雖然計算較複雜,但探索效率極高。
在策略網路方法中,常使用 NoisyNet(在神經網路參數中引入噪聲)或 Entropy Bonus(獎勵策略的隨機性)來促進探索,這些方法能讓策略自動學會何時冒險、何時保守,使得探索行為更具彈性與智能。這些策略共同目標都是讓代理人能在有限資源下學到長期最好的行動選擇。
________________________________________
🔄 四、探索與利用的動態平衡關鍵
階段 建議策略設計
初期訓練 提高探索比重(ε 大、加噪聲)
中期收斂 緩慢減少探索(Decay ε)
穩定部署 利用為主,少量探索確保環境變化適應力
非平穩環境 維持動態 ε 或使用 entropy 保持彈性策略
________________________________________
🧭 五、真實應用中的探索設計
領域 探索與利用實作方式
遊戲 AI 初期大量試錯尋找戰略 → 收斂後偏向高效策略執行
機器手臂控制 初期用模擬環境探索行為 → 實際部署用最佳策略
智慧推薦系統 引入新商品或冷啟用戶時,需加入探索推薦以學偏好
金融交易 嘗試不同交易策略 + 控制風險門檻平衡
________________________________________
🧩 六、過度探索 vs 過度利用的風險
問題類型 可能後果
過度探索 收斂速度慢、效果不穩定、浪費資源
過度利用 陷入「局部最優」、無法發現更好的策略、對變化無感應
✅ 策略設計應根據訓練階段與任務特性動態調整探索比例!
________________________________________
📚 七、小結與啟示
✅ 探索與利用是強化學習成功與否的核心平衡點
✅ 無探索,模型無法進步;無利用,模型無法應用
✅ 適當使用 ε-greedy、Softmax、UCB 等方法可提升效率
✅ 調整策略應考慮環境穩定性、資源成本與任務類型
________________________________________
💬 問題挑戰與思考:
1️⃣ ε-greedy 中的 ε 要怎麼設?是固定好還是遞減好?
🔍 解析:
ε 是控制「探索 vs 利用」比例的超參數。如果 ε 太小,容易過早陷入局部最優;太大則會浪費時間在隨機試錯。
✅ 建議:
使用 遞減式(Decay ε) 通常較佳。常見設定是:
• 起始值:例如 ε = 1.0(完全隨機)
• 最小值:例如 ε = 0.01(保留一點隨機性)
• 遞減策略:線性或指數遞減,如
εt=εmin+(εstart−εmin)⋅exp(−kt)
🎯 目的: 初期多探索、後期穩定利用,平衡學習速度與準確性。
________________________________________
2️⃣ 若你在訓練過程中發現策略陷入「一種習慣動作」,怎麼改善?
🔍 問題:
這代表策略缺乏探索,陷入局部最優,可能是:
• ε 太小(幾乎不探索)
• 獎勵設計不夠引導多樣行為
• Replay Buffer 太偏向某些經驗
✅ 改善方法:
1. 調高 ε 或使用 entropy bonus,強化隨機性與策略多樣性。
2. 改用 Softmax 或 NoisyNet,讓模型自然引入探索行為。
3. 使用 Prioritized Experience Replay,提升罕見或有價值經驗的學習比重。
4. 獎勵 shaping:針對「多樣化行為」或「接近目標」設計額外回饋。
________________________________________
3️⃣ UCB 探索方式是否適合用於大型環境?需要什麼改良?
🔍 問題:
UCB 計算每個動作的信心區間,但在大型環境中(例如狀態數百萬個),每個狀態都要維護計數與估計,記憶體與計算成本極高。
✅ 改良方法:
1. 結合函數逼近(Function Approximation):將 Q 值與動作置信區間透過神經網路學習,減少表格空間。
2. 使用 Bootstrapped DQN:訓練多個 Q 網路並用它們的分歧程度作為不確定性估計,實現類似 UCB 的效果。
3. Thompson Sampling 類比方法:基於模型不確定性抽樣行為,也是一種可擴展的探索策略。
🎯 結論: 傳統 UCB 適合小型環境,若要應用於大型或高維空間,需引入神經網路與不確定性估計手段進行擴展。