/ Модель

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

Лицензия
Apache 2.0
Архитектура
pix2struct · dense
Опубликована
3 апр 2023

matcha-plotqa-v2

Вопросы по изображениюИзображение, текст → текст3 профессии

MatCha — модель визуального вопросно-ответного поиска, дообученная на PlotQA-v2 для извлечения и анализа данных на графиках и диаграммах.

392скачиваний за 30 дней14лайковвеса обновлены22 июл 2023

Бенчмарки

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

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Изображение → текст» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

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

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

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

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

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

MatCha — модель визуального языка на базе Pix2Struct, дообученная на наборе PlotQA-v2. Её разработали Fangyu Liu, Francesco Piccinno и соавторы; в экосистему Hugging Face модель добавил Younes Belkada. Архитектура реализована классом Pix2StructForConditionalGeneration и принимает изображение графика вместе с текстовым вопросом, чтобы сформировать текстовый ответ.

Модель предназначена прежде всего для ответов на вопросы по графикам и диаграммам, включая задачи, требующие извлечения и сопоставления числовых значений. В основе MatCha — предварительное обучение для математических рассуждений и восстановления структуры графиков; в карточке сообщается о высоких результатах на бенчмарках PlotQA и ChartQA и улучшении переноса на скриншоты, схемы из учебников и иллюстрации в документах. Карточка советует задавать конкретные вопросы для более стабильных ответов.

Репозиторий содержит веса PyTorch. Указана лицензия Apache-2.0. Языковые теги метаданных включают английский, французский, румынский и немецкий; основное назначение карточки связано с PlotQA-v2, поэтому отдельный приоритетный язык не выделен.

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

  • ответы на вопросы о значениях на графике
  • сравнение чисел и категорий на диаграмме
  • расчёт суммы или поиск максимума по графику
  • извлечение числовых данных из визуализации
  • анализ графиков в документах и отчётах

Ограничения

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

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

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

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

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

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

Открыть на Hugging Face

Model card for MatCha - fine-tuned on PlotQA-v2 dataset

This model is the MatCha model, fine-tuned on plotQA-v2 dataset. This fine-tuned checkpoint might be better suited for plots question answering tasks.

Table of Contents

  1. TL;DR
  2. Using the model
  3. Contribution
  4. Citation

TL;DR

The abstract of the paper states that:

Visual language data such as plots, charts, and infographics are ubiquitous in the human world. However, state-of-the-art visionlanguage models do not perform well on these data. We propose MATCHA (Math reasoning and Chart derendering pretraining) to enhance visual language models’ capabilities jointly modeling charts/plots and language data. Specifically we propose several pretraining tasks that cover plot deconstruction and numerical reasoning which are the key capabilities in visual language modeling. We perform the MATCHA pretraining starting from Pix2Struct, a recently proposed imageto-text visual language model. On standard benchmarks such as PlotQA and ChartQA, MATCHA model outperforms state-of-the-art methods by as much as nearly 20%. We also examine how well MATCHA pretraining transfers to domains such as screenshot, textbook diagrams, and document figures and observe overall improvement, verifying the usefulness of MATCHA pretraining on broader visual language tasks.

Using the model

You should ask specific questions to the model in order to get consistent generations. Here we are asking the model whether the sum of values that are in a chart are greater than the largest value.

from transformers import Pix2StructProcessor, Pix2StructForConditionalGeneration
import requests
from PIL import Image

processor = Pix2StructProcessor.from_pretrained('google/matcha-plotqa-v2')
model = Pix2StructForConditionalGeneration.from_pretrained('google/matcha-plotqa-v2')

url = "https://raw.githubusercontent.com/vis-nlp/ChartQA/main/ChartQA%20Dataset/val/png/20294671002019.png"
image = Image.open(requests.get(url, stream=True).raw)

inputs = processor(images=image, text="Is the sum of all 4 places greater than Laos?", return_tensors="pt")
predictions = model.generate(**inputs, max_new_tokens=512)
print(processor.decode(predictions[0], skip_special_tokens=True))
>>> No

Converting from T5x to huggingface

You can use the convert_pix2struct_checkpoint_to_pytorch.py script as follows:

python convert_pix2struct_checkpoint_to_pytorch.py --t5x_checkpoint_path PATH_TO_T5X_CHECKPOINTS --pytorch_dump_path PATH_TO_SAVE --is_vqa

if you are converting a large model, run:

python convert_pix2struct_checkpoint_to_pytorch.py --t5x_checkpoint_path PATH_TO_T5X_CHECKPOINTS --pytorch_dump_path PATH_TO_SAVE --use-large --is_vqa

Once saved, you can push your converted model with the following snippet:

from transformers import Pix2StructForConditionalGeneration, Pix2StructProcessor

model = Pix2StructForConditionalGeneration.from_pretrained(PATH_TO_SAVE)
processor = Pix2StructProcessor.from_pretrained(PATH_TO_SAVE)

model.push_to_hub("USERNAME/MODEL_NAME")
processor.push_to_hub("USERNAME/MODEL_NAME")

Run predictions

To run predictions, refer to the instructions presented in the matcha-chartqa model card.

Contribution

This model was originally contributed by Fangyu Liu, Francesco Piccinno et al. and added to the Hugging Face ecosystem by Younes Belkada.

Citation

If you want to cite this work, please consider citing the original paper:

@misc{liu2022matcha,
      title={MatCha: Enhancing Visual Language Pretraining with Math Reasoning and Chart Derendering}, 
      author={Fangyu Liu and Francesco Piccinno and Syrine Krichene and Chenxi Pang and Kenton Lee and Mandar Joshi and Yasemin Altun and Nigel Collier and Julian Martin Eisenschlos},
      year={2022},
      eprint={2212.09662},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}

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

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

GPU в ailist

Универсальный рантайм

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

Подбираем GPU…

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

0 моделей