/ Модель

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

Контекст
40 токенов
Параметры
137 млн
Лицензия
Apache 2.0
Архитектура
vilt · dense
Опубликована
2 мар 2022

vilt-b32-mlm

Заполнение пропусковТекст → текст3 профессии

Предобученная мультимодальная ViLT-модель восстанавливает замаскированные слова в тексте, используя также изображение.

23 227скачиваний за 30 дней13лайковвеса обновлены6 июл 2022

Бенчмарки

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

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

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

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

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

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

ViLT-B32-MLM — предобученная модель Vision-and-Language Transformer, впервые опубликованная в репозитории dandelin и представленная в работе Kim и соавторов «ViLT: Vision-and-Language Transformer Without Convolution or Region Supervision». Веса включают только языковую голову для предсказания замаскированных токенов; модель содержит 136,7 млн параметров и доступна в формате PyTorch. Лицензия — Apache-2.0.

Модель предназначена для восстановления замаскированных слов в тексте с учётом изображения: на вход подаются изображение и текст с маркерами [MASK]. Это вариант ViLT, предобученный на GCC, SBU, COCO и Visual Genome в течение 200 тысяч шагов. Архитектура объединяет обработку визуальной и языковой информации без свёрточной сети и региональной супервизии; заявленная длина контекста — 40 токенов.

Подходит для экспериментов с мультимодальным языковым моделированием и восстановления текста, связанного с изображением. Модель не является универсальным генератором текста или полноценной системой визуальных вопросов и ответов: в репозитории есть только голова masked language modeling, а карточка не приводит результатов оценки.

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

  • Восстановление пропущенных слов в подписи к изображению
  • Заполнение масок в тексте, связанном с изображением
  • Эксперименты с мультимодальным языковым моделированием
  • Исследование совместной обработки изображений и текста

Ограничения

Модель восстанавливает замаскированные токены и включает только языковую голову; она не предназначена как универсальная модель генерации текста или система визуальных вопросов и ответов. В карточке не приведены результаты оценки.

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

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

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

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

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

Открыть на Hugging Face

Vision-and-Language Transformer (ViLT), pre-trained only

Vision-and-Language Transformer (ViLT) model pre-trained on GCC+SBU+COCO+VG (200k steps). It was introduced in the paper ViLT: Vision-and-Language Transformer Without Convolution or Region Supervision by Kim et al. and first released in this repository. Note: this model only includes the language modeling head.

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

Intended uses & limitations

You can use the raw model for masked language modeling given an image and a piece of text with [MASK] tokens.

How to use

Here is how to use this model in PyTorch:

from transformers import ViltProcessor, ViltForMaskedLM
import requests
from PIL import Image
import re

url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
text = "a bunch of [MASK] laying on a [MASK]."

processor = ViltProcessor.from_pretrained("dandelin/vilt-b32-mlm")
model = ViltForMaskedLM.from_pretrained("dandelin/vilt-b32-mlm")

# prepare inputs
encoding = processor(image, text, return_tensors="pt")

# forward pass
outputs = model(**encoding)

tl = len(re.findall("\[MASK\]", text))
inferred_token = [text]

# gradually fill in the MASK tokens, one by one
with torch.no_grad():
    for i in range(tl):
        encoded = processor.tokenizer(inferred_token)
        input_ids = torch.tensor(encoded.input_ids).to(device)
        encoded = encoded["input_ids"][0][1:-1]
        outputs = model(input_ids=input_ids, pixel_values=pixel_values)
        mlm_logits = outputs.logits[0]  # shape (seq_len, vocab_size)
        # only take into account text features (minus CLS and SEP token)
        mlm_logits = mlm_logits[1 : input_ids.shape[1] - 1, :]
        mlm_values, mlm_ids = mlm_logits.softmax(dim=-1).max(dim=-1)
        # only take into account text
        mlm_values[torch.tensor(encoded) != 103] = 0
        select = mlm_values.argmax().item()
        encoded[select] = mlm_ids[select].item()
        inferred_token = [processor.decode(encoded)]

selected_token = ""
encoded = processor.tokenizer(inferred_token)
processor.decode(encoded.input_ids[0], skip_special_tokens=True)

Training data

(to do)

Training procedure

Preprocessing

(to do)

Pretraining

(to do)

Evaluation results

(to do)

BibTeX entry and citation info

@misc{kim2021vilt,
      title={ViLT: Vision-and-Language Transformer Without Convolution or Region Supervision}, 
      author={Wonjae Kim and Bokyung Son and Ildoo Kim},
      year={2021},
      eprint={2102.03334},
      archivePrefix={arXiv},
      primaryClass={stat.ML}
}

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

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

GPU в ailist

Универсальный рантайм · fill-mask

Нельзя запустить

Для архитектуры vilt нет загрузчика под задачу fill-mask.

Класс архитектуры
ViltForMaskedLM
Ревизия весов
9507e9c

0 моделей