🚀 ビジョントランスフォーマー (大型モデル) のMSNによる事前学習版 (パッチサイズ7)
MSN手法を用いて事前学習されたビジョントランスフォーマー (ViT) モデルです。このモデルは、Mahmoud Assran, Mathilde Caron, Ishan Misra, Piotr Bojanowski, Florian Bordes, Pascal Vincent, Armand Joulin, Michael Rabbat, Nicolas Ballasによる論文 Masked Siamese Networks for Label-Efficient Learning で紹介され、このリポジトリ で最初に公開されました。
免責事項: MSNを公開したチームはこのモデルのモデルカードを作成していないため、このモデルカードはHugging Faceチームによって作成されています。
🚀 クイックスタート
このモデルは、画像分類などの下流タスクに使用できます。興味のあるMSN事前学習モデルの異なるバージョンを探すには、モデルハブ を参照してください。このモデルは、トレーニングセットに少数のラベル付きサンプルしかない場合に特に有益です。
✨ 主な機能
- ビジョントランスフォーマー (ViT) は、トランスフォーマーエンコーダモデル (BERTのような) で、画像を固定サイズのパッチのシーケンスとしてモデルに入力します。
- MSNは、マスクされたパッチのプロトタイプをマスクされていないパッチのプロトタイプと一致させるためのジョイント埋め込みアーキテクチャを提案しています。この設定により、低ショットおよび極低ショットのレジームで優れた性能を発揮します。
- モデルを事前学習することで、画像の内部表現を学習し、下流タスクに有用な特徴を抽出するために使用できます。例えば、ラベル付き画像のデータセットがある場合、事前学習されたエンコーダの上に線形層を配置して標準的な分類器をトレーニングすることができます。
📦 インストール
このモデルを使用するには、transformers
ライブラリが必要です。以下のコマンドでインストールできます。
pip install transformers
💻 使用例
基本的な使用法
from transformers import AutoFeatureExtractor, ViTMSNModel
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)
feature_extractor = AutoFeatureExtractor.from_pretrained("facebook/vit-msn-large-7")
model = ViTMSNModel.from_pretrained("facebook/vit-msn-large-7")
inputs = feature_extractor(images=image, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
last_hidden_states = outputs.last_hidden_state
高度な使用法
画像分類でのファインチューニングには、ViTMSNForImageClassification
クラスを使用します。
from transformers import AutoFeatureExtractor, ViTMSNForImageClassification
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)
feature_extractor = AutoFeatureExtractor.from_pretrained("facebook/vit-msn-large-7")
model = ViTMSNForImageClassification.from_pretrained("facebook/vit-msn-large-7")
...
📚 ドキュメント
モデルの説明
ビジョントランスフォーマー (ViT) は、トランスフォーマーエンコーダモデル (BERTのような) です。画像は固定サイズのパッチのシーケンスとしてモデルに入力されます。
MSNは、マスクされたパッチのプロトタイプをマスクされていないパッチのプロトタイプと一致させるためのジョイント埋め込みアーキテクチャを提案しています。この設定により、低ショットおよび極低ショットのレジームで優れた性能を発揮します。
モデルを事前学習することで、画像の内部表現を学習し、下流タスクに有用な特徴を抽出するために使用できます。例えば、ラベル付き画像のデータセットがある場合、事前学習されたエンコーダの上に線形層を配置して標準的な分類器をトレーニングすることができます。
想定される用途と制限
このモデルは、画像分類などの下流タスクに使用できます。興味のあるMSN事前学習モデルの異なるバージョンを探すには、モデルハブ を参照してください。このモデルは、トレーニングセットに少数のラベル付きサンプルしかない場合に特に有益です。
🔧 技術詳細
- モデルタイプ: Vision Transformer (ViT)
- トレーニングデータ: ImageNet-1k
📄 ライセンス
このモデルは、Apache-2.0ライセンスの下で提供されています。
引用
@article{assran2022masked,
title={Masked Siamese Networks for Label-Efficient Learning},
author={Assran, Mahmoud, and Caron, Mathilde, and Misra, Ishan, and Bojanowski, Piotr, and Bordes, Florian and Vincent, Pascal, and Joulin, Armand, and Rabbat, Michael, and Ballas, Nicolas},
journal={arXiv preprint arXiv:2204.07141},
year={2022}
}