Это репо предано как пространство для централизации румынских трансформаторов и для обеспечения единой оценки. Взносы приветствуются.
Мы используем Transformers's Transformers's Transformers, отличный инструмент для NLP. Что вы спрашиваете, вы спрашиваете? Вот четкая и сжатая статья о том, что такое Берт и что он может сделать. Также ознакомьтесь с этой резюме различных моделей трансформаторов.
Далее следует список моделей румынских трансформаторов, как в масках, так и в условиях условного языка.
Не стесняйтесь открывать проблему и добавлять свою модель/eval здесь!
| Модель | Тип | Размер | Статья/Цитация/Источник | Предварительно обученный / тонко настроенный | Дата выпуска |
|---|---|---|---|---|---|
| Dumitrescustefan/Bert-Base-Romanian-C-V1 | БЕРТ | 124 м | PDF / CITE | Предварительно обучен | Апрер, 2020 |
| Dumitrescustefan/Bert-Base-Romanian-Unded-V1 | БЕРТ | 124 м | PDF / CITE | Предварительно обучен | Апрер, 2020 |
| Racai/Distillbert-Base-Romanian Cysed | Дистильберт | 81 м | - | Предварительно обучен | Апрер, 2021 |
| Readerbench/Robert-Small | БЕРТ | 19м | Предварительно обучен | Май, 2021 год | |
| Readerbench/Robert-Base | БЕРТ | 114M | Предварительно обучен | Май, 2021 год | |
| Readerbench/Robert-Large | БЕРТ | 341M | Предварительно обучен | Май, 2021 год | |
| Dumitrescustefan/Bert-Base-Romanian-Sner | БЕРТ | 124 м | СПОСКОЛЬНАЯ ПРОСТРАНСТВА | Названное признание организации на RONECV2 | Январь, 2022 год |
| SniSioi/Bert-Legal-Romanian-C-V1 | БЕРТ | 124 м | - | Юридические документы на Marcellv2 | Январь, 2022 год |
| Readerbench/Jurbert-Base | БЕРТ | 111 м | Юридические документы | Октябрь, 2021 год | |
| Readerbench/Jurbert-Large | БЕРТ | 337 м | Юридические документы | Октябрь, 2021 год |
| Модель | Тип | Размер | Статья/Цитация/Источник | Предварительно обученный / тонко настроенный | Дата выпуска |
|---|---|---|---|---|---|
| Dumitrescustefan/GPT-neo-Romanian-780M | GPT-neo | 780 м | еще не / СПОС | Предварительно обучен | СЕП, 2022 |
| readerbench/rogpt2-base | GPT2 | 124 м | Предварительно обучен | Июль, 2021 год | |
| readerbench/rogpt2-medium | GPT2 | 354 м | Предварительно обучен | Июль, 2021 год | |
| readerbench/rogpt2-large | GPT2 | 774M | Предварительно обучен | Июль, 2021 год |
Новое: Проверьте это пространство HF, чтобы играть с румынскими генеративными моделями: https://huggingface.co/spaces/dumitrescustefan/romanian-text-generation
Модели оцениваются с использованием общественного сценария Colab, доступного здесь. Все результаты, сообщаемые, являются средним баллом 5 прогонов с использованием одних и тех же параметров. Для более крупных моделей, если это было возможно, был смоделирован больший размер партии путем накопления градиентов, так что все модели должны иметь такой же эффективный размер партии. Оцениваются только стандартные модели (не созданные для определенной задачи) и которые могут соответствовать 16 ГБ оперативной памяти.
Тесты охватывают следующие поля, и, для краткости, мы выбираем одну метрику из каждого поля:
| Модель | Тип | Размер | Ner/em_strict | Rosts/Pearson | Ro-pos-tagger/upos f1 | Redv2/hamming_loss |
|---|---|---|---|---|---|---|
| Dumitrescustefan/Bert-Base-Romanian-C-V1 | БЕРТ | 124 м | 0,8815 | 0,7966 | 0,982 | 0,1039 |
| Dumitrescustefan/Bert-Base-Romanian-Unded-V1 | БЕРТ | 124 м | 0,8572 | 0,8149 | 0,9826 | 0,1038 |
| Racai/Distillbert-Base-Romanian Cysed | Дистильберт | 81 м | 0,8573 | 0,7285 | 0,9637 | 0,1119 |
| Readerbench/Robert-Small | БЕРТ | 19м | 0,8512 | 0,7827 | 0,9794 | 0,1085 |
| Readerbench/Robert-Base | БЕРТ | 114M | 0,8768 | 0,8102 | 0,9819 | 0,1041 |
| Модель | Тип | Размер | Ner/em_strict | Rosts/Pearson | Ro-pos-tagger/upos f1 | Redv2/hamming_loss | Недоумение |
|---|---|---|---|---|---|---|---|
| readerbench/rogpt2-base | GPT2 | 124 м | 0,6865 | 0,7963 | 0,9009 | 0,1068 | 52,34 |
| readerbench/rogpt2-medium | GPT2 | 354 м | 0,7123 | 0,7979 | 0,9098 | 0,114 | 31.26 |
Используя Transformers's Transformers's Lib, создайте экземпляр модели и замените имя модели по мере необходимости. Затем используйте соответствующую модельную головку в зависимости от вашей задачи. Вот несколько примеров:
from transformers import AutoTokenizer , AutoModel
import torch
# load tokenizer and model
tokenizer = AutoTokenizer . from_pretrained ( "dumitrescustefan/bert-base-romanian-cased-v1" )
model = AutoModel . from_pretrained ( "dumitrescustefan/bert-base-romanian-cased-v1" )
# tokenize a sentence and run through the model
input_ids = tokenizer . encode ( "Acesta este un test." , add_special_tokens = True , return_tensors = "pt" )
outputs = model ( input_ids )
# get encoding
last_hidden_states = outputs [ 0 ] # The last hidden-state is the first element of the output tuple text = text.replace("ţ", "ț").replace("ş", "ș").replace("Ţ", "Ț").replace("Ş", "Ș")
Дайте подсказку для генеративной модели и позвольте ей написать:
tokenizer = AutoTokenizer . from_pretrained ( "dumitrescustefan/gpt-neo-romanian-125m" )
model = AutoModelForCausalLM . from_pretrained ( "dumitrescustefan/gpt-neo-romanian-125m" )
input_ids = tokenizer . encode ( "Cine a fost Mihai Eminescu? A fost" , return_tensors = 'pt' )
text = model . generate ( input_ids , max_length = 128 , do_sample = True , no_repeat_ngram_size = 2 , top_k = 50 , top_p = 0.9 , early_stopping = True )
print ( tokenizer . decode ( text [ 0 ], skip_special_tokens = True ))PS Вы можете проверить все генеративные модели здесь: https://huggingface.co/spaces/dumitrescustefan/romanian-text-generation