Diffusion Policyとは
視覚観測を条件として、ロボットの行動系列を条件付き拡散モデルで生成する模倣学習の方策(ポリシー)
ひとことで言うと
カメラ映像などを手がかりに、ロボットが次にとる一連の動きをノイズ除去の繰り返しで生成する制御方法。
概要
Diffusion Policyは、ロボットの行動(action)系列そのものを拡散モデルの生成対象とみなし、視覚観測やロボットの状態を条件として条件付き拡散過程(条件付きDDPM)により行動系列を生成する模倣学習(imitation learning)の手法。単一の行動を1つだけ回帰的に予測する従来の明示的方策(explicit policy)とは異なり、複数の妥当な行動パターンが存在する多峰性(multimodal)なデモンストレーションデータを、生成モデルとして自然に表現できる点が特徴。推論時には、現在の観測を条件にランダムノイズから出発し、反復的なノイズ除去によって数ステップ先までの行動チャンク(action chunk)を生成する。生成したチャンクのうち先頭の数ステップだけを実行し、新しい観測を得て再度生成し直す receding horizon 方式をとることで、長期的な誤差の蓄積を抑えつつ滑らかな動作を実現する。物体操作(manipulation)タスクを中心に、模倣学習ベースのロボット方策として広く採用されており、Hugging Faceの[[lerobot]]でも実装済みポリシーの1つとして提供されている。
背景
行動クローニング(behavior cloning)などの明示的方策は、観測から行動への写像を回帰問題として学習する。そのため、同じ観測に対して複数の妥当な行動(例: 障害物を左右どちらから避けてもよい)が存在する多峰性のデモンストレーションデータでは、複数モードの平均をとってしまい、どちらの行動としても不自然な出力になりやすいという課題があった。また単一ステップの行動だけを予測する方策は、実行時の誤差が時間とともに蓄積しやすい。Diffusion Policyは、行動系列の生成過程そのものを拡散モデルで表現し、この多峰性を扱えるようにした。さらに複数ステップ先までをまとめて予測する行動チャンキングと receding horizon 制御を組み合わせ、誤差の蓄積を抑える方向で設計された。
歴史
2023年、Cheng Chiらによる論文「Diffusion Policy: Visuomotor Policy Learning via Action Diffusion」で提案された。著者らはColumbia University、Toyota Research Institute、MITに所属し、RSS 2023で発表された。
アーキテクチャ
条件付き拡散モデル(条件付きDDPM)を中核とし、ノイズ除去ネットワークはロボットの観測(カメラ画像やロボットの状態)を条件として受け取りながら、ノイズが加えられた行動系列からノイズそのものを予測する。ノイズ除去ネットワークの実装としては、行動系列に対する1次元時系列畳み込みを用いたCNNベース(U-Net構造)と、Transformerベースの構成が提案されている。推論時はランダムノイズから出発し、観測を条件として複数ステップの反復的なノイズ除去により、将来の行動チャンクを生成する。
ワークフロー
1. デモンストレーション(観測と行動の系列)を人間の遠隔操作などで収集する。 2. 観測を条件として、行動チャンクに加えられたノイズを予測するようノイズ除去ネットワークを学習する。 3. 実行時は、現在の観測を条件に、ランダムノイズから反復的なノイズ除去を行い行動チャンクを生成する。 4. 生成した行動チャンクのうち先頭の数ステップだけを実際に実行し、新しい観測を取得して手順3に戻る(receding horizon)。
利点
欠点
- 行動生成に反復的なノイズ除去を要するため、単一の順伝播で行動を出力する明示的方策より推論に時間がかかる
- 他の模倣学習手法と同様、十分な状態空間をカバーするデモンストレーションデータが必要になる
- 単純な回帰ベースの行動クローニングと比べて学習の計算コストが高い
比較
- 拡散モデル — 拡散モデルが主に画像等のデータ生成に用いられるのに対し、Diffusion Policyはロボットの行動系列を生成対象とみなし同様の条件付き拡散過程を応用する
- LeRobot — LeRobotは、Diffusion Policyを含む複数の模倣学習・強化学習手法を共通インターフェースで扱えるライブラリであり、Diffusion PolicyはLeRobotに実装済みのポリシーの1つ
- HG-DAgger — HG-DAggerが人間の介入区間のデータを反復収集し分布シフトに対処する対話的模倣学習アルゴリズムであるのに対し、Diffusion Policyは拡散モデルにより多峰性の行動分布を直接生成する模倣学習手法という違いがある
関連用語
参考文献
- Research PaperDiffusion Policy: Visuomotor Policy Learning via Action Diffusion
- GitHubreal-stanford/diffusion_policy
- Official WebsiteDiffusion Policy Project Page