什麼是 獎勵函數(Reward Function)?

獎勵函數是強化學習中定義代理在特定狀態下採取特定動作後獲得的獎勵的函數,用於引導代理學習期望行為。

核心概念

在強化學習中,獎勵函數扮演著至關重要的角色,它定義了環境對代理(Agent)行為的評價標準。簡單來說,獎勵函數是一個數學函數,它接收狀態(State)和動作(Action)作為輸入,並輸出一個數值,這個數值代表了代理在該狀態下執行該動作所獲得的獎勵或懲罰。獎勵函數的設計直接影響著代理最終學習到的策略(Policy),因此,一個精心設計的獎勵函數是成功應用強化學習的關鍵。

  • 狀態 (State): 環境的描述,包含了代理做出決策所需的所有資訊。
  • 動作 (Action): 代理可以執行的行為。
  • 獎勵 (Reward): 環境對代理行為的評價,可以是正面的(獎勵)或負面的(懲罰)。

獎勵函數的目標是引導代理學習到一個最佳策略,即在任何狀態下都能選擇能夠最大化累積獎勵的動作序列。累積獎勵通常使用折扣因子進行加權,以鼓勵代理更關注當前的獎勵,而不是遙遠的未來獎勵。

運作原理

獎勵函數在強化學習的訓練過程中扮演著核心角色。以下是獎勵函數如何影響代理學習的簡要說明:

  1. 代理與環境互動: 代理觀察環境的狀態,並根據其當前的策略選擇一個動作。
  2. 環境回饋: 環境執行代理的動作,並返回一個新的狀態和一個獎勵。
  3. 獎勵函數評估: 獎勵函數根據代理的動作和環境的狀態,計算出一個獎勵值。
  4. 策略更新: 代理使用獎勵值來更新其策略,目標是學習到一個能夠最大化累積獎勵的策略。

這個過程不斷重複,直到代理學習到一個令人滿意的策略。獎勵函數的設計決定了代理學習的目標,因此,一個好的獎勵函數應該能夠明確地表達期望的行為,並避免產生不期望的副作用。

例如,如果我們想訓練一個機器人學會走路,我們可以設計一個獎勵函數,當機器人向前移動時給予正面的獎勵,當機器人摔倒時給予負面的獎勵。通過不斷地與環境互動,機器人將學會調整其動作,以最大化其累積獎勵,最終學會走路。

實際應用

獎勵函數的設計在不同的應用領域中有所不同,以下是一些例子:

  • 遊戲: 在遊戲中,獎勵函數通常與遊戲的目標相關。例如,在Atari遊戲中,獎勵函數可以是遊戲得分的變化。在圍棋中,獎勵函數可以是贏棋或輸棋。
  • 機器人控制: 在機器人控制中,獎勵函數通常與機器人的任務相關。例如,如果機器人的任務是抓取一個物體,獎勵函數可以是機器人與物體之間的距離。如果機器人的任務是導航到一個目標位置,獎勵函數可以是機器人與目標位置之間的距離。
  • 推薦系統: 在推薦系統中,獎勵函數通常與用戶的滿意度相關。例如,獎勵函數可以是用戶點擊推薦商品的概率。如果用戶點擊了推薦的商品,則給予正面的獎勵;如果用戶沒有點擊推薦的商品,則給予負面的獎勵。
  • 金融: 在金融領域,獎勵函數通常與投資回報相關。例如,獎勵函數可以是投資組合的收益率。如果投資組合的收益率為正,則給予正面的獎勵;如果投資組合的收益率為負,則給予負面的獎勵。

常見誤區

  • 獎勵稀疏性 (Reward Sparsity): 如果獎勵函數只在很少的情況下給予獎勵,代理可能難以學習到有用的策略。例如,如果獎勵函數只在代理完成整個任務後才給予獎勵,代理可能需要很長時間才能發現如何完成任務。解決獎勵稀疏性問題的方法包括使用獎勵塑形 (Reward Shaping) 和層次強化學習 (Hierarchical Reinforcement Learning)。
  • 獎勵塑形 (Reward Shaping): 獎勵塑形是指修改獎勵函數,以提供更頻繁和更具指導性的獎勵。例如,我們可以設計一個獎勵函數,當代理朝著目標方向移動時給予正面的獎勵,即使代理尚未到達目標位置。然而,獎勵塑形需要謹慎使用,因為不當的獎勵塑形可能會導致代理學習到不期望的行為。
  • 負面獎勵的濫用: 過度使用負面獎勵可能會導致代理過於保守,不敢探索新的行為。在設計獎勵函數時,應該盡量使用正面的獎勵來引導代理學習期望的行為,而不是過度依賴負面的獎勵。
  • 獎勵函數與真實目標不一致: 獎勵函數應該準確地反映期望的行為。如果獎勵函數與真實目標不一致,代理可能會學習到不期望的行為。例如,如果我們想訓練一個機器人學會清理房間,但我們只給予機器人清理垃圾的獎勵,機器人可能會忽略其他重要的任務,例如整理物品。
  • 獎勵函數的可擴展性: 獎勵函數應該具有良好的可擴展性,以便能夠應用於不同的環境和任務。一個好的獎勵函數應該能夠很容易地修改和調整,以適應新的需求。

總之,獎勵函數是強化學習中一個非常重要的概念。一個精心設計的獎勵函數可以引導代理學習到期望的行為,而一個設計不當的獎勵函數可能會導致代理學習到不期望的行為。在設計獎勵函數時,應該考慮到獎勵稀疏性、獎勵塑形、負面獎勵的濫用、獎勵函數與真實目標的一致性以及獎勵函數的可擴展性等因素。

相關術語

常見問題

← 回到 獎勵函數 快查頁

延伸學習

想看 獎勵函數 的完整影片教學?前往 美第奇 AI 學院