增強學習 (RL) 是一種機器學習技術,會透過「代理」與所在環境互動來學習最佳行為。這類代理不仰賴明確的程式設計或加上標籤的資料集,而是以行動帶來的獎勵或懲罰做為回饋,透過反覆試驗來學習。這個過程與人類的自然學習方式相似,因此增強學習可有效打造智慧型系統,來解決複雜問題。
增強學習的目的是學習制定決策。假設一個代理 (例如軟體程式或機器人) 在某個環境中行動,這個環境可能是實體空間、虛擬遊戲世界,甚至市場。當代理在環境中行動,會產生特定結果,但部分結果可能比其他結果更理想。
代理的目標是盡可能不斷取得最多獎勵。為了達到這個目標,代理會學習一套政策,也就是在指定情況下採取的行動策略。此外,代理會透過與環境反覆互動來改進政策。
以會下西洋棋的 AI 為例,代理的動作是棋盤上的棋步,環境是遊戲的目前狀態,獎勵則是贏得遊戲。透過反覆對弈和接收行動回饋,增強學習代理會瞭解哪些行動更有可能獲勝。
增強學習的學習過程,是由四個重要元素構成的回饋循環:
以下是這個回饋循環的運作方式:
系統會反覆試驗、獲得回饋並改善規則,直到瞭解哪種做法最有效,能夠不斷獲得最多獎勵。
增強學習有兩種主要類型:以模型為基礎的增強學習,以及無模型增強學習。
以模型為基礎的增強學習,是讓代理嘗試建構環境的內部模型,然後在實際行動前,先透過這個模型來預測結果,以制定更周詳的行動策略。
假設機器人正在學習走迷宮。以模型為基礎的增強學習代理,會嘗試建立迷宮布局的內部表示法,然後使用這個模型規劃路徑,在實際移動前,先模擬各種行動及預測結果。
另一方面,無模型增強學習是指不建構明確的環境模型,而是根據收到的獎勵,將動作與價值建立關聯,直接學習最佳策略。
回頭來看例子中的迷宮。無模型代理不會大費周章繪製整個迷宮的地圖,而是純粹根據過去的經驗和收到的獎勵,學會判斷在特定路口左轉或右轉,更有可能帶領自己找到出口。
雖然每種增強學習技術的目標,都是盡可能獲得最多獎勵,但這些技術提供的策略各自不同。我們回頭來看迷宮中的機器人:
增強學習是一項強大的工具,在特定情境下可展現優異能力。以下列舉幾個最適合使用增強學習的情境:
環境複雜且包含眾多狀態和動作
增強學習可處理傳統程式設計或規則型系統難以應對的情況。
須透過互動產生資料
如果想讓代理透過主動與環境互動及接收回饋來學習,增強學習就能派上用場。
目標是取得最佳長期成果
如果任務目標是經過一段時間後,盡可能累積最多獎勵,就很適合採用增強學習。
增強學習是解決棘手問題的好方法,但務必瞭解其優缺點,這樣才能判斷這項技術是否適合各種工作,以及使用方式。
增強學習讓系統能透過互動學會複雜行為,因此適用於多種情境,包括:
推薦系統可透過增強學習,從使用者互動中學習,進而提供個人化建議。增強學習演算法會將點擊、購買或觀看時間視為信號,將推薦引擎最佳化,盡可能提高使用者參與度和滿意度。舉例來說,音樂串流服務可運用增強學習,根據不斷演變的使用者偏好,推薦歌曲或藝人。
遊戲業已採用增強學習,開發出遊戲技能高超的代理。這些經過增強學習訓練的 AI 代理,在複雜遊戲中展現了極為精熟的技能,以及高階策略思考和決策能力。DeepMind 開發的 AlphaGo 和 AlphaZero 就是著名的例子。這兩個代理在西洋棋等遊戲中發揮增強學習帶來的強大力量,締造頂尖表現。
增強學習可幫助機器人學會複雜的運動技能,並在充滿障礙的環境中行動。當機器人做出抓取物體、有效移動等期望行為,就會獲得獎勵。因此,這項技術有助於將需要精細動作和高靈活性的工作自動化。這項技術可應用於製造業、物流業,甚至是醫療照護業,例如由機器人協助動手術或照顧病患。
要開發增強學習系統,需有功能強大的平台來訓練代理,以及可擴充的環境來部署代理。Google Cloud 提供必要的元件: