/ Модель

Характеристики

Параметры
28,3 млн
Лицензия
Apache 2.0
Архитектура
vit_msn · dense
Опубликована
9 сен 2022

vit-msn-small

Эмбеддинги изображений3 профессии

Компактный Vision Transformer, предобученный методом MSN для извлечения признаков изображений и переноса на задачи компьютерного зрения.

784скачиваний за 30 дней7лайковвеса обновлены30 сен 2022

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

facebook/vit-msn-small — компактный энкодер Vision Transformer, разработанный командой MSN и предварительно обученный методом Masked Siamese Networks. Модель обрабатывает изображение как последовательность патчей и формирует внутренние признаки изображения; в метаданных указано 28,3 млн параметров.

Модель предназначена для извлечения визуальных признаков и последующего использования в задачах компьютерного зрения. Например, к энкодеру можно добавить линейный классификатор и обучить его на размеченных изображениях. Предобучение особенно полезно, когда доступно мало размеченных примеров. Модель принимает изображения и выдаёт векторные представления; README также указывает ImageNet-1k среди связанных датасетов.

Модель распространяется в формате PyTorch по лицензии Apache-2.0. Карточка описывает её как основу для downstream-задач, а не как готовый классификатор; качество зависит от выбранной задачи и последующего обучения.

Сценарии применения

  • извлечение признаков изображений для последующего обучения
  • обучение классификатора изображений на небольшом размеченном наборе
  • получение эмбеддингов изображений для downstream-задач компьютерного зрения

Ограничения

Модель является энкодером признаков, а не готовым классификатором; для конкретных задач может потребоваться обучение дополнительной головы. README отмечает пользу при малом числе размеченных примеров, но не приводит количественных результатов для отдельных задач.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Vision Transformer (small-sized model) pre-trained with MSN

Vision Transformer (ViT) model pre-trained using the MSN method. It was introduced in the paper Masked Siamese Networks for Label-Efficient Learning by Mahmoud Assran, Mathilde Caron, Ishan Misra, Piotr Bojanowski, Florian Bordes, Pascal Vincent, Armand Joulin, Michael Rabbat, Nicolas Ballas and first released in this repository.

Disclaimer: The team releasing MSN did not write a model card for this model so this model card has been written by the Hugging Face team.

Model description

The Vision Transformer (ViT) is a transformer encoder model (BERT-like). Images are presented to the model as a sequence of fixed-size patches.

MSN presents a joint-embedding architecture to match the prototypes of masked patches with that of the unmasked patches. With this setup, their method yields excellent performance in the low-shot and extreme low-shot regimes.

By pre-training the model, it learns an inner representation of images that can then be used to extract features useful for downstream tasks: if you have a dataset of labeled images for instance, you can train a standard classifier by placing a linear layer on top of the pre-trained encoder.

Intended uses & limitations

You can use the raw model for downstream tasks like image classification. See the model hub to look for different versions of MSN pre-trained models that interest you. The model is particularly beneficial when you have a few labeled samples in your training set.

How to use

Here is how to use this backbone encoder:

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-small")
model = ViTMSNModel.from_pretrained("facebook/vit-msn-small")
inputs = feature_extractor(images=image, return_tensors="pt")
with torch.no_grad():
    outputs = model(**inputs)
last_hidden_states = outputs.last_hidden_state

For fine-tuning on image classification use the ViTMSNForImageClassification class:

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-small")
model = ViTMSNForImageClassification.from_pretrained("facebook/vit-msn-small")

...

Citation

@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}
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · image-feature-extraction

Можно запустить

Подбираем GPU…

Класс архитектуры
ViTMSNModel
Ревизия весов
a50267d

0 моделей