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)は、学習者の期待特徴カウントを熟練者のものに一致させる。2008 年に Brian Ziebart らが導入した最大エントロピー IRL は、熟練者が軌道を、その報酬の指数に比例する確率で選ぶものとしてモデル化する。これにより明確に定義された尤度が得られ、不完全なデモンストレーションも許容される。敵対的手法は、熟練者のデータとポリシー自身のデータを見分ける識別器を学習し、その出力を学習信号として使う。GAIL は明示的な報酬を返さずにこれを行い、AIRL は報酬を復元するように設計されている。
古典的な IRL は、報酬の更新と、その報酬のもとでの完全な強化学習問題の求解を交互に行うため、コストが高い。そのため実際のロボットシステムでは、デモンストレーションのフレームとの類似度に基づく報酬や、成功例で学習した分類器といった、より単純な報酬学習の方式がよく使われるが、例から学習信号を導くという中心的な考え方は保たれている。制御理論では、観測された最適軌道からコスト関数を復元するという密接に関連した問題は逆最適制御と呼ばれる。
重要な理由
ロボットのタスクの報酬を手で書くのは時間がかかり誤りやすく、ポリシーは報酬と意図した振る舞いの間のあらゆる隙を突く。IRL は代わりにデモンストレーションから報酬を得る。その報酬は、実演された行動をそのまま真似ると失敗するような条件にも引き継げることがあり、また IRL は模倣学習と強化学習を結びつける。
主な用途
- デモンストレーションからのマニピュレーションタスクの報酬の学習
- 自動運転車のための運転者と歩行者の振る舞いのモデル化
- 熟練者の経路からのナビゲーション用コストマップの学習
- 人間とロボットのインタラクションにおける人の選好の推定
- 実機ロボットでの強化学習のための学習報酬の提供
実際の使われ方
あるチームが、ロボットアームに人と同じようにテーブルを拭かせたいと考える。チームは遠隔操作によるデモンストレーションを一通り記録し、ポリシーと並行して報酬モデルを学習する。識別器は状態遷移が熟練者らしいかどうかを評価するよう学習し、ポリシーはまずシミュレーションでそのスコアを最大化するよう強化学習で学習され、その後ロボット上でファインチューニングされる。学習された報酬の欠陥をポリシーが突くのを防ぐため、識別器を正則化し、タスク完了のための小さな手書きの項を加え、ロールアウトを目で確認する。後に高さの異なるテーブルにタスクを移したときには、学習された報酬を使って、適応させたポリシーのロールアウトを評価する。
よくある誤解
- 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