強化學習(RL) 是機器學習的一個分支,其中一個 智能體 透過與 環境 互動來學習如何做出決策。在強化學習中,智能體的目標是學習一套 策略(一種行動方針),以選擇能夠最大化累積獎勵的行動。
與需要標籤範例的監督式學習不同,強化學習依賴於 嘗試錯誤的反饋:產生正面結果(獎勵)的行動會被強化,而帶來負面結果(懲罰)的行動則會被避免。
正如 Sutton 和 Barto 所解釋,強化學習本質上是「一種理解及自動化目標導向學習與決策的計算方法」,智能體透過與環境的 直接互動 學習,無需外部監督或完整的世界模型。
實際上,這意味著智能體會持續探索狀態與行動空間,觀察行動結果,並調整策略以提升未來的獎勵。
核心概念與組成
強化學習包含多個核心元素。大致而言,智能體(學習者或決策實體)透過在離散時間點採取 行動,與 環境(外部系統或問題空間)互動。
每一步,智能體觀察環境的當前 狀態,執行一個行動,然後從環境中獲得一個 獎勵(數值反饋信號)。經過多次互動,智能體尋求最大化其總累積獎勵。關鍵概念包括:
- 智能體:自主學習者(例如 AI 程式或機械人),負責做出決策。
- 環境:智能體互動的世界或問題領域。環境提供當前狀態給智能體,並根據智能體的行動計算獎勵。
- 行動:智能體為影響環境而採取的決策或動作。不同的行動可能導致不同的狀態和獎勵。
- 狀態:環境在特定時間的表示(例如棋盤上棋子的佈局或機械人的感測器讀數)。智能體根據狀態決定下一步行動。
- 獎勵:環境在每次行動後給予的標量反饋信號(正面、負面或零),量化該行動的即時效益(或成本)。智能體的目標是最大化 期望累積獎勵。
- 策略:智能體選擇行動的策略,通常是從狀態映射到行動的函數。透過學習,智能體旨在找到最佳或近似最佳的策略。
- 價值函數(或回報):對智能體從特定狀態(或狀態-行動對)獲得的預期未來獎勵(累積獎勵)的估計。價值函數幫助智能體評估行動的長期後果。
- 模型(可選):在基於模型的強化學習中,智能體建立環境動態的內部模型(狀態如何根據行動轉移),並用於規劃。基於無模型的強化學習則不建立此模型,純粹透過嘗試錯誤學習。
強化學習的運作原理
強化學習通常被形式化為一個 馬可夫決策過程(MDP)。在每個離散時間點,智能體觀察狀態 St,選擇行動 At。環境隨後轉移到新狀態 St+1,並根據所採取的行動發出獎勵 Rt+1。
經過多個回合,智能體累積狀態-行動-獎勵序列的經驗。透過分析哪些行動帶來較高獎勵,智能體逐步改進其策略。
關鍵在於強化學習問題涉及 探索 與 利用 之間的權衡。智能體必須 利用 已知的最佳行動以獲取獎勵,同時也要 探索 新的行動,可能帶來更佳結果。
例如,一個控制機械人的強化學習智能體通常會選擇已證實安全的路徑(利用),但有時會嘗試新路徑(探索),以期發現更快的路線。平衡這種權衡對找到最佳策略至關重要。
學習過程常被比喻為行為條件反射。例如,AWS 指出強化學習「模仿人類的嘗試錯誤學習過程」。小孩可能學會收拾玩具會獲得讚賞,而亂丟玩具會被責罵;同理,強化學習智能體透過對良好行動給予正面反饋,對不良行動給予負面反饋來學習哪些行動帶來獎勵。
隨著時間推移,智能體建立價值估計或策略,捕捉達成長期目標的最佳行動序列。
實務上,強化學習算法在多個回合中累積獎勵,目標是最大化 期望回報(未來獎勵總和)。它們學會偏好能帶來高未來獎勵的行動,即使這些行動未必帶來最高的即時獎勵。這種為長遠利益規劃(有時接受短期犧牲)的能力,使強化學習適合處理複雜的序列決策任務。
強化學習算法類型
實現強化學習的算法眾多,大致可分為兩類:基於模型與 無模型 方法。
-
基於模型的強化學習:智能體先學習或已知環境動態模型(狀態如何變化及獎勵如何給予),然後透過模擬結果來規劃行動。例如,機械人繪製建築物地圖以尋找最短路徑即屬此類。
-
無模型強化學習:智能體沒有明確的環境模型,純粹透過在真實或模擬環境中的嘗試錯誤學習。它不透過模型規劃,而是從經驗中逐步更新價值估計或策略。大多數經典強化學習算法(如 Q-learning 或時序差分學習)屬於此類。
在這些類別中,算法在如何表示及更新策略或價值函數上有所不同。例如,Q-learning(基於價值的方法)學習狀態-行動對的「Q值」(期望回報)估計,並選擇價值最高的行動。
策略梯度 方法直接參數化策略,並透過期望獎勵的梯度上升調整參數。許多先進方法(如 Actor-Critic 或信賴域策略優化)結合價值估計與策略優化。
一個重要的近期發展是 深度強化學習。此處,深度神經網絡作為價值函數或策略的函數逼近器,使強化學習能處理高維輸入如影像。DeepMind 在 Atari 遊戲及棋類遊戲(如 AlphaGo)上的成功,正是結合深度學習與強化學習的成果。在深度強化學習中,像深度 Q 網絡(DQN)或深度策略梯度算法將強化學習擴展至複雜的現實任務。
例如,AWS 指出常見的強化學習算法包括 Q-learning、蒙地卡羅方法、策略梯度方法和時序差分學習,而「深度強化學習」指的是這些方法中使用深度神經網絡。
強化學習的應用
強化學習廣泛應用於需要在不確定性下進行序列決策的領域。主要應用包括:
- 遊戲與模擬:強化學習在遊戲和模擬領域取得突破。例如,DeepMind 的 AlphaGo 和 AlphaZero 利用強化學習達到超越人類的圍棋和西洋棋水平。電子遊戲(如 Atari、星海爭霸)及物理、機械人模擬器是理想的強化學習測試平台,因為環境明確且可多次試驗。
- 機械人與控制:自主機械人和自駕車是動態環境中的智能體。透過嘗試錯誤,強化學習能教導機械人抓取物體或車輛導航交通。IBM 指出,機械人和自駕車是強化學習智能體透過與環境互動學習的典型例子。
- 推薦系統與行銷:強化學習可根據用戶互動個人化內容或廣告。例如,基於強化學習的推薦系統會隨著用戶點擊或跳過項目調整建議,學習呈現最相關的廣告或產品。
- 資源優化:強化學習擅長優化具有長期目標的系統。例子包括調整數據中心冷卻以降低能耗、控制智慧電網儲能或管理雲端運算資源。AWS 描述了「雲端支出優化」的案例,強化學習智能體學習如何分配計算資源以達致最佳成本效益。
- 金融與交易:金融市場動態且具序列性。強化學習被用於優化交易策略、投資組合管理及對沖,透過模擬交易學習哪些行動在市場變動下能最大化回報。
這些例子突顯了強化學習在 長期規劃 方面的優勢。與只預測即時結果的方法不同,強化學習明確最大化累積獎勵,適合處理行動有延遲後果的問題。
強化學習與其他機器學習的比較
強化學習是機器學習的三大範式之一(與監督式及非監督式學習並列),但其焦點截然不同。監督式學習基於標籤輸入輸出對進行訓練,而非監督式學習則在無標籤資料中尋找模式。
相比之下,強化學習 不需要 正確行為的標籤範例。它透過獎勵信號定義 目標,並以嘗試錯誤方式學習。在強化學習中,「訓練資料」(狀態-行動-獎勵三元組)是 序列且相互依賴 的,因為每個行動會影響未來狀態。
簡言之,監督式學習告訴模型 預測甚麼;強化學習教導智能體 如何行動。正如 IBM 的概述所述,強化學習透過「正向強化」(獎勵)學習,而非直接展示正確答案。
這使得強化學習在涉及決策與控制的任務中特別強大。然而,這也意味著強化學習更具挑戰性:沒有標籤反饋,智能體必須自行發現良好行動,通常需要大量探索環境。
強化學習的挑戰
儘管強化學習強大,但在實務上仍面臨挑戰:
- 樣本效率低:強化學習通常需要 大量經驗(試驗)才能學會有效策略。在真實世界中訓練可能成本高昂或耗時(例如,機械人可能需要數百萬次試驗才能掌握任務)。因此,許多強化學習系統先在模擬環境中訓練再部署。
- 獎勵設計:設計合適的獎勵函數十分棘手。不當的獎勵可能導致意外行為(智能體可能「鑽漏洞」以獲得獎勵,但與真正目標不符)。設計能反映長期目標且避免捷徑的獎勵是強化學習研究的藝術。
- 穩定性與安全性:在真實世界應用(如機械人、醫療、金融)中,不安全的探索行動可能危險或代價高昂。AWS 指出,真實世界實驗(如操控無人機)可能不切實際,需依賴模擬。確保學習與部署過程中的安全性是強化學習研究的重點。
- 可解釋性:學得的強化學習策略(尤其是深度強化學習模型)往往不透明。理解智能體為何採取特定行動常具挑戰,難以除錯或建立信任。這種缺乏可解釋性是複雜強化學習系統部署的挑戰之一。
這些挑戰皆為持續研究的課題。儘管困難重重,強化學習在遊戲、機械人、推薦系統等領域的實際成功證明,只要謹慎應用,強化學習能達成令人印象深刻的成果。
>>>點擊了解更多:
總結來說,強化學習是一種 自主學習框架,智能體透過與環境互動並最大化累積獎勵來達成目標。它結合了最佳控制、動態規劃與行為心理學的理念,是許多現代人工智能突破的基礎。
透過將問題框架化為帶有反饋的序列決策任務,強化學習使機器能自主學習複雜行為,彌合了數據驅動學習與目標導向行動之間的鴻溝。