1.VLMaps:ロボットナビゲーションのための視覚-言語マップ(1/2)まとめ
・人が物理的な世界でロボットより優れたナビゲーションが出来るのは周辺環境を認知する地図を構築する能力を持つため
・視覚と言語の共同モデルを学習する事が増えてきたがロボットが使用できる物理世界の空間表現を結びつける手法はまだ
・VLMapsはロボットが自然言語記述を用いて地図内の視覚的目印を索引化する事で自然言語を使った運行を可能にする手法
2.VLMapsとは?
以下、ai.googleblog.comより「Visual language maps for robot navigation」の意訳です。
言葉で読むと難しいですが、先に動画を見るとイメージが沸きますね。ロボットが認識している3D地図中の物体に言葉を紐づける事で、言葉を使った指示や操作が可能になると言う事です。近い将来、「アレ取ってきて」と言うだけで、言語モデルが「アレ」の位置をロボットに地図中の物体に紐づけて示して取ってこれるようになるのでしょうね。
アイキャッチ画像はロボットナビゲーションのイメージをchatGPT先生に伝えて作って貰ったプロンプトを私が修正してカスタムStable Diffusion先生に作って貰ったイラスト
人は物理的な世界において優れたナビゲーターですが、その一因は空間記憶の基礎となる認知マップを構築する能力にあります。
この能力は、例えばリビングルームの本棚にある本など、様々なレベルで目印を特定することから、A地点からB地点へのナビゲーションが可能なレイアウトかどうかを判断することなどです。
ナビゲーション能力に優れたロボットを作るには、
(a)視覚と自然言語(目印の関連付けや指示に従うこと)
(b)空間推論(環境を表現する地図と物体の真の空間分布を結びつけること)
を相互連携させた理解が必要です。
最近、インターネット規模のデータで視覚と言語の共同モデルを学習することが多くなりましたが、ロボットが使用できる物理世界の空間表現とそれらを結びつける最適な方法を見つけ出すことは、未解決の研究課題として残っています。
これを探るため、フライブルク大学およびニュルンベルク大学の研究者と共同で、Visual Language Maps(VLMaps)を開発しました。これは「事前に訓練した視覚-言語embeddings」を環境の3D再構成に直接融合させる地図表現です。
VLMaps は、ICRA 2023で発表される予定のシンプルなアプローチでロボットが以下の行動を取る事を可能にします。
(1)自然言語記述を用いて地図内の視覚的目印を索引化し、
(2)「ソファとテレビの間に入る」「椅子の右側に3メートル移動する」といった空間目標へのナビゲーションのためにコードをポリシーとして採用し、
(3)語彙に制限のない障害物地図を生成します。
これにより異なる形態(例えば移動式マニピュレータ vs ドローン)を持つ複数のロボットが、経路計画に同一のVLMapを使用できるようになります。
VLMapは、ラベル付きデータの追加やモデルの微調整なしにすぐに使用でき、HabitatとMatterport3Dにおける困難なオブジェクトゴールと空間ゴールのナビゲーションタスクにおいて、他のゼロショット手法を17%以上上回りました。また、実験に使用したコードと、インタラクティブなシミュレーションロボットのデモを公開します。
VLMapは、事前に訓練した視覚-言語embeddingsを環境の3D再構成に融合させることによって構築されます。実行時に、ロボットはVLMapを照会して、自然言語による説明から視覚的な目印を探したり、経路計画のために語彙に制限のないの障害物マップを作成したりすることができます。
古典的な3D地図に現代的なマルチモーダルなひねりを加える
VLMapsは、古典的な3D再構成の幾何学的構造と、インターネット規模のデータで事前に訓練された現代の視覚-言語モデルの表現力を組み合わせたものです。
ロボットが移動する際、VLMapsは事前に訓練された視覚言語モデルを用いて、RGBカメラの視点から画素単位の高密度なembeddingsを計算し、物理世界の既存の3D再構成と協同する大きな地図サイズの3Dテンソルに統合します。
この特徴表現により、システムは、自然言語による説明(例えば「リビングルームの棚の上にある本」)が与えられた場合、そのテキストembeddingsをテンソル内のすべての位置と比較し、最も近い一致を見つけることでランドマークの位置を特定することができます。
これらの目標位置の問い合わせは、言語条件付きナビゲーションの目標座標として直接使用したり、Code as PoliciesのプリミティブAPI関数呼び出しとして空間目標を処理したり(例えば、コードライティングモデルは「in between」を2箇所間の演算として解釈)、長期目線が必要な命令のための複数のナビゲーション目標の順番として使用したりすることができます。
3.VLMaps:ロボットナビゲーションのための視覚-言語マップ(1/2)関連リンク
1)ai.googleblog.com
Visual language maps for robot navigation
2)arxiv.org
Visual Language Maps for Robot Navigation
3)vlmaps.github.io
Visual Language Maps for Robot Navigation