模仿學習 是什麼?

Imitation Learning:模仿學習 的完整解釋

透過學習專家演示直接訓練智能體策略的監督學習方法。

核心概念

模仿學習(Imitation Learning, IL)是一種低成本的智能體訓練方式:直接向學習器展示「好」的行為應該長什麼樣,讓它學習複製。與強化學習的對比:

  • 強化學習:智能體與環境互動試錯,透過獎勵信號逐漸改進。需要大量試錯與獎勵工程。
  • 模仿學習:智能體從專家演示學習,起點更高,冷啟動更快,但依賴優質演示的可用性。

運作原理與主要方法

監督學習模仿(Behavioral Cloning)

最簡單的模仿學習形式,直接用監督學習擬合專家策略:

min_θ Σ_i ||π_θ(a|s_i) - π_expert(a|s_i)||²

其中(s_i, a_i)來自專家軌跡。訓練完後,模型應能在給定狀態時預測專家的動作。

優點:簡單直接,可用任何監督學習架構(神經網路、決策樹等)。缺點:易發生分布移位,專家在訓練中從未遇到的狀態會導致模型失敗。

DAgger(Dataset Aggregation)

DAgger是一個迭代演算法,解決行為克隆的分布移位問題:

  1. 用專家演示初始化訓練集D。
  2. 用D訓練策略π。
  3. 用當前π在環境中採集軌跡。
  4. 對採集的軌跡中每個狀態,詢問專家應採取的動作(或用專家模型預測)。
  5. 將(state, expert_action)加入D,重複步驟2-4。

DAgger的巧妙之處在於:訓練資料會逐漸包含策略π在部署中實際遇到的狀態,避免了分布移位。每次迭代,模型都在嘗試糾正自己在新狀態的錯誤,逐漸適應實際分布。

專家反饋與分層模仿

在某些場景中無法一次性獲得完整演示,而是在訓練過程中與專家互動:

  • 在線模仿:智能體執行策略,當失敗時專家介入修正或演示,學習器持續改進。
  • 分層模仿:先模仿高層任務規劃(由專家演示),再用強化學習學習低層控制。

實際應用

自駕車早期訓練

Tesla早期使用駕駛員演示數據訓練自動駕駛系統,通過行為克隆與DAgger快速獲得基礎駕駛能力,比從零開始的強化學習快得多。

機械臂操作

機器人學習從示教視頻(人類演示同一任務)提取動作序列,初始化為接近人類的操作風格,再用強化學習微調以適應特定機器人的動力學。

無人機導航

將專業無人機操作員的操作序列(搖桿輸入)記錄下來,訓練自主導航模型,結合GNSS與視覺使無人機能自主飛行。

對話與推薦系統

初期從人類對話演示與點擊日誌學習對話策略與推薦策略,快速獲得可用系統,再逐步調整。

常見誤區

誤區1:認為模仿學習無需任何獎勵設計就完全避免了強化學習的複雜性。實際上模仿學習依賴優質專家數據的可用性與標記成本,有時不亞於強化學習的難度。

誤區2:假定模仿的智能體會自動超越專家。實際上行為克隆通常會在策略多樣性與創新上受限:模型難以發現比演示更優的行為。

誤區3:忽視專家的異質性。多位專家可能用不同風格完成同一任務,直接混合他們的演示會產生不一致的訓練信號。

與相關技術的比較

  • 模仿學習 vs. 強化學習:模仿快速但受限於演示質量,RL從零啟動慢但無天花板。實務中常混合使用(先模仿冷啟動,再用RL微調)。
  • 模仿學習 vs. 逆向強化學習:模仿直接複製行為,IRL推斷獎勵再訓練,IRL泛化更好但計算複雜度高。
  • 模仿學習 vs. 遷移學習:遷移學習涉及不同任務間的知識遷移,模仿通常在相同任務內進行,可視為遷移學習的特殊情形。

常見問題