/ Модель

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

Лицензия
Apache 2.0
Библиотека
timm
Опубликована
30 мая 2025

beit3_large_patch16_224.indomain_in22k_ft_in1k

Классификация изображенийИзображение → label4 профессии

BEiT-3 large — визуальная модель для классификации изображений, извлечения признаков и эмбеддингов.

100скачиваний за 30 дней0лайковвеса обновлены30 мая 2025

Бенчмарки

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

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

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

  • imagenet-r-clean

    top5 · выше — лучше

    Результат

    99,69 %

    image-classification 97,39 %
    timm

    Публичная таблицаревизия не подтверждена

  • imagenet-real

    top5 · выше — лучше

    Результат

    98,702 %

    image-classification 90,482 %
    timm

    Публичная таблицаревизия не подтверждена

  • sketch

    top5 · выше — лучше

    Результат

    81,242 %

    image-classification 59,636 %
    timm

    Публичная таблицаревизия не подтверждена

  • imagenet-a

    top1 · выше — лучше

    Результат

    70,08 %

    image-classification 90,267 %
    timm

    Публичная таблицаревизия не подтверждена

  • imagenetv2-matched-frequency

    top5 · выше — лучше

    Результат

    95,01 %

    image-classification 79,5 %
    timm

    Публичная таблицаревизия не подтверждена

  • imagenet-a-clean

    top5 · выше — лучше

    Результат

    99,77 %

    image-classification 98,07 %
    timm

    Публичная таблицаревизия не подтверждена

  • imagenet-r

    top1 · выше — лучше

    Результат

    81,22 %

    image-classification 91,577 %
    timm

    Публичная таблицаревизия не подтверждена

  • imagenet

    top1 · выше — лучше

    Результат

    87,534 %

    image-classification 98,364 %
    timm

    Публичная таблицаревизия не подтверждена

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

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

BEiT-3 large — модель классификации изображений и визуальная backbone-модель, опубликованная в коллекции timm. Изначально мультимодально предобучалась на изображениях ImageNet-22k, текстовых документах объёмом 160 ГБ и крупномасштабных парах изображение–текст с помощью masked data modeling и фильтрации данных по предметной области, а затем дообучалась на ImageNet-22k и ImageNet-1k. Репозиторий содержит преобразованную версию для задач классификации только по изображениям.

Модель имеет 304,6 млн параметров, обрабатывает изображения размером 224 × 224 и может использоваться для классификации, извлечения карт признаков и получения эмбеддингов изображений. В карточке Hugging Face указана библиотека timm, веса представлены в форматах PyTorch и safetensors. Лицензия — Apache-2.0.

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

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

Ограничения

Эта опубликованная версия предназначена для обработки изображений и классификации, хотя исходная модель BEiT-3 предобучалась мультимодально. В описании заявлен входной размер изображения 224 × 224.

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

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

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

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

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

Открыть на Hugging Face

Model card for beit3_large_patch16_224.indomain_in22k_ft_in1k

A BEiT-3 image classification model. Multimodal model pretrained on ImageNet-22k images, 160GB text documents, and web-scale image-text pairs with masked data modeling. Uses in-domain data filtering. Fine-tuned on ImageNet-22k then ImageNet-1k. Converted for vision-only classification tasks.

Model Details

Model Usage

Image Classification

from urllib.request import urlopen
from PIL import Image
import timm

img = Image.open(urlopen(
    'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))

model = timm.create_model('beit3_large_patch16_224.indomain_in22k_ft_in1k', pretrained=True)
model = model.eval()

# get model specific transforms (normalization, resize)
data_config = timm.data.resolve_model_data_config(model)
transforms = timm.data.create_transform(**data_config, is_training=False)

output = model(transforms(img).unsqueeze(0))  # unsqueeze single image into batch of 1

top5_probabilities, top5_class_indices = torch.topk(output.softmax(dim=1) * 100, k=5)

Feature Map Extraction

from urllib.request import urlopen
from PIL import Image
import timm

img = Image.open(urlopen(
    'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))

model = timm.create_model(
    'beit3_large_patch16_224.indomain_in22k_ft_in1k',
    pretrained=True,
    features_only=True,
)
model = model.eval()

# get model specific transforms (normalization, resize)
data_config = timm.data.resolve_model_data_config(model)
transforms = timm.data.create_transform(**data_config, is_training=False)

output = model(transforms(img).unsqueeze(0))  # unsqueeze single image into batch of 1

for o in output:
    # print shape of each feature map in output
    # e.g.:
    #  torch.Size([1, 1024, 14, 14])
    #  torch.Size([1, 1024, 14, 14])
    #  torch.Size([1, 1024, 14, 14])

    print(o.shape)

Image Embeddings

from urllib.request import urlopen
from PIL import Image
import timm

img = Image.open(urlopen(
    'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))

model = timm.create_model(
    'beit3_large_patch16_224.indomain_in22k_ft_in1k',
    pretrained=True,
    num_classes=0,  # remove classifier nn.Linear
)
model = model.eval()

# get model specific transforms (normalization, resize)
data_config = timm.data.resolve_model_data_config(model)
transforms = timm.data.create_transform(**data_config, is_training=False)

output = model(transforms(img).unsqueeze(0))  # output is (batch_size, num_features) shaped tensor

# or equivalently (without needing to set num_classes=0)

output = model.forward_features(transforms(img).unsqueeze(0))
# output is unpooled, a (1, 197, 1024) shaped tensor

output = model.forward_head(output, pre_logits=True)
# output is a (1, num_features) shaped tensor

Model Comparison

Explore the dataset and runtime metrics of this model in timm model results.

Citation

@article{wang2022beit3,
  title={Image as a foreign language: Beit pretraining for vision and vision-language tasks},
  author={Wang, Wenhui and Bao, Hangbo and Dong, Li and Bjorck, Johan and Peng, Zhiliang and Liu, Qiang and Aggarwal, Kriti and Mohammed, Owais Khan and Singhal, Saksham and Som, Subhojit and others},
  journal={arXiv preprint arXiv:2208.10442},
  year={2022}
}
@article{dosovitskiy2020vit,
  title={An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale},
  author={Dosovitskiy, Alexey and Beyer, Lucas and Kolesnikov, Alexander and Weissenborn, Dirk and Zhai, Xiaohua and Unterthiner, Thomas and  Dehghani, Mostafa and Minderer, Matthias and Heigold, Georg and Gelly, Sylvain and Uszkoreit, Jakob and Houlsby, Neil},
  journal={ICLR},
  year={2021}
}
@misc{rw2019timm,
  author = {Ross Wightman},
  title = {PyTorch Image Models},
  year = {2019},
  publisher = {GitHub},
  journal = {GitHub repository},
  doi = {10.5281/zenodo.4414861},
  howpublished = {\url{https://github.com/huggingface/pytorch-image-models}}
}

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

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

GPU в ailist

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

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

Подбираем GPU…

Ревизия весов
6ebe325

0 моделей