🚀 视觉变换器(基础大小模型),使用MSN方法预训练(补丁大小为4)
视觉变换器(ViT)模型使用MSN方法进行了预训练。该模型在Mahmoud Assran、Mathilde Caron、Ishan Misra、Piotr Bojanowski、Florian Bordes、Pascal Vincent、Armand Joulin、Michael Rabbat、Nicolas Ballas等人撰写的论文用于标签高效学习的掩码孪生网络中被首次提出,并在这个仓库中首次发布。
免责声明:发布MSN的团队并未为该模型撰写模型卡片,此模型卡片由Hugging Face团队编写。
🚀 快速开始
本模型是使用MSN方法预训练的视觉变换器(ViT),可用于图像分类等下游任务。若训练集中标注样本较少,该模型将发挥显著优势。你可以在模型中心查找感兴趣的不同版本的MSN预训练模型。
✨ 主要特性
- 联合嵌入架构:MSN采用联合嵌入架构,使掩码补丁的原型与未掩码补丁的原型相匹配,在少样本和极少样本情况下表现出色。
- 特征提取:通过预训练,模型学习到图像的内部表示,可用于提取对下游任务有用的特征。
- 低样本适应性:当训练集中标注样本较少时,该模型能展现出较好的性能。
📚 详细文档
模型描述
视觉变换器(ViT)是一种类似BERT的变压器编码器模型。图像以固定大小的补丁序列形式输入到模型中。
MSN提出了一种联合嵌入架构,用于匹配掩码补丁和未掩码补丁的原型。通过这种设置,该方法在少样本和极少样本情况下都能取得出色的性能。
通过对模型进行预训练,它学习到图像的内部表示,这些表示可用于提取对下游任务有用的特征。例如,如果你有一个标注图像的数据集,可以在预训练编码器的基础上添加一个线性层,训练一个标准的分类器。
预期用途与限制
你可以将原始模型用于图像分类等下游任务。请查看模型中心,查找你感兴趣的不同版本的MSN预训练模型。当训练集中标注样本较少时,该模型特别有用。
💻 使用示例
基础用法
以下是如何使用此骨干编码器的示例代码:
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-base-4")
model = ViTMSNModel.from_pretrained("facebook/vit-msn-base-4")
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-base-4")
model = ViTMSNForImageClassification.from_pretrained("facebook/vit-msn-base-4")
...
📄 许可证
本项目采用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}
}
📋 信息表格
属性 |
详情 |
模型类型 |
视觉变换器(ViT),使用MSN方法预训练 |
训练数据 |
ImageNet-1K |