Inverse Reinforcement Learning
- 又稱: IRL, inverse RL
- 類別: Learning & autonomy › Learning from demonstration
- 標籤: reward-learning, imitation-learning, reinforcement-learning, robot-learning, learning-from-demonstration
學習能解釋專家示範行為的獎勵函數,再以強化學習或規劃訓練一個最佳化該獎勵的策略。
定義
逆強化學習(Inverse reinforcement learning,IRL)把一般的強化學習問題反過來。學習者不是拿到一個獎勵並被要求找出好的策略,而是拿到良好行為的示範,並被要求找出一個獎勵函數,使該行為在這個獎勵下是最佳的或接近最佳。接著用學到的獎勵來訓練策略,有時是在新的情境中或在不同的機器人上,其前提是:比起示範的動作,獎勵更能捕捉任務的意圖。Andrew Ng 與 Stuart Russell 於 2000 年對這個問題提出了早期的形式化論述。
這個問題是不適定的:許多獎勵函數都能解釋同樣的行為,包括處處為零的獎勵。各種方法以不同方式化解這種歧義。學徒學習(apprenticeship learning)讓學習者的期望特徵計數與專家的相符。最大熵 IRL 由 Brian Ziebart 及其同事於 2008 年提出,將專家建模為以與軌跡獎勵的指數成正比的機率選擇軌跡,這提供了定義良好的概似,並能容忍不完美的示範。對抗式方法訓練一個判別器來分辨專家資料與策略自身的資料,並把它的輸出當作訓練訊號;GAIL 這麼做時不回傳明確的獎勵,而 AIRL 則被設計成能還原出獎勵。
傳統的 IRL 在更新獎勵與在該獎勵下求解完整的強化學習問題之間交替,成本很高。因此實際的機器人系統常使用較簡單的獎勵學習方案,例如以與示範影格的相似度為基礎的獎勵,或在成功範例上訓練的分類器,同時保留從範例推導出訓練訊號這個核心概念。在控制理論中,從觀測到的最佳軌跡還原成本函數這個密切相關的問題,稱為逆最佳控制。
為何重要
為機器人任務手寫獎勵既慢又容易出錯,而策略會鑽獎勵與預期行為之間的任何漏洞。IRL 改從示範中取得獎勵,這種獎勵能延續到照抄示範動作會失敗的條件下,而且它把模仿學習與強化學習連結了起來。
主要應用
- 從示範為操作任務學習獎勵
- 為自駕車建立駕駛人與行人的行為模型
- 從專家路徑學習導航成本地圖
- 在人機互動中推斷人的偏好
- 為真實機器人上的強化學習提供訓練獎勵
實際應用
一個團隊希望機器手臂像人一樣擦桌子。他們錄製了一組遙控操作示範,接著與策略一起訓練一個獎勵模型:判別器學習為狀態轉換評分,判斷它像不像專家,而策略先在模擬中以強化學習訓練以最大化該分數,再到機器人上微調。為了防止策略鑽學到的獎勵中的漏洞,他們對判別器做正則化,加入一個代表任務完成的小型手寫項,並用肉眼檢視執行結果(rollout)。之後當他們把任務移到一張高度不同的桌子時,學到的獎勵被用來為調整後策略的執行結果評分。
常見誤解
- IRL 與行為複製相同 — 行為複製直接複製動作,而 IRL 先還原一個獎勵,再訓練策略去最佳化它
- 還原出的獎勵就是真正的獎勵 — 許多獎勵都能解釋相同的示範,IRL 回傳的是在其自身假設下擬合資料的一個
- IRL 需要完美的示範 — 早期的表述假設專家是最佳的,但最大熵方法與後來的方法能容忍有雜訊或次佳的示範
誰需要了解
- 機器人學習研究人員
- 設計獎勵函數的強化學習工程師
- 自動駕駛行為建模團隊
- 人機互動研究人員
相關技術
- 最大熵 IRL(Maximum Entropy IRL)
- 生成對抗模仿學習(Generative Adversarial Imitation Learning,GAIL)
- 對抗式逆強化學習(Adversarial Inverse Reinforcement Learning,AIRL)
- 逆最佳控制(Inverse Optimal Control)
- 學徒學習(Apprenticeship Learning)
相關術語
相關專案
- LeRobot: HuggingFace ML library for real-world robotics in PyTorch
- MuJoCo: DeepMind physics engine for robotics and ML research
- PyBullet: Python physics simulator for robotics and RL research with fast CPU-based simulation
- OpenPI: Physical Intelligence VLA foundation models for general robot control
- Microduck: Pollen Robotics' $399 walking duck robot: open-source software, closed hardware
- Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim
影片
- CS 285: Lecture 20, Inverse Reinforcement Learning, Part 1: RAIL
- Inverse Reinforcement Learning Explained: Edan Meyer