ロボット学習の普及政策~その正体と使い方~

Chiらによって導入された拡散政策。 2023 年、ロボット制御にジェネレーティブ モデリング革命をもたらしました。 アクションの生成をノイズ除去問題として扱うことで、より単純な動作クローン アルゴリズムではできない方法で、操作動作のマルチモーダルで高次元の性質を処理します。 これを独自のロボットプロジェクトに適用するために知っておく必要があることは次のとおりです。

拡散政策とは何ですか?

拡散ポリシーは、ノイズ除去拡散確率モデル (DDPM) に基づくロボット制御ポリシーのクラスです。これは、安定拡散などのテキストから画像へのモデルの基礎となる数学的フレームワークと同じです。 ロボットのコンテキストでは、生成される「画像」はロボットの一連の動作 (軌跡) です。 このモデルは、アクション空間の純粋なガウス ノイズから開始して、現在の視覚的観察とロボットの状態を条件として反復的にノイズを除去し、10 ~ 100 のノイズ除去ステップの後に一貫した高品質のアクション シーケンスを生成します。

重要な洞察は、拡散モデルが単一の最適なアクションを予測するのではなく、アクション全体の完全な確率分布を学習するということです。 ロボット工学にとって、これは重要です。 人間による同じタスクのデモンストレーションは、当然ながら多様です。人は、微妙な文脈上の手がかりに応じて、カップを左側から掴むことも右側から掴むこともできます。 この分布を単一の予測に折りたたむ必要があるモデルは、1 つのモードにコミットして残りの半分の時間は失敗するか、モードを平均して常に失敗する奇妙な中間の軌道を生成することになります。 Diffusion Policy は、分布を明示的にモデル化し、推論時にそこからサンプリングすることでこれを回避します。

拡散ポリシーが標準的な行動クローニングよりも優れている理由

標準的な動作クローニング (BC) は、教師あり回帰問題としてポリシーをトレーニングします。つまり、与えられた観察からアクションを予測します。 これは、観察からアクションへのマッピングが決定的かつ単峰性である場合に機能します。 実際には、操作タスクがそうなることはほとんどありません。 テーブルからブロックを持ち上げるなどの「単純な」タスクでも、複数の有効なアプローチ角度、掴みポーズ、掴み前の構成が必要になります。 Naive BC は、テストの分布がトレーニングとわずかに異なる場合に、決定点で躊躇したり、妥協したモーションの選択をしたり、完全に失敗したりするポリシーを生成します。

拡散ポリシーは、ベンチマーク操作スイートで一貫して BC ベースラインを上回ります。 元の論文では、Robomimic ベンチマークの 12 タスク中 11 タスクで最先端の結果を達成しており、アクションのマルチモダリティが高いタスクでは特に大きなマージンが得られました。 実際のロボットの評価では、拡散ポリシーはより堅牢な回復動作を示しました。ロボットがわずかに間違った中間状態に達した場合でも、決定論的なパスに従うのではなく、幅広い分布からサンプリングしているため、ポリシーは回復できました。

ACT (トランスフォーマーによるアクション チャンク化) と比較すると、拡散ポリシーは一般に、強力なマルチモーダリティを持つタスクではパフォーマンスが向上しますが、ACT のチャンク予測が効果を発揮する長期的な依存関係を持つタスクではパフォーマンスが低下します。 実際には、どちらのアルゴリズムも十分に競争力があるため、ポリシー アーキテクチャの選択よりもデータセットの品質と量の方が重要です。 どれを使用すればよいかわからない場合は、反復速度を求めるために最初に ACT を試し、モード平均化のエラーが発生した場合は Diffusion Policy を試してください。

拡散政策のデータ要件

拡散ポリシーは ACT よりも多くのデータから恩恵を受けます。これは主に、ノイズ除去ネットワークの方がより多くのパラメーターとより豊富なモデリング目標を備えているためです。 実際の最小値は、制御された条件下で 1 つのタスクに対して 100 ~ 200 回のデモン​​ストレーションです。 堅牢な展開パフォーマンス (オブジェクトの位置の変動、照明の変化、時折のセンサー ノイズの処理) を達成するには、タスクごとに 300 ~ 500 のデモンストレーションを予算に入れます。 ACT とは異なり、Diffusion Policy は、非常に大きなデータセット サイズまで追加データによって改善を続ける傾向があるため、大規模なデータ収集作業に投資する予定がある場合には、より良い選択肢となります。

データの多様性は量と同じくらい重要です。 デモンストレーションは、展開時に予想されるオブジェクトの位置、方向、シーン構成の範囲にわたる必要があります。 オブジェクトが常にまったく同じ場所にある密なデモンストレーションのクラスターでは、オブジェクトが数センチメートル移動した瞬間にポリシーが失敗します。 SVRCの マネージドデータ収集サービス 構造化されたバリエーション プロトコル (オブジェクトの位置、照明条件、オペレーターのグリップ スタイルを体系的にランダム化) に従って、一般化可能なポリシーを生成するデータセットを確保します。

観測表現も重要です。 エンドツーエンドでトレーニングされた ResNet 画像エンコーダーを使用した拡散ポリシーは、通常、狭いタスク分布でフリーズされた事前トレーニングされたエンコーダーを使用したポリシーよりも優れたパフォーマンスを発揮しますが、事前トレーニングされたエンコーダー (R3M、MVP、DINO) は、テスト条件がトレーニングと異なる場合に優れた汎化を生成します。 ほとんどの実用的なプロジェクトでは、データセットの価値を最大化するために事前トレーニングされたエンコーダーから開始し、500 以上のデモンストレーションと安定した環境がある場合にのみエンドツーエンドのトレーニングに切り替えます。

トレーニングのセットアップとコンピューティングの要件

Diffusion Policy のリファレンス実装 (Columbia Robotics Lab GitHub で入手可能) は、UNet バックボーン (高速推論、低容量) または Transformer バックボーン (低速推論、高容量) のいずれかを使用してトレーニングします。 ほとんどのシングルタスク プロジェクトでは、UNet バリアントが適切な開始点となります。 単一の RTX 3090 または 4090 でのトレーニングには、観測解像度とアクション期間の長さに応じて、200 エピソードのデータセットで 4 ~ 12 時間かかります。

正しく設定するための主要なハイパーパラメータ: アクション ホライズン (予測する将来のステップ数 - 通常、テーブルトップ タスクの場合 16 ~ 32)、拡散ステップ数 (DDPM の場合は 100、品質損失を最小限に抑えた DDIM の場合は 10 ~ 25)、観察ウィンドウ (含める過去のフレームの数 - 通常 2)。 3 つすべてを一度に変更しないでください。 1 つを調整するときに他のものを修正します。 ポリシーのパフォーマンスを向上させるための最も影響力のある変更は、通常、アーキテクチャのハイパーパラメーターの調整ではなく、データセットのサイズを増やすことです。

実際のロボットでの推論の場合、100 ステップの DDPM は通常、高周波数制御には遅すぎます。 10 ~ 25 ステップの DDIM スケジューラーを使用します。これは、RTX 3090 上で約 20 Hz で実行されます。これは、バッファーを使用した 10 Hz 制御に適しています。 あるいは、整合性ポリシーの蒸留により、より単純なタスクのパフォーマンス低下を最小限に抑えて 1 ~ 3 ステップの推論を実現できます。

SVRC データ サービスを拡散ポリシーに使用する

SVRCの データサービスパイプライン Diffusion Policy リファレンス実装および HuggingFace LeRobot フレームワークで直接使用するためにフォーマットされたデータセットを生成します。 エピソードは、同期された画像ストリーム、固有受容状態、および 50Hz のアクションを含む ZARR アーカイブとして保存されます。 品質フィルタリングは、タスクが正常に完了しなかったエピソード、ロボットが環境と衝突したエピソード、またはオペレータの躊躇により代表的ではない軌道が生成されたエピソードを除去します。

当社の回収サービスでは、 SVRC遠隔操作プラットフォーム デュアルアーム対応のリーダー/フォロワー制御、手首に取り付けられたオーバーヘッドカメラ、およびオプションの力/トルクログ機能を備えています。 マルチタスク拡散ポリシーのトレーニングでは、単一のポリシーがタスク ID または言語に条件付けされた複数のタスクを学習します。同じキャンペーン内のタスクのバリアント全体を収集し、統合されたデータセットを提供できます。 OpenArm または ALOHA ハードウェア プラットフォームを使用するチームは、ネイティブ ハードウェア サポートを利用できます。 ご要望に応じてカスタム ハードウェアの統合も可能です。 私たちのチームに連絡してください データ要件とスケジュールについて話し合います。

関連している: ロボットの模倣学習 · VLA モデルの説明 · ロボットトレーニングデータとは何ですか? · データサービス · ベンチマーク