Open Source Robotics

精選高品質的開源機器人專案、工具與軟體,推動機器人社群向前發展。

Teacher-Student Training

  • 又稱: privileged learning, learning by cheating, teacher-student distillation, privileged teacher
  • 類別: Learning & autonomy › RL & simulation
  • 標籤: reinforcement-learning, sim-to-real, policy-distillation, robot-learning, locomotion

一種訓練架構,把擁有特權資訊(例如真實模擬器狀態)的教師策略,蒸餾成只使用真實機器人上可用感測器的學生策略。

定義

教師-學生訓練(Teacher-student training)是一種兩階段的機器人學習方法,主要在模擬中使用,把「學會該做什麼」與「學會如何從實際的感測器推斷出來」分開。在第一階段,會訓練一個教師策略,通常使用強化學習,同時提供它真實機器人不會擁有的特權資訊:精確的地形高度、摩擦係數、物體姿態、接觸狀態或完整的模擬器狀態。有了這些資訊,任務就容易學得多。

在第二階段,會訓練一個學生策略,只使用硬體上可取得的觀測(例如關節編碼器、IMU、相機影像或一小段過去觀測的歷史)來重現教師的行為。由於可以在任何狀態下查詢教師,學生是以監督式學習訓練,常採用 DAgger 式的資料蒐集:由學生驅動模擬,教師則在每個造訪到的狀態提供正確的動作。學生通常使用遞迴網路或歷史編碼器,以便從機器人一路以來的移動方式推斷地面摩擦等隱藏量。

這個方法與非對稱 actor-critic 方法(只有 critic 能看到特權狀態)以及一般的策略蒸餾密切相關。在自動駕駛領域,它由 Chen 等人於 2019 年以「learning by cheating」(藉由作弊學習)之名提出;在 Lee 等人於 2020 年以這種方式訓練四足機器人控制器並部署到崎嶇的自然地形之後,它在足式移動中被廣泛採用。

主要的限制在於,學生的表現最多只能達到其感測器所攜帶的資訊所允許的程度:如果教師依賴某些學生無法推斷的東西,學生就會不及教師。

為何重要

直接以強化學習從帶有雜訊、不完整的感測器資料中學習,既慢又不穩定。教師-學生訓練讓困難的控制問題先在完整資訊下解決,再把這項技能轉移到能在真實機器人上執行的策略,因此成為足式機器人與靈巧手之模擬到現實(Sim-to-Real)流程中的標準環節。

主要應用

  • 主要依靠本體感知在崎嶇地形上進行足式移動
  • 先以完整物體狀態訓練策略的靈巧手內操作
  • 從以狀態為基礎的專家蒸餾而得、以視覺為基礎的導航與駕駛策略
  • 關鍵物理參數無法在硬體上量測時的模擬到現實(Sim-to-Real)轉移

實際應用

在 Isaac Lab 等 GPU 模擬器中訓練四足機器人控制器的團隊,會先以 PPO 訓練教師,輸入本體感知以及特權的地形取樣與接觸資訊,並對摩擦與負載進行領域隨機化。教師可靠之後,他們會訓練一個只接收本體感知歷史的學生,有時再加上帶雜訊的高度圖或深度輸入,讓它匹配教師的動作或潛在特徵。訓練資料來自在大量平行環境中推演學生,並以教師的輸出為每個造訪到的狀態加上標籤。接著學生會部署到真實機器人上,工程師則在隱藏資訊最重要的情境中測試它,例如濕滑的地面或機器人看不見的障礙物。

常見誤解

  • 學生需要真實世界的訓練資料 — 兩個階段通常完全在模擬中訓練,學生以零樣本方式部署
  • 學生只是單純複製教師 — 它必須從自身的感測器歷史推斷隱藏的資訊,這才是困難之處
  • 教師-學生訓練取代了強化學習 — 教師通常以 RL 訓練;只有學生階段是監督式蒸餾

誰需要了解

  • 研究模擬到現實(Sim-to-Real)轉移的機器人學習研究人員
  • 足式移動控制工程師
  • 靈巧操作研究人員
  • 在硬體上部署策略的強化學習實務工作者

相關技術

  • Isaac Lab
  • DAgger
  • 非對稱 Actor-Critic(Asymmetric Actor-Critic)
  • 策略蒸餾(Policy Distillation)
  • 近端策略最佳化(Proximal Policy Optimization,PPO)
  • MuJoCo

相關術語

  • Reinforcement Learning
  • Sim2Real
  • Domain Randomization
  • Curriculum 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

本網站需要 JavaScript 才能正常運作。請啟用 JavaScript 以瀏覽我們的開源機器人專案。