/ Модель

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

Контекст
1 024 токена
Параметры
4,2 млн
Лицензия
CC0 1.0
Архитектура
bart · dense
Опубликована
19 июн 2024

dtaec-type-normalizer

ПереводТекст → текст3 профессии

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

174скачиваний за 30 дней0лайковвеса обновлены8 авг 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

DTAEC Type Normalizer — модель aehrm, обученная с нуля для нормализации исторического немецкого написания в современную орфографию. Это encoder-decoder-модель семейства BART с 4,2 млн параметров; она принимает один токен без пробелов и генерирует его нормализованный вариант. Для работы с неоднозначными формами в полном контексте модель используется в составе более крупной системы с дополнительной GPT-моделью.

Модель обучена на лексиконе aehrm/dtaec-lexica, созданном на основе параллельных текстов Немецкого текстового архива, где исторические печатные документы сопоставлены с современными изданиями. В README указаны точность на уровне слов 0,9546 и точность для слов вне обучающего словаря 0,9096 на оценочном наборе. Контекст ограничен 1024 токенами, хотя обычный сценарий модели — обработка отдельного слова. Лицензия — CC0 1.0.

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

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

Ограничения

Модель обрабатывает отдельные токены и не учитывает окружающий контекст, поэтому неоднозначные формы могут требовать контекстной дизамбигуации. На оценочном наборе точность для слов вне обучающего словаря составляет 0,9096.

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

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

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

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

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

Открыть на Hugging Face

DTAEC Type Normalizer

This model is trained from scratch to normalize historic spelling of German to contemporary one. It is type-based, which means that it takes only a single token (without whitespace) as input, and generates the normalized variant. It achieves the following results on the evaluation set:

  • Loss: 0.0308
  • Wordacc: 0.9546
  • Wordacc Oov: 0.9096

Note: This model is part of a larger system, which uses an additional GPT-based model to disambiguate different normalization forms by taking in the full context. See https://github.com/aehrm/hybrid_textnorm.

Training and evaluation data

The model has been trained on the DTA-EC Parallel Corpus Lexicon (aehrm/dtaec-lexica), which is from a parallel corpus of the Deutsche Textarchiv (German Text Archive), who aligned historic prints of documents with their moden editions in contemporary orthography.

Training was done on type-level, where, given the historic form of a type, the model must predict the corresponding normalized type that appeared most frequent in the parallel corpus.

Demo Usage

from transformers import AutoTokenizer, AutoModelForSeq2SeqLM

tokenizer = AutoTokenizer.from_pretrained('aehrm/dtaec-type-normalizer')
model = AutoModelForSeq2SeqLM.from_pretrained('aehrm/dtaec-type-normalizer')

# Note: you CANNOT normalize full sentences, only word for word!
model_in = tokenizer(['Freyheit', 'seyn', 'ſelbstthätig'], return_tensors='pt', padding=True)
model_out = model.generate(**model_in)

print(tokenizer.batch_decode(model_out, skip_special_tokens=True))
# >>> ['Freiheit', 'sein', 'selbsttätig']

Or, more compact using the huggingface pipeline:

from transformers import pipeline

pipe = pipeline(model="aehrm/dtaec-type-normalizer")
out = pipe(['Freyheit', 'seyn', 'ſelbstthätig'])

print(out)
# >>> [{'generated_text': 'Freiheit'}, {'generated_text': 'sein'}, {'generated_text': 'selbsttätig'}]

Training hyperparameters

The following hyperparameters were used during training:

  • learning_rate: 0.0001
  • train_batch_size: 8
  • eval_batch_size: 64
  • seed: 12345
  • optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
  • lr_scheduler_type: linear
  • num_epochs: 20

Training results

Training LossEpochStepValidation LossWordaccWordacc OovGen Len
0.09121.0126280.06980.89840.842112.3456
0.07462.0252560.05700.91240.858412.3442
0.06223.0378840.04930.91950.871712.3512
0.05844.0505120.04650.92210.874912.3440
0.04975.0631400.04360.92740.882112.3552
0.05026.0757680.04110.93110.885812.3519
0.04287.0883960.03960.93360.887812.3444
0.04168.01010240.03720.93390.888712.3471
0.0429.01136520.03650.93960.894412.3485
0.037610.01262800.03530.94120.896212.3485
0.03111.01389080.03390.94390.900812.3519
0.029812.01515360.03370.94540.901312.3479
0.030213.01641640.03220.94700.904312.3483
0.027714.01767920.03160.94790.904012.3506
0.027715.01894200.03230.94880.903012.3514
0.024516.02020480.03140.95130.907212.3501
0.023517.02146760.03130.95200.907112.3511
0.020618.02273040.03100.95310.908412.3502
0.017819.02399320.03070.95450.909412.3507
0.01620.02525600.03080.95460.909612.3516

Framework versions

  • Transformers 4.41.2
  • Pytorch 2.3.0+cu121
  • Datasets 2.19.1
  • Tokenizers 0.19.1

License

The model weights are marked with CC0 1.0 Universal.

NOTE: This model and its inferences or derivative works may be considered an Adaptation of

Conditions on attribution and/or restrictions to commercial use may apply.

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей