/ Модель

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

Контекст
512 токенов
Лицензия
MIT
Архитектура
vision-encoder-decoder · dense
Опубликована
22 ноя 2022

ko-trocr-base-nsmc-news-chatbot

Описание изображенийИзображение → текст3 профессии

Экспериментальная корейская модель TrOCR для распознавания текста на изображениях.

69скачиваний за 30 дней13лайковвеса обновлены5 окт 2023

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

daekeun-ml/ko-trocr-base-nsmc-news-chatbot — экспериментальная корейская модель распознавания текста на изображениях, созданная для проверки концепции на основе архитектуры TrOCR. Это модель типа VisionEncoderDecoder: в энкодере использованы веса facebook/deit-base-distilled-patch16-384, а в декодере — klue/roberta-base. Для обучения синтезировали изображения текста и собрали 637 401 текстовый пример из данных для суммаризации новостей, классификации тональности отзывов о фильмах и чат-бота.

В README рекомендовано расширить обучающие данные и продолжить обучение или выполнить дообучение; гиперпараметры подбирались эвристически, без отдельной настройки. Модель выпущена под лицензией MIT.

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

  • распознавание корейского текста на изображениях
  • извлечение текста из изображений новостных фраз
  • распознавание текста в изображениях отзывов о фильмах
  • распознавание текста в изображениях реплик чат-бота

Ограничения

Это PoC-модель; автор рекомендует собирать дополнительные данные для обучения или дообучения. Гиперпараметры выбраны эвристически и отдельно не настраивались.

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

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

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

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

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

Открыть на Hugging Face

TrOCR for Korean Language (PoC)

Overview

TrOCR has not yet released a multilingual model including Korean, so we trained a Korean model for PoC purpose. Based on this model, it is recommended to collect more data to additionally train the 1st stage or perform fine-tuning as the 2nd stage.

Collecting data

Text data

We created training data by processing three types of datasets.

For efficient data collection, each sentence was separated by a sentence separator library (Kiwi Python wrapper; https://github.com/bab2min/kiwipiepy), and as a result, 637,401 samples were collected.

Image Data

Image data was generated with TextRecognitionDataGenerator (https://github.com/Belval/TextRecognitionDataGenerator) introduced in the TrOCR paper. Below is a code snippet for generating images.

python3 ./trdg/run.py -i ocr_dataset_poc.txt -w 5 -t {num_cores} -f 64 -l ko -c {num_samples} -na 2 --output_dir {dataset_dir}

Training

Base model

The encoder model used facebook/deit-base-distilled-patch16-384 and the decoder model used klue/roberta-base. It is easier than training by starting weights from microsoft/trocr-base-stage1.

Parameters

We used heuristic parameters without separate hyperparameter tuning.

  • learning_rate = 4e-5
  • epochs = 25
  • fp16 = True
  • max_length = 64

Usage

inference.py

from transformers import TrOCRProcessor, VisionEncoderDecoderModel, AutoTokenizer
import requests 
from io import BytesIO
from PIL import Image

processor = TrOCRProcessor.from_pretrained("microsoft/trocr-base-handwritten") 
model = VisionEncoderDecoderModel.from_pretrained("daekeun-ml/ko-trocr-base-nsmc-news-chatbot")
tokenizer = AutoTokenizer.from_pretrained("daekeun-ml/ko-trocr-base-nsmc-news-chatbot")

url = "https://raw.githubusercontent.com/aws-samples/sm-kornlp/main/trocr/sample_imgs/news_1.jpg"
response = requests.get(url)
img = Image.open(BytesIO(response.content))

pixel_values = processor(img, return_tensors="pt").pixel_values 
generated_ids = model.generate(pixel_values, max_length=64)
generated_text = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0] 
print(generated_text)

All the code required for data collection and model training has been published on the author's Github.

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
VisionEncoderDecoderModel
Ревизия весов
7db837d

0 моделей