YOLO-World: Real-Time Open-Vocabulary Object Detection

概要

  • 事前にカテゴリを設定しないオープンボキャブラリーな設定での物体検出において最先端の精度と速度を達成したYOLO-WorldがTencent AI Labから発表された
  • 全体像
    • 主な工夫としては下記のVision-Language PAN (Path Aggregation Network)で、VisionとTextの相互作用をより考慮できるようにした部分。
    •  
  • 入出力
    • アノテーションをbbox-categoryペアではなく、bbox-textのペアで作成する。
      • カテゴリ名だったり、名詞、カテゴリの説明などを用いる
    • 出力としては、予測のBBoxとそれに対応するobject embedding を出力
  • モデル
    • YOLO Backbone: YOLOv8
    • Text Encoder: CLIPで事前学習されたTransformer
      • テキスト入力がCaptionや文章表現だった場合、n-gramアルゴリズムを用いて名詞句を抽出する
    • Text Contrastive Head: 3x3のCNNを2つ
      • object embeddingとtext間の類似度を計算するためのHead
    • Re-parametizable Vision-Language PAN
      • Text EmbeddingとImage Featureを混ぜるT-CSP Layer
      • マルチスケールでImageとTextの情報のAttentionから、Text Embeddingを更新するImage-Pooling Attention
  • 訓練
    • BBoxへのラベルの割り当て方などはYOLOv8と同じ
    • Textとobject embeddingのcontrastive loss + BBox回帰のIOU Lossとdistributed focal loss
    • BBox-テキストペアを作成するために、Pseudo Labelingを行った
      • n-gramアルゴリズムで名詞句を抽出
      • GLIPなどで粗いBBoxとTextのペアを生成
      • CLIPなどを使用して、画像-テキストペアとBBox-テキストペアで関連性が少ないものをフィルタリング。NMSなどを用いて冗長なBBoxも削除 (Appendixに詳細)
    • CC3Mデータセットの226k枚の画像から821k個の擬似アノテーションを作成した
  • 結果
    • YOLOv8と比較しても大きく精度改善しており、既存の2-stageベースのモデルよりも精度が向上している
    • ユーザが自由に設定した単語や表現でもうまく予測が行われている