🚀 OWLv2モデルカード
OWLv2モデル(Open-World Localizationの略)は、Matthias Minderer、Alexey Gritsenko、Neil Houlsbyによる論文Scaling Open-Vocabulary Object Detectionで提案されました。OWLv2は、OWL-ViTと同様に、ゼロショットのテキスト条件付き物体検出モデルで、1つまたは複数のテキストクエリを使って画像をクエリすることができます。
このモデルは、マルチモーダルバックボーンとしてCLIPを使用しています。ViTのようなTransformerを使って視覚的特徴を取得し、因果的言語モデルを使ってテキスト特徴を取得します。CLIPを検出に使用するために、OWL-ViTはビジョンモデルの最後のトークンプーリング層を削除し、各Transformer出力トークンに軽量な分類とボックスヘッドを追加します。固定された分類層の重みを、テキストモデルから得られるクラス名の埋め込みで置き換えることで、オープンボキャブラリ分類が可能になります。著者らはまずCLIPをゼロから学習させ、二部マッチング損失を使用して標準的な検出データセット上の分類とボックスヘッドでエンドツーエンドで微調整します。画像ごとに1つまたは複数のテキストクエリを使用して、ゼロショットのテキスト条件付き物体検出を行うことができます。
📅 モデルの公開日
2023年6月
📋 モデルの種類
このモデルは、画像エンコーダとしてViT-B/16 Transformerアーキテクチャを持つCLIPバックボーンを使用し、テキストエンコーダとしてマスク自己注意Transformerを使用します。これらのエンコーダは、対照損失を通じて(画像、テキスト)ペアの類似度を最大化するように学習されます。CLIPバックボーンはゼロから学習され、物体検出の目的でボックスとクラス予測ヘッドと一緒に微調整されます。
📚 関連文書
📦 インストール
このモデルをtransformers
ライブラリで使用するには、以下のコードを実行します。
import requests
from PIL import Image
import torch
from transformers import Owlv2Processor, Owlv2ForObjectDetection
processor = Owlv2Processor.from_pretrained("google/owlv2-base-patch16-ensemble")
model = Owlv2ForObjectDetection.from_pretrained("google/owlv2-base-patch16-ensemble")
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
texts = [["a photo of a cat", "a photo of a dog"]]
inputs = processor(text=texts, images=image, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
target_sizes = torch.Tensor([image.size[::-1]])
results = processor.post_process_object_detection(outputs=outputs, target_sizes=target_sizes, threshold=0.1)
i = 0
text = texts[i]
boxes, scores, labels = results[i]["boxes"], results[i]["scores"], results[i]["labels"]
for box, score, label in zip(boxes, scores, labels):
box = [round(i, 2) for i in box.tolist()]
print(f"Detected {text[label]} with confidence {round(score.item(), 3)} at location {box}")
💻 モデルの使用
🎯 意図された用途
このモデルは、研究コミュニティ向けの研究成果として意図されています。このモデルにより、研究者がゼロショットのテキスト条件付き物体検出をよりよく理解し、探索できることを期待しています。また、このようなモデルの潜在的な影響に関する学際的研究、特に学習時にラベルが利用できない物体を識別する必要がある分野での研究にも役立つことを期待しています。
主な意図されたユーザー
これらのモデルの主な意図されたユーザーは、AI研究者です。
主に、研究者がコンピュータビジョンモデルのロバスト性、汎化能力、その他の能力、バイアス、制約をよりよく理解するためにこのモデルを使用することを想定しています。
📊 データ
このモデルのCLIPバックボーンは、公開されている画像キャプションデータで学習されました。これは、いくつかのウェブサイトをクロールし、YFCC100Mなどの一般的に使用されている既存の画像データセットを使用することで行われました。データの大部分は、インターネットをクロールして取得されたものです。これは、データがインターネットに最も接続されている人々や社会をより代表していることを意味します。OWL-ViTの予測ヘッドは、CLIPバックボーンと一緒に、COCOやOpenImagesなどの公開されている物体検出データセットで微調整されます。
(v2については更新予定)
📖 BibTeXエントリと引用情報
@misc{minderer2023scaling,
title={Scaling Open-Vocabulary Object Detection},
author={Matthias Minderer and Alexey Gritsenko and Neil Houlsby},
year={2023},
eprint={2306.09683},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
📄 ライセンス
このモデルはApache-2.0ライセンスの下で公開されています。