|
--- |
|
language: |
|
- ru |
|
tags: |
|
- PyTorch |
|
- Transformers |
|
license: apache-2.0 |
|
widget: |
|
- text: "sbert punc case расставляет точки запятые и знаки вопроса вам нравится" |
|
--- |
|
|
|
# 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) |