File size: 2,421 Bytes
c26af83 37f0390 c26af83 ee364b6 eab0c50 c26af83 37f0390 a45aa62 c7766c8 37f0390 63e8baa 37f0390 63e8baa 37f0390 c7766c8 37f0390 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
---
language:
- ru
tags:
- PyTorch
- Transformers
license: apache-2.0
base_model: ai-forever/sbert_large_nlu_ru
inference: false
---
# SbertPuncCase
SbertPuncCase - модель восстановления пунктуации и регистра для русского языка. Модель способна расставлять точки, запятые и знаки вопроса;
определять регистр - слово в нижнем регистре, слово с первой буквой в верхнем регистре, слово в верхнем регистре.
Модель разработана для восстановления текста после распознавания речи, поэтому работает со строками в нижнем регистре.
В основу модели легла [sbert_large_nlu_ru](https://huggingface.co/sberbank-ai/sbert_large_nlu_ru).
В качестве обучающих данных использованы текстовые расшифровки интервью.
# Как это работает
1. Текст переводится в нижний регистр и разбивается на слова.
2. Слова разделяются на токены.
3. Модель (по аналогии с задачей NER) предсказывает класс для каждого токена. Классификация на 12 классов: 3+1 знака препинания * 3 варианта регистра.
4. Функция декодировки восстанавливает текст соответственно предсказанным классам.
# Как использовать
Код модели находится в файле `sbert-punc-case-ru/sbertpunccase.py`.
Для быстрой установки можно воспользоваться командой:
```
pip install git+https://huggingface.co/kontur-ai/sbert_punc_case_ru
```
Использование модели:
```
from sbert_punc_case_ru import SbertPuncCase
model = SbertPuncCase()
model.punctuate("sbert punc case расставляет точки запятые и знаки вопроса вам нравится")
```
# Авторы
[Альмира Муртазина](https://github.com/almiradreamer)
[Александр Абугалиев](https://github.com/Squire-tomsk) |