🚀 蒸留データ効率的画像Transformer(ベースサイズモデル)
Distilled Data-efficient Image Transformer(DeiT)モデルは、解像度224x224で事前学習され、ImageNet - 1k(100万枚の画像、1000クラス)上で384x384の解像度で微調整されています。このモデルは、Touvronらによって論文 Training data-efficient image transformers & distillation through attention で初めて提案され、このリポジトリ で初めて公開されました。ただし、その重みはRoss Wightmanによって timmリポジトリ から変換されたものです。
⚠️ 重要提示
DeiTを公開したチームはこのモデルのモデルカードを作成していません。このモデルカードはHugging Faceチームによって作成されています。
✨ 主な機能
- このモデルは蒸留ビジュアルTransformer(ViT)で、クラスタグに加えて蒸留タグを使用し、事前学習と微調整の間に教師モデル(CNN)から効果的に学習できます。
- 蒸留タグは誤差逆伝播によって学習され、自己注意層を介してクラス([CLS])とパッチタグと相互作用します。
- モデルは画像を固定サイズのパッチシーケンス(解像度16x16)として表現し、線形埋め込みを行います。
🚀 クイックスタート
元のモデルを使用して画像分類を行うことができます。興味のあるタスクに対して微調整されたバージョンを探すには、モデルセンター を参照してください。
📦 インストール
ドキュメントにはインストール手順が記載されていません。transformers
、PIL
、requests
などの関連依存ライブラリの公式ドキュメントを参照してインストールしてください。
💻 使用例
基本的な使用法
以下は、このモデルを使用してCOCO 2017データセットの画像を1000のImageNetクラスの1つに分類する方法の例です。
from transformers import AutoFeatureExtractor, DeiTForImageClassificationWithTeacher
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-base-distilled-patch16-384')
model = DeiTForImageClassificationWithTeacher.from_pretrained('facebook/deit-base-distilled-patch16-384')
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
print("Predicted class:", model.config.id2label[predicted_class_idx])
💡 使用アドバイス
現在、特徴抽出器とモデルはPyTorchをサポートしており、TensorflowとJAX/FLAXのサポートも間もなく追加されます。
📚 ドキュメント
モデルの説明
このモデルは蒸留ビジュアルTransformer(ViT)です。クラスタグに加えて蒸留タグを使用し、事前学習と微調整の間に教師モデル(CNN)から効果的に学習できます。蒸留タグは誤差逆伝播によって学習され、自己注意層を介してクラス([CLS])とパッチタグと相互作用します。画像は固定サイズのパッチシーケンス(解像度16x16)としてモデルに入力され、線形埋め込みが行われます。
想定される用途と制限
元のモデルを使用して画像分類を行うことができます。興味のあるタスクに対して微調整されたバージョンを探すには、モデルセンター を参照してください。
学習データ
このモデルは ImageNet - 1k 上で事前学習と蒸留微調整が行われています。これは100万枚の画像と1000クラスを含むデータセットです。
学習過程
前処理
学習/検証中の画像前処理の正確な詳細は ここ で確認できます。推論時には、画像は同じ解像度(438x438)にリサイズ/再スケーリングされ、384x384で中央切り抜きされ、ImageNetの平均と標準偏差を使用してRGBチャネルで正規化されます。
事前学習
このモデルは単一の8-GPUノードで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 epochs) |
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ライセンスの下で提供されています。