🚀 vit_base_patch16_224.dinoのモデルカード
Vision Transformer (ViT) の画像特徴抽出モデルです。自己教師付き学習のDINO手法で学習されています。
🚀 クイックスタート
このモデルは、画像分類や特徴抽出に使用できるVision Transformerモデルです。以下に具体的な使用例を示します。
✨ 主な機能
- 画像分類タスクに適用可能です。
- 画像の埋め込み表現を取得することができます。
📦 インストール
このモデルを使用するには、timm
ライブラリが必要です。以下のコマンドでインストールできます。
pip install timm
💻 使用例
基本的な使用法
画像分類
from urllib.request import urlopen
from PIL import Image
import timm
img = Image.open(urlopen(
'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))
model = timm.create_model('vit_base_patch16_224.dino', pretrained=True)
model = model.eval()
data_config = timm.data.resolve_model_data_config(model)
transforms = timm.data.create_transform(**data_config, is_training=False)
output = model(transforms(img).unsqueeze(0))
top5_probabilities, top5_class_indices = torch.topk(output.softmax(dim=1) * 100, k=5)
画像の埋め込み表現
from urllib.request import urlopen
from PIL import Image
import timm
img = Image.open(urlopen(
'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))
model = timm.create_model(
'vit_base_patch16_224.dino',
pretrained=True,
num_classes=0,
)
model = model.eval()
data_config = timm.data.resolve_model_data_config(model)
transforms = timm.data.create_transform(**data_config, is_training=False)
output = model(transforms(img).unsqueeze(0))
output = model.forward_features(transforms(img).unsqueeze(0))
output = model.forward_head(output, pre_logits=True)
📚 ドキュメント
モデルの詳細
属性 |
详情 |
モデルタイプ |
画像分類 / 特徴抽出バックボーン |
モデル統計量 |
パラメータ数 (M): 85.8 GMACs: 16.9 活性化関数の出力数 (M): 16.5 画像サイズ: 224 x 224 |
関連論文 |
Emerging Properties in Self-Supervised Vision Transformers: https://arxiv.org/abs/2104.14294 An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale: https://arxiv.org/abs/2010.11929v2 |
事前学習データセット |
ImageNet-1k |
オリジナルリポジトリ |
https://github.com/facebookresearch/dino |
モデル比較
timmのモデル結果で、このモデルのデータセットと実行時間のメトリクスを確認できます。
📄 ライセンス
このモデルはApache-2.0ライセンスの下で提供されています。
🔖 引用
@inproceedings{caron2021emerging,
title={Emerging properties in self-supervised vision transformers},
author={Caron, Mathilde and Touvron, Hugo and Misra, Ishan and J{'e}gou, Herv{'e} and Mairal, Julien and Bojanowski, Piotr and Joulin, Armand},
booktitle={Proceedings of the IEEE/CVF international conference on computer vision},
pages={9650--9660},
year={2021}
}
@article{dosovitskiy2020vit,
title={An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale},
author={Dosovitskiy, Alexey and Beyer, Lucas and Kolesnikov, Alexander and Weissenborn, Dirk and Zhai, Xiaohua and Unterthiner, Thomas and Dehghani, Mostafa and Minderer, Matthias and Heigold, Georg and Gelly, Sylvain and Uszkoreit, Jakob and Houlsby, Neil},
journal={ICLR},
year={2021}
}
@misc{rw2019timm,
author = {Ross Wightman},
title = {PyTorch Image Models},
year = {2019},
publisher = {GitHub},
journal = {GitHub repository},
doi = {10.5281/zenodo.4414861},
howpublished = {\url{https://github.com/huggingface/pytorch-image-models}}
}