🚀 Vision Transformer (小型モデル) (DINOv2を使用し、レジスター付きで学習)
このモデルは、Vision Transformer (ViT) モデルで、Darcet らによる論文 Vision Transformers Need Registers で紹介され、このリポジトリ で最初に公開されました。
免責事項: レジスター付きの DINOv2 を公開したチームはこのモデルのモデルカードを作成していないため、このモデルカードは Hugging Face チームによって作成されました。
🚀 クイックスタート
このモデルは、DINOv2 を使用して学習された小型の Vision Transformer モデルです。画像の特徴抽出や下流タスクに利用できます。
✨ 主な機能
- 画像の自己教師付き特徴抽出に適しています。
- アテンションマップにアーティファクトがなく、解釈可能です。
- パフォーマンスが向上しています。
📚 ドキュメント
モデルの説明
Vision Transformer (ViT) は、トランスフォーマーエンコーダモデル(BERT のような)で、当初 は ImageNet での教師付き画像分類に導入されました。
その後、人々は、ラベルを必要とせずに画像の自己教師付き特徴抽出(つまり、意味のある特徴、つまり埋め込みを学習すること)で ViT を非常にうまく機能させる方法を見つけました。ここでの例となる論文には、DINOv2 や MAE があります。
DINOv2 の著者は、ViT のアテンションマップにアーティファクトがあることに気づきました。これは、モデルがいくつかの画像パッチを「レジスター」として使用しているためです。著者は解決策を提案しました:新しいトークン(「レジスター」トークンと呼ばれる)を追加するだけで、これは事前学習中のみ使用し(その後は破棄します)。これにより、
- アーティファクトがなくなり、
- 解釈可能なアテンションマップが得られ、
- パフォーマンスが向上します。

レジスターを使用して学習されたモデルと使用しないモデルのアテンションマップの可視化。元の論文 から引用。
このモデルには、微調整されたヘッドは含まれていません。
モデルを事前学習することで、画像の内部表現を学習し、下流タスクに役立つ特徴を抽出するために使用できます。たとえば、ラベル付き画像のデータセットがある場合、事前学習されたエンコーダの上に線形層を配置して、標準的な分類器を学習することができます。通常、[CLS] トークンの上に線形層を配置します。このトークンの最後の隠れ状態は、画像全体の表現と見なすことができます。
想定される用途と制限
この生のモデルを使用して、画像を 1000 の可能な ImageNet クラスのいずれかに分類することができます。興味のあるタスクで微調整されたバージョンを モデルハブ で探すことができます。
使い方
このモデルの使用方法は次のとおりです。
基本的な使用法
from transformers import AutoImageProcessor, AutoModelForImageClassification
import torch
from PIL import Image
import requests
url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)
processor = AutoImageProcessor.from_pretrained('facebook/dinov2-with-registers-small-imagenet1k-1-layer')
model = AutoModelForImageClassification.from_pretrained('facebook/dinov2-with-registers-small-imagenet1k-1-layer')
inputs = processor(images=image, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
logits = outputs.logits
class_idx = outputs.logits.argmax(-1).item()
print("Predicted class:", model.config.id2label[class_idx])
BibTeX 引用
@misc{darcet2024visiontransformersneedregisters,
title={Vision Transformers Need Registers},
author={Timothée Darcet and Maxime Oquab and Julien Mairal and Piotr Bojanowski},
year={2024},
eprint={2309.16588},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2309.16588},
}
📄 ライセンス
このモデルは Apache-2.0 ライセンスの下で公開されています。