
「言葉」で指示して「画像」で探す!OWL-ViTが実現するオープンボキャブラリー物体検出
3つの要点
✔️ モデル全体のアーキテクチャはシンプルで、再現性が高く、他のフレームワークへの組み込みが容易
✔️ 画像とテキストエンコーダは分離されており、テキストだけでなく画像からもクエリを生成可能
✔️ クエリ画像を与えるだけで、類似の物体を検出でき、説明が難しい物体でも有効
Simple Open-Vocabulary Object Detection with Vision Transformers
written by Matthias Minderer, Alexey Gritsenko, Austin Stone, Maxim Neumann, Dirk Weissenborn, Alexey Dosovitskiy, Aravindh Mahendran, Anurag Arnab, Mostafa Dehghani, Zhuoran Shen, Xiao Wang, Xiaohua Zhai, Thomas Kipf, Neil Houlsby
(Submitted on 12 May 2022)
Comments: ECCV 2022 camera-ready version
Subjects: Computer Vision and Pattern Recognition (cs.CV)
code:![]()
![]()
はじめに
従来の物体検出モデルは、限られた固定されたクラスに対してのみを認識できるクローズドボキャブラリー型が主流でした。そして新しいクラスを追加するには大規模なアノテーションデータが必要でした。しかし、現実世界では無限に近い物体カテゴリが存在するため、未知のカテゴリを検出できるオープンボキャブラリー型が求められています。この課題に対して、画像と言語がペアになったデータを用いた対照学習 (Contrastive Learning) が注目されています。有名なモデルにCLIPなどがありますが、訓練中に見たことのないクラスへの対応といった物体検出への応用は課題が残っていました。
この論文では標準的なVision Transformer (ViT) を用い、最小限の変更でオープンボキャブラリー物体検出モデルであるVision Transformer for Open-World Localization(OWL-ViT)を構築しました。このモデルは、大規模な画像-テキストペアでの対照学習による事前学習と、エンドツーエンドの検出用ファインチューニングで高い性能を発揮します。特に、クラス名の埋め込みを使用することで、未学習のカテゴリに対するゼロショット検出が可能となります 。
OWL-ViTは、クエリとしてテキストだけでなく画像埋め込みも使用できるため、ワンショット検出においても強力です。特に、COCOデータセットで未学習のカテゴリに対して、従来の最先端モデルと比べて大幅な性能向上を実現しています。この機能は、専門的な部品といった説明が難しい物体の検出に有用です。
さらに事前学習の期間やモデルサイズを拡大することで、検出性能が一貫して向上することを示しました。特に、画像-テキストペアが200億以上を超えても、オープンボキャブラリー検出の性能の向上が続くことを発見しました。また、検出用ファインチューニングでのデータ拡張や正則化を適切に用いることで、シンプルなトレーニングレシピでも高いゼロショットおよびワンショット検出性能が達成可能です 。
提案手法
OWL-ViTは以下の2段階で学習を進めます。
- 大規模な画像-テキストペアを用いた対照事前学習
- 検出タスクへの転移学習

大規模な画像-テキストペアを用いた対照事前学習
ここでは視覚と言語のモダリティを統一された表現空間にマッピングすることを目的としています。この学習過程は、画像エンコーダとテキストエンコーダを用いて、それぞれのモダリティを処理し、関連する画像とテキストの埋め込みを互いに近づけ、無関係なペアを遠ざけるように訓練されます。
画像エンコーダには、スケーラブルで強力な表現能力を持つVision Transformer (ViT) アーキテクチャを採用します。画像はパッチに分割され、各パッチがトークンとして処理されることで、空間的関係を考慮した特徴抽出が可能となります。この際、ViTのトークン化処理によって画像は固定長のトークン列に変換され、Transformer層を通じて各パッチ間の関係性が学習されます。一方、テキストエンコーダは、トークン化された文を処理し、文全体の意味を凝縮した埋め込みを生成します。テキストの表現は通常、Transformerの最終層から得られる終了トークン (EOSトークン) の出力を使用して得られます。
OWL-ViTの事前学習における重要な設計上の特徴は、画像とテキストエンコーダが独立していることです。この設計により、クエリとなるテキストや画像の埋め込みを事前に計算でき、推論時に計算効率を大幅に向上させることができます。また、この独立性は、クエリがテキストであれ画像であれ、同じアーキテクチャで扱える柔軟性をもたらしています。
検出タスクへの転移学習
ここではまず、ViTにおける最終トークンプーリング層(通常は画像全体の表現を抽出するために使用される)を取り除きます。代わりに、各出力トークンに対して直接、小型の分類ヘッドとボックス回帰ヘッドを接続します。この設計により、ViTの出力トークンはそれぞれ画像中の異なる空間位置に対応し、各トークンが潜在的な物体候補を表現することになります。分類ヘッドは物体のクラスを予測し、ボックス回帰ヘッドは対応するバウンディングボックスの位置を推定します。
従来の物体検出モデルでは、分類層に固定されたクラスごとの重みが学習されますが、OWL-ViTでは固定されたクラス分類層は使用されません。その代わりに、物体クラス名をテキストエンコーダに入力し、生成されたテキスト埋め込みを直接、分類ヘッドの重みとして利用します。このアプローチにより、モデルは未学習のクラスでも、クラス名さえ与えられれば対応するオブジェクトを検出できるようになります。
転移学習では物体の位置予測に、DETR(DEtection TRansformer)で用いられた二部マッチング損失を採用します。この損失は、モデルが予測したバウンディングボックスと正解のボックスとの最適な対応付けを行い、それぞれのペアに対して損失を計算します。これにより、予測と実際の物体位置が一貫するようにモデルが調整されます。
分類に関しては、ロングテール分布を持つデータセットでの不均衡を考慮して、焦点シグモイドクロスエントロピーを用います。この損失関数は、頻繁に出現するクラスよりも、希少なクラスの誤検出に対して大きなペナルティを与えることで、レアクラスの検出性能を向上させます。
また、すべての画像が全クラスについて完全にアノテーションされているわけではなく、各画像においてアノテーションされているクラスが限られているデータセットであるフェデレーションデータセットに対しては、各トレーニング画像に対して、アノテーションされているクラス(正例)と、明示的に存在しないことが記されているクラス(負例)をクエリとして使用します。これにより、モデルは明確に確認された情報に基づいて学習し、誤った負例の取り扱いを減らします。さらに未注釈クラスに関する誤認識を避けるため、トレーニング時にはランダムにクラスを選び、それらを「擬似負例」として含めることで、各画像において、少なくとも50個の負例クエリを用意します。
実験
実験では複数のデータセットを利用しています。トレーニングには主にOpenImages V4(約1.7百万枚の画像、600以上のクラス)、Visual Genome(84.5千枚の画像、広範囲なオブジェクト関係性情報を含む)、およびObjects365(365クラスを含む大規模検出データセット)を使用しています。一方、評価にはロングテール分布を持つLVIS v1.0が主に用いられ、特にゼロショット性能の検証に活用されました。さらに、標準的な物体検出性能の比較のためにCOCO 2017が、また一般的な検出能力の確認のためにObjects365も使用しています。
オープンボキャブラリー物体検出の評価では、LVISデータセットにおける未学習クラスでのパフォーマンスに焦点を当てています。この実験では、OWL-ViTがゼロショット条件下で31.2%のAPrareを達成し、既存の最先端手法を大幅に上回る結果を示しました。これは、事前学習時に画像とテキストのペアを利用したことによって、クラス名や説明文から物体の意味的特徴を効果的に抽出できるようになったことを示しています。特に、テキスト条件付き検出では、クラス名のテキストクエリを入力するだけで未学習のクラスを高精度で検出することができ、これが従来手法との差別化ポイントとなっています。
ヒューショット画像条件付き検出に関する実験では、COCOデータセットを用いて画像クエリによる検出能力を評価しました。OWL-ViTは、既存の最先端手法に比べて最大72%の改善を達成し、AP50スコアが26.0から41.8に向上しました。この結果は、OWL-ViTが視覚と言語の統合的な表現を活用することで、名前が与えられない未知の物体に対しても優れた検出能力を発揮することを示しています。特に、画像条件付き検出では、特定の物体を含む画像から得られる埋め込みをクエリとして使用することで、視覚的に類似する対象物を効果的に検出できました。
スケーリング特性の分析では事前学習に使用する画像-テキストペアの数やモデルサイズを増やすことで、検出性能が一貫して向上することを確認しました。特に、事前学習で200億以上の画像-テキストペアを使用すると、ゼロショット検出性能が大幅に向上する傾向が見られました。この結果は、事前学習での大規模データ利用が、物体検出タスクへの転移においても有効であることを示唆しています。また、Vision Transformerを基盤とするモデルが、特に大規模モデルサイズで他のアーキテクチャよりも優れたスケーリング特性を持つことが明らかになりました。
まとめ
Simple Open-Vocabulary Object Detection with Vision Transformers (OWL-ViT) は、視覚と言語の統合的な事前学習を活用し、オープンボキャブラリー物体検出における重要な課題をシンプルかつ効果的に解決した画期的な研究です。この研究の最大の貢献は、画像とテキストの大規模対照事前学習を活かし、未知クラスの物体検出をゼロショットおよびワンショットで高精度に実現した点にあります。特に、固定のクラス分類層を用いずに、事前学習済みのテキストエンコーダ出力をクラス埋め込みとして直接利用する設計は、柔軟性とスケーラビリティにおいて大きな進展をもたらしました。
この記事に関するカテゴリー