Grounding DINO
Liu 2023 · 論文
一行要約 — 自由形式のテキストプロンプトで記述された任意の物体を、緊密な言語-視覚Transformer融合によって見つけ出すオープンセット物体検出器 — 広く使われているGrounded SAMパイプラインの検出部分にあたる。
問題
標準的な検出器(YOLO、DETR)はクローズドセットである:学習された固定のカテゴリ(例えばCOCOの80クラス)のみを検出する。オープンセット検出の鍵は言語を導入することにあり、これによりクローズドセットの検出器が未知の概念に汎化できるようになる — 固定ラベル集合ではなく意味空間で分類される、言語を意識した領域埋め込みを学習することである。従来のオープンセット検出器はモダリティを部分的にしか融合していなかった:GLIPはネック部分(フェーズA)のみで融合し、OV-DETRはデコーダ入力にのみ言語を注入する(フェーズB)。本論文の主張は、融合は検出器の3つすべてのフェーズ — ネック、クエリ初期化、ヘッド — で行われるべきであり、より緊密な融合がより良いオープンセット汎化をもたらすということである。
手法とアーキテクチャ
DINO(DETRのバリアント)上に構築された、デュアルエンコーダ・シングルデコーダのアーキテクチャである:画像バックボーン(Swin-T/Swin-L)がマルチスケールの視覚特徴を抽出し、テキストバックボーン(BERT-base)がプロンプト(連結されたすべてのカテゴリ名、あるいは指示表現)からトークン特徴を抽出する。以下の3つの融合モジュールが続く。
- 特徴拡張器(ネック、6層):各層は画像特徴に対してデフォーマブル自己注意を、テキスト特徴に対して通常の自己注意を適用し、続いて画像からテキスト、テキストから画像への相互注意を行う — 領域を単語に接地させ、単語を画像内容によって文脈化する。
- 言語誘導クエリ選択:拡張された画像特徴とテキスト特徴(、、)を用いて、個のデコーダクエリが、任意のテキストトークンに最も類似した画像トークンから初期化される。
ここではテキスト次元にわたる最大値を取る。DINOの混合クエリ選択に従い、選択された特徴が位置部分(動的アンカーボックス)を初期化し、コンテンツクエリは学習可能なままとなる。
- クロスモダリティデコーダ(ヘッド、6層):各層はクエリ自己注意、画像相互注意、テキスト相互注意(DINOに対する追加要素)、およびFFNを実行し、クエリはボックス精緻化中も両モダリティを探り続ける。
サブセンテンス・テキスト表現:カテゴリ名を連結することで、無関係なカテゴリがBERT内で互いに注意を向け合うことになる;注意マスクはカテゴリ間注意をブロックしつつ単語ごとの特徴を保持する — 文レベルよりも精細で、単語レベルよりもクリーンである。
学習:ボックスにはL1 + GIoU損失を用い、GLIPに倣って、分類のために予測された物体と言語トークンの間の対照損失を用いる(各クエリはボックスと、テキストトークンとの内積類似度を出力する);ハンガリアンマッチングコストは2.0/5.0/2.0(cls/L1/GIoU)、損失重みは1.0/5.0/2.0である。検出+グラウンディング(+キャプション)データで学習される。REC(referring expression comprehension)の場合、最高スコアのボックスが返される。
実験結果
- ゼロショットCOCO(COCOの学習画像を使わない):Grounding DINO-LはCOCO minivalで52.5 APに達する;COCOでファインチューニングすると62.6 AP minival(63.0 test-dev)に達する。Swin-Tを用いた場合、同じ設定でGLIP-Tを+1.8 AP、DINOを+0.5 AP上回る;グラウンディングデータを追加すると1 AP以上向上する(48.1対46.7)。
- ODinWゼロショット(35種の多様な実世界検出データセット):記録的な平均26.1 AP。
- LVISゼロショット:同程度のデータ条件でGLIPを上回り、一般的な物体では優れているが稀少カテゴリでは弱い;GLIPよりデータに対するスケーリングが良い(Cap4Mキャプションからの+1.8 AP対GLIPの+1.1)が、より大規模なデータで学習されたDetCLIPv2には及ばない。
- RefCOCO/+/g指示表現理解:3つの分割すべてで評価される — 属性で限定された表現(“左端の椅子”)は、カテゴリ名よりも厳しいオープンセットテストである。
SLAMにおける意義
Grounding DINOは、言語駆動のセマンティックSLAMを実用的なものにする存在である:新しい環境ごとに検出器を再学習することなく、地図に自然言語で名付けられた物体を配置できる。テキストプロンプトによるボックスをSAMに渡すこと(Grounded SAM)で、任意の記述された物体に対するインスタンスマスクが得られる — これはConceptGraphsのようなオープンボキャブラリ3Dシーングラフシステムやクリオのようなタスク駆動マッピングの知覚フロントエンドであり、ロボットが言語指示(“ホワイトボードへ行け”)をSLAMマップに対して直接実行することを可能にする。
関連ノート
- DETR — この手法が拡張するTransformer検出アーキテクチャファミリー
- SAM — Grounded SAMにおけるセグメンテーションのパートナー
- ConceptGraphs — このパイプライン上に構築されたオープンボキャブラリ3Dシーングラフ
- Open-YOLO 3D — 2Dオープンセット検出器を用いたオープンボキャブラリ3Dインスタンスセグメンテーション
- CLIP — オープンボキャブラリ知覚を支える視覚言語アライメントの発想
- Clio — この検出器の出力を消費するタスク駆動オープンボキャブラリマッピング