🚀 データ効率の高い画像トランスフォーマー (小型モデル)
このモデルは、ImageNet-1k (100万枚の画像、1000クラス) のデータセットを用いて、解像度224x224で事前学習および微調整されたData-efficient Image Transformer (DeiT) です。このモデルは、Touvronらによる論文 Training data-efficient image transformers & distillation through attention で初めて紹介され、このリポジトリ で最初に公開されました。ただし、重みはRoss Wightmanによる timmリポジトリ から変換されています。
免責事項: DeiTを公開したチームはこのモデルのモデルカードを作成していないため、このモデルカードはHugging Faceチームによって作成されています。
🚀 クイックスタート
このモデルは、画像分類に使用できます。興味のあるタスクで微調整されたバージョンを探すには、モデルハブ を参照してください。
✨ 主な機能
このモデルは、より効率的に学習されたVision Transformer (ViT) です。Vision Transformer (ViT) は、Transformerエンコーダモデル (BERTのような) で、画像の大規模コレクションであるImageNet-1kを用いて、解像度224x224ピクセルで教師あり学習により事前学習および微調整されています。
画像は、固定サイズのパッチ (解像度16x16) のシーケンスとしてモデルに入力され、線形埋め込みされます。また、分類タスクに使用するために、シーケンスの先頭に [CLS] トークンを追加します。シーケンスをTransformerエンコーダのレイヤーに入力する前に、絶対位置埋め込みも追加されます。
モデルを事前学習することで、画像の内部表現を学習し、下流のタスクに役立つ特徴を抽出することができます。たとえば、ラベル付き画像のデータセットがある場合、事前学習されたエンコーダの上に線形レイヤーを配置して、標準的な分類器を学習することができます。通常、[CLS] トークンの上に線形レイヤーを配置します。このトークンの最後の隠れ状態は、画像全体の表現と見なすことができます。
📦 インストール
このモデルを使用するには、transformers
ライブラリが必要です。以下のコマンドでインストールできます。
pip install transformers
💻 使用例
基本的な使用法
このモデルを使用して、COCO 2017データセットの画像を1000のImageNetクラスのいずれかに分類する方法は次のとおりです。
from transformers import AutoFeatureExtractor, ViTForImageClassification
from PIL import Image
import requests
url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)
feature_extractor = AutoFeatureExtractor.from_pretrained('facebook/deit-small-patch16-224')
model = ViTForImageClassification.from_pretrained('facebook/deit-small-patch16-224')
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
print("予測されたクラス:", model.config.id2label[predicted_class_idx])
高度な使用法
現在、特徴抽出器とモデルの両方がPyTorchをサポートしています。TensorflowとJAX/FLAXは近日公開予定です。
📚 ドキュメント
モデルの詳細
このモデルは、より効率的に学習されたVision Transformer (ViT) です。Vision Transformer (ViT) は、Transformerエンコーダモデル (BERTのような) で、画像の大規模コレクションであるImageNet-1kを用いて、解像度224x224ピクセルで教師あり学習により事前学習および微調整されています。
想定される用途と制限
このモデルは、画像分類に使用できます。ただし、特定のタスクに最適化されたモデルを使用することをお勧めします。
学習データ
ViTモデルは、ImageNet-1k という100万枚の画像と1000クラスからなるデータセットで事前学習されています。
学習手順
前処理
学習/検証中の画像の前処理の正確な詳細は、ここ で確認できます。推論時には、画像は同じ解像度 (256x256) にリサイズ/リスケールされ、224x224に中央クロップされ、ImageNetの平均と標準偏差を使用してRGBチャネル全体で正規化されます。
事前学習
モデルは、単一の8GPUノードで3日間学習されました。学習解像度は224です。すべてのハイパーパラメータ (バッチサイズや学習率など) については、元の論文の表9を参照してください。
評価結果
モデル |
ImageNetトップ1精度 |
ImageNetトップ5精度 |
パラメータ数 |
URL |
DeiT-tiny |
72.2 |
91.1 |
5M |
https://huggingface.co/facebook/deit-tiny-patch16-224 |
DeiT-small |
79.9 |
95.0 |
22M |
https://huggingface.co/facebook/deit-small-patch16-224 |
DeiT-base |
81.8 |
95.6 |
86M |
https://huggingface.co/facebook/deit-base-patch16-224 |
DeiT-tiny distilled |
74.5 |
91.9 |
6M |
https://huggingface.co/facebook/deit-tiny-distilled-patch16-224 |
DeiT-small distilled |
81.2 |
95.4 |
22M |
https://huggingface.co/facebook/deit-small-distilled-patch16-224 |
DeiT-base distilled |
83.4 |
96.5 |
87M |
https://huggingface.co/facebook/deit-base-distilled-patch16-224 |
DeiT-base 384 |
82.9 |
96.2 |
87M |
https://huggingface.co/facebook/deit-base-patch16-384 |
DeiT-base distilled 384 (1000エポック) |
85.2 |
97.2 |
88M |
https://huggingface.co/facebook/deit-base-distilled-patch16-384 |
微調整に関しては、より高い解像度 (384x384) で最良の結果が得られます。もちろん、モデルサイズを大きくすると、パフォーマンスが向上します。
BibTeXエントリと引用情報
@misc{touvron2021training,
title={Training data-efficient image transformers & distillation through attention},
author={Hugo Touvron and Matthieu Cord and Matthijs Douze and Francisco Massa and Alexandre Sablayrolles and Hervé Jégou},
year={2021},
eprint={2012.12877},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@misc{wu2020visual,
title={Visual Transformers: Token-based Image Representation and Processing for Computer Vision},
author={Bichen Wu and Chenfeng Xu and Xiaoliang Dai and Alvin Wan and Peizhao Zhang and Zhicheng Yan and Masayoshi Tomizuka and Joseph Gonzalez and Kurt Keutzer and Peter Vajda},
year={2020},
eprint={2006.03677},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@inproceedings{deng2009imagenet,
title={Imagenet: A large-scale hierarchical image database},
author={Deng, Jia and Dong, Wei and Socher, Richard and Li, Li-Jia and Li, Kai and Fei-Fei, Li},
booktitle={2009 IEEE conference on computer vision and pattern recognition},
pages={248--255},
year={2009},
organization={Ieee}
}
📄 ライセンス
このモデルは、Apache-2.0ライセンスの下で公開されています。