🚀 视觉变换器(大尺寸模型),使用MSN方法预训练(补丁尺寸为7)
本项目是使用MSN方法预训练的视觉变换器(ViT)模型,可用于图像特征提取和下游任务,在少样本场景下表现出色。
🚀 快速开始
本模型是使用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团队编写。
✨ 主要特性
模型描述
视觉变换器(ViT)是一种基于Transformer编码器的模型(类似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-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")
...
📚 详细文档
引用
@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}
}
📄 许可证
本项目采用Apache 2.0许可证。
属性 |
详情 |
模型类型 |
视觉变换器(ViT),使用MSN方法预训练 |
训练数据 |
ImageNet-1K |