最新AI論文をキャッチアップ

【Octo】大規模ロボットデータセットで学習された汎用ロボット

【Octo】大規模ロボットデータセットで学習された汎用ロボット

Large language models

3つの要点
✔️ Octoは80万件のロボットトラジェクトリを使用した事前学習により、多様なタスクをゼロショットで解決可能
✔️ Octoの構成設計により、新しい入力やアクションスペースへのファインチューニングが容易で、幅広いロボット制御問題に適用可能   

✔️ 高性能を示す一方で、手首カメラ情報の処理や言語指示の性能向上など、データの多様化によるさらなる改善の余地を示唆

Octo: An Open-Source Generalist Robot Policy
written by Octo Model Team, Dibya Ghosh, Homer Walke, Karl Pertsch, Kevin Black, Oier Mees, Sudeep Dasari, Joey Hejna, Tobias Kreiman, Charles Xu, Jianlan Luo, You Liang Tan, Lawrence Yunliang Chen, Pannag Sanketi, Quan Vuong, Ted Xiao, Dorsa Sadigh, Chelsea Finn, Sergey Levine
(Submitted on 20 May 2024 (v1), last revised 26 May 2024 (this version, v2))
Comments: Project website: this https URL

Subjects: Robotics (cs.RO); Machine Learning (cs.LG)

code:
 

本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。  

概要

ロボティクスでは、通常、特定のロボットやタスクのために収集したデータセットを使ってポリシーを学習します。しかし、この方法では、各タスクごとに大量のデータ収集が必要であり、得られるポリシーは限定的な汎化性能しか得ることができません。他のロボットやタスクからの経験を活用することで、より広範な汎化性能と下流タスクでのパフォーマンスの向上が期待できますが、これはこれで他のロボットの形態やセンサー設定、タスク仕様、環境などを考慮する必要があるため、これを実現するような「汎用ロボットモデル」の構築は非常に難しい課題とされています。

こうした背景から、いくつかの研究では、ロボットの観測から行動への直接マッピングを行う「ロボット基盤モデル」が提案されています。これらのモデルは、新しいドメインやロボットへのゼロショットまたはフューショットでの汎化を可能にし、さまざまなタスク、環境、ロボティックシステム全体での視覚運動制御を実現することができます。例えば、GNMモデルは異なるロボットナビゲーションシナリオに汎化し、RoboCatモデルは異なるロボット形態での目標指向タスクを処理し、RT-Xモデルは言語指向の操作を行います。

これらのモデルは「汎用ロボットモデル」への重要な一歩を示していますが、まだ課題があります。この論文では、下流のロボティックアプリケーションにおける多様なインターフェースに対応する汎用ロボットのポリシーを事前学習するシステムを設計していまます。

このシステムの核心は、任意の入力トークン(観測やタスクから作成されたもの)を出力トークン(行動に変換されたもの)にマッピングするトランスフォーマーアーキテクチャです。これにより、様々なカメラ構成やロボットを追加の学習なしで制御でき、言語コマンドや目標画像を使ってガイドすることができます。さらに、新しいロボット設定に対しても、適切なアダプターを追加し、小規模なデータセットと計算コストでファインチューニングすることで対応可能です。

Open X-Embodimentデータセットからの80万件のロボットデモンストレーションを使用して事前学習されたトランスフォーマーベースのポリシー「Octo」を開発しています。Octoは、新しい観測とアクションスペースに効果的にファインチューニングできる初のGRPであり、学習パイプライン、モデルチェックポイント、データを含む完全なオープンソースのロボット制御ポリシーです。そして、Octoの個々のコンポーネント(トランスフォーマーバックボーン、拡散ヘッドなど)は、これまでの研究で議論されてきましたが、これらを強力な汎用ロボットのポリシーに統合した点が独自で新しい技術です。

この論文で提案しているシステムは、9つのロボットでの広範な実験を通じて、シングルおよびデュアルアームの操作タスクにおいて最新のマルチロボット制御性能を提供し、新しい観測とアクションスペースを持つ未見の設定に対する効果的な初期化として機能します。また、GRPの事前学習時の設計決定の影響を慎重に研究し、データ分布、モデルアーキテクチャ、ポリシーの定式化の選択が事前学習されたGRPの質にどのように影響するかを評価しています。評価結果は、スケールと柔軟性の有用性を示しています。

なお、この論文では、Octoモデルの学習、使用、再現、ファインチューニングに必要なすべてのリソースを公開しています。27Mおよび93Mパラメータの事前学習されたOctoモデルチェックポイントを提供し、複数のRGBカメラ入力、言語と目標画像のタスク指定を支援します。また、これらのモデルを新しいドメインでファインチューニングするためのスクリプト、事前学習パイプライン、最適化されたデータローダー、マルチモーダル入力用のトランスフォーマー実装、および学習進捗を監視するツールも提供されています。

Octoモデルの設計

この論文では、新しいロボットやタスクにファインチューニングで適応できるオープンソースの汎用ロボットのポリシー「Octoモデル」を開発しています。論文では、設計の重要な決定事項、学習目標、学習データセット、およびインフラについても紹介しています。

Octoモデルは柔軟性とスケーラビリティに重点を置いて設計されています。さまざまなロボット、センサー構成、アクションを支援し、大量のデータで学習可能な汎用でスケーラブルなモデルです。特に、自然言語の指示、目標画像、観測履歴、マルチモーダルなアクション予測を支援するディフュージョンデコーディングを採用しています。Octoは、新しいアクションスペースやカメラとセンサーの異なる組み合わせを持つロボットにも効率的に適応できます。この設計により、Octoは多様なロボティクスアプリケーションや研究プロジェクトで利用できる柔軟で汎用的なロボットのポリシーを実現しています。

Octoの核心はトランスフォーマーベースのポリシーにあり、3つの主要な部分で構成されています。1つ目は、入力トークナイザーで、言語指示、目標、観測シーケンスをトークンに変換します(下図、左)。2つ目は、トランスフォーマーバックボーンで、トークンを処理し、埋め込みを生成します(下図、上)。3つ目は、リードアウトヘッドで、希望する出力(アクション)を生成します

タスクの定義(例:言語指示や目標画像)と観測(例:手首や第三者視点のカメラストリーム)を、モダリティ固有のトークナイザーを使用して共通のトークン形式に変換します。言語入力はトークン化され、事前学習されたトランスフォーマーを通して言語埋め込みトークンのシーケンスが生成されます。画像観測と目標は浅い畳み込みスタックを通過し、フラット化されたパッチのシーケンスに分割されます。

統一されたトークンシーケンスはトランスフォーマーによって処理されます。これは観測とアクションのシーケンスに基づいたトランスフォーマーベースのポリシーを学習する過去の研究と類似しています。Octoトランスフォーマーのアテンションパターンはブロックごとにマスクされており、観測トークンは同じタイムステップまたはそれ以前のトークンおよびタスクトークンにのみアテンションします。このモジュール設計により、ファインチューニング中に観測やタスクを追加または削除することができます。

リードアウトトークンは、BERTの[CLS]トークンに似ており、これまでの観測シーケンスのコンパクトなベクトル埋め込みとして機能します。リードアウトトークンの埋め込みにディフュージョンプロセスを実装する軽量な「アクションヘッド」が適用されます。このアクションヘッドは、いくつかの連続するアクションの「チャンク」を予測します。

この設計により、下流のファインチューニング中に新しいタスクや観測入力、アクション出力ヘッドをモデルに柔軟に追加することができます。新しいタスク、観測、または損失関数を追加する場合、トランスフォーマーの事前学習された重みを保持し、新しい位置埋め込み、新しい軽量エンコーダ、または新しいヘッドのパラメータのみを追加することで対応できます。

この柔軟性は、Octoを汎用モデルにするために重要な要素です。事前学習中にすべてのロボットセンサーとアクション構成をカバーすることはできないため、ファインチューニング中にOctoの入力と出力を適応させることができることは、ロボティクスコミュニティにとって多用途なツールとなります。標準的なトランスフォーマーバックボーンや視覚エンコーダとMLP出力ヘッドを融合させた過去のモデル設計では、モデルが期待する入力のタイプと順序が固定されてしまいますが、Octoの観測やタスクの切り替えにはモデルの大部分を再初期化する必要がありません。

こののように、Octoモデルは柔軟かつ汎用的なロボットのポリシーとして、多様なロボティクスアプリケーションにおいてその能力を発揮することができます。

Octoモデルの学習には、Open XEmbodiment Datasetからの25種類のデータセットを使用しています。このデータセットは多様なロボット学習データを集めたものです。これには、さまざまなロボットの構造やシーンからの多様なタスクのデモンストレーションデータが含まれています。これらのデータセットは、ロボットの種類だけでなく、センサーの種類やラベル(例えば、手首カメラの有無や言語指示の有無)においても異なります。

学習データセットを作成する際には、まず画像ストリームが含まれないデータセットやデルタエンドエフェクタ制御を使用していないデータセットを除外しています。また、繰り返しが多すぎるデータセットや解像度が低いデータセット、過度に特定のタスクに偏ったデータセットも除外しています。残ったデータセットを「より多様な」データセットと「あまり多様でない」データセットに分類し、学習時には「より多様な」データセットの重みを2倍にしています。また、繰り返しが多いデータセットの重みを下げ、混合物が偏らないようにしています。最後に、不足しているカメラチャンネルをゼロパディングし、グリッパーのアクションスペースを統一しています。なお、この方法で得られた学習データセットについて、著者らは、非常に効果的だったものの、今後は品質についてより詳細な分析が必要と考えています。

この論文では、ViT-Sサイズのトランスフォーマーバックボーンを持つOcto-Smallと、ViT-Bサイズのトランスフォーマーバックボーンを持つOcto-Baseの2つのバリアントを学習しています。

実験

ここでは、Octoモデルの性能を実験的に分析し、汎用ロボットの基盤モデルとしての能力を評価します。評価のポイントは以下の通りです。

  • Octoは複数のロボット形態を制御し、言語および目標タスクをそのまま解決できるか?
  • Octoの重みは、新しいタスクやロボットへのデータ効率の良いファインチューニングに適しているか? また、一からの学習や一般的に使用される事前学習済みのモデルよりも優れているか?
  • Octoを汎用ロボットポリシーとして構築する上で、どの設計決定が最も重要か?

Octoの能力は、下図のように、4つの機関での9つのロボット学習セットアップを通じて評価されています。事前学習データと一致するロボットセットアップを使用し、言語および目標画像タスクのゼロショット制御能力をテストします。これらのセットアップでは、すべてのロボットがデルタエンドエフェクタ制御アクションで制御され、観測空間はRGB画像です。

さらに、Octoは新しい環境やタスクに対するデータ効率の良いファインチューニング能力も評価されます。これには、新しい観測(例:「Berkeley Insertion」での力-トルク入力)、新しいアクションスペース(例:「Berkeley Pick-Up」でのジョイント位置制御)、新しいロボット形態(例:「Berkeley Coke」および「Berkeley Bimanual」)が含まれています。各ファインチューニングセットアップでは約100のインドメインデモンストレーションを使用し、NVIDIA A5000 GPUで5時間未満でファインチューニングを行っています。評価タスクは、Octoが多様な物体と対話し(例:「WidowX BridgeV2」)、長期タスクを解決し(例:「Stanford Coffee」)、精密な操作を行う能力をテストします(例:「Berkeley Insertion」)。

Octoの複数のロボットをゼロショットで制御する能力を、公開されている最良の汎用ロボットポリシーであるRT-1-Xと比較しています。RT-1-XはOctoと同様に、Open X-Embodimentロボットデータセットで事前学習されており、複数のロボットをゼロショットで制御することを目指しています。さらに、55億パラメータの視覚言語モデルであるRT-2-XとOctoのゼロショット能力を比較しています。RT-2-Xは、Open X-Embodimentデータセットでファインチューニングされており、ロボットアクションを生成しています。RT-1-XおよびRT-2-Xモデルは、Octoの80万エピソードに対し、より制限された35万エピソードのサブセットで学習されています。さらに、データ効率の良いファインチューニングのためのポリシー初期化としてのOctoの性能を、ターゲットドメインデモンストレーションでの一からの学習と事前学習済みの視覚表現の使用という2つの一般的なアプローチと比較しています。

ファインチューニングにおいて、大規模なトランスフォーマーアーキテクチャを一から学習すると、小規模なデータセットで早期に過適合することがわかりました。代わりに、多くの先行研究で採用されている標準的なポリシーアーキテクチャを使用することで、一からの学習でより良い結果が得られています。このアーキテクチャは、FiLM言語条件付けを備えたResNet視覚エンコーダと、拡散目標で学習された小さなトランスフォーマーアクションデコーダを組み合わせたもので、RT-1と同様に28Mのパラメータを持ちます。このアーキテクチャを一からのベースライン(「ResNet+Transformer Scratch」)として採用しています。さらに、Majumdarらの手順に従い、事前学習された視覚表現とも比較しています。ViT-B視覚エンコーダをVC-1の重みに初期化し、エゴセントリックビデオとImageNetで事前学習された最先端の視覚表現を使用し、MLPアクションデコーダと組み合わせました。モデル全体をMSE損失を使用してエキスパートアクションを予測するように学習しています。

下図では、Octo、RT-1-X、およびRT-2-Xのゼロショット操作能力を比較しています。この評価は、ピックアンドプレース、布でテーブルを拭く、引き出しの開閉といった、事前に学習されたデータセットから選んだいくつかのタスクで行いました。各ロボットには、対応するOXEデータセットから2つの言語タスクを選び、異なる初期条件下で各タスクを10回試行しています。選ばれたタスクは、事前学習データの「インディストリビューション」ですが、新しいオブジェクトの位置、照明条件、背景、および気を散らすオブジェクトへの一般化が求められます。

全ての方法が事前学習環境で合理的にタスクを実行する中、OctoはRT-1-X(35Mパラメータ)よりも平均して29%高い成功率を示しています。WidowXおよびRT-1ロボットの評価では、RT-2-X(55億パラメータ)とも比較し、Octoが同等のパフォーマンスを発揮することを確認しました。さらに、RT-1-XおよびRT-2-Xは言語指示にのみ対応しているのに対し、Octoは目標画像にも対応しています。目標画像を用いたWidowXタスクの評価では、言語指示による評価よりも25%高い成功率を達成しています。これは、目標画像がタスク達成に関する情報をより多く提供するためと考えられます。BridgeV2ドメインでは、データセット内のセットアップおよび新しい環境、シーン、スキルに対するゼロショット能力の詳細な分析を行っています。その結果、Octoモデルは新しいオブジェクトに対して高い成功率を示す一方で、新しいシーンや新しい動作(例:フリップや精密な挿入)ではパフォーマンスが若干低下することが分かりました。

新しいドメインにおけるデータ効率の良いファインチューニングの結果は下表に示されています。Octoをファインチューニングすると、一から学習する場合や事前学習されたVC-1の重みを使用する場合よりも、より優れたポリシーが得られることが分かりました。6つの評価セットアップ全体で平均すると、Octoは次に良いベースラインを52%上回る結果を示しています。Octoはデフォルトの設定として優れていることが示されています。

また、Octoは新しい観測(例:「Berkeley Insertion」での力-トルク入力)、新しいアクションスペース(例:「Berkeley Pick-Up」でのジョイント位置制御)、新しいロボット形態(例:「Berkeley Coke」および「Berkeley Bimanual」)に対応できることも示されています。これにより、Octoは単一のカメラ入力とエンドエフェクタ位置制御を超えた、広範なシングルおよびデュアルアームのロボティック操作問題に適用可能な柔軟性を持つことが確認されています。 

まとめ

Octoは、これまでで最大のロボット操作のデータセット(80万件のロボットトラジェクトリ)をもとに事前学習された大規模なトランスフォーマーベースのポリシーです。この論文では、Octoが多様なタスクをゼロショットで解決できることを実証し、Octoの構成的な設計が新しい入力やアクションスペースへのファインチューニングを可能にし、広範なロボット制御問題に対する柔軟な初期設定となることを示しています。さらに、学習およびファインチューニングのコードと、大規模なロボットデータセットでの学習を支援にするツールも公開しています。

Octoはゼロショットおよびファインチューニングの評価で高いパフォーマンスを示していますが、現行モデルにはいくつかの欠点があることも判明しています。これらの欠点は主に学習データの特性に起因しています。まず、現行のOctoモデルは手首カメラ情報の処理に苦戦しています。しばしば、第三者視点のカメラのみを使用した方が、手首カメラと組み合わせるよりもファインチューニングの結果が良好でした。さらに、言語指示に基づくポリシーの性能と目標に基づくポリシーの性能に大きな差があることがわかりました。これらのケースでは、学習データにおけるそれぞれのモダリティの不足が原因と考えられます。データのうち手首カメラ情報を含むのは27%、言語注釈を含むのは56%に過ぎません。

Octoの学習に使用するデータの拡充は、改善の自然な方向性です。Open X-Embodimentデータセットは最適なロボットデモンストレーションで構成されているため、現行モデルは模倣学習を行っています。将来的な研究では、サブオプティマルなデータやオンラインでのインタラクションデータから学習し、異なる目標を設定することも検討すべきです。さらに、Octoは現在、シングルおよびデュアルアームのマニピュレーターのみで学習および評価されていますが、ナビゲーションやモバイル操作を行うより多くのロボットセットへの拡張は大きな可能性を秘めています。

Octoは、多様なロボットセットアップでそのまま動作する汎用ロボットのポリシーの構築に向けた一歩を示していますが、モデルの改善にはまだ多くの課題が残っています。例えば、言語条件付けの向上、手首カメラのサポート強化、最適デモンストレーション以外のデータの取り込みなどです。Octoが研究者や実務者にとって、大規模なロボットデータセットにアクセスし、事前学習されたロボティクスモデルを活用して新しいタスクを効率的に学習し、今後、これが広範な汎用性を持つためのシンプルな出発点となることが期待されます。

  • メルマガ登録(ver
  • ライター
  • エンジニア_大募集!!
Takumu avatar
インターネット広告企業(DSP、DMP etc)や機械学習スタートアップで、プロジェクトマネージャー/プロダクトマネージャー、リサーチャーとして働き、現在はIT企業で新規事業のプロダクトマネージャーをしています。データや機械学習を活用したサービス企画や、機械学習・数学関連のセミナー講師なども行っています。

記事の内容等について改善箇所などございましたら、
お問い合わせフォームよりAI-SCHOLAR編集部の方にご連絡を頂けますと幸いです。
どうぞよろしくお願いします。

お問い合わせする