CoolFace
Datasetpublic

melsmm/spell-correction-ru

Spell Correction RU — датасеты для коррекции ошибок в русском тексте Набор данных для обучения моделей исправления орфографических, пунктуационных и регистровых ошибок в русскоязычных текстах. Каждый пример — пара «правильный текст» → «текст с ошибкой». Датасет использовался для обучения модели melsmm/Spell-Corrector-RU-4B. 📦 Код генерации, ноутбуки и полное описание проекта: github.com/melsmm/llm-spell-corrector Состав Датасет содержит две конфигурации… See the full description on the dataset page: https://huggingface.co/datasets/melsmm/spell-correction-ru.

sourceHugging Faceapache-2.0updated 4mo agoView on Hugging Face
1likes68downloads
Dataset Card

Spell Correction RU — датасеты для коррекции ошибок в русском тексте

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

Каждый пример — пара «правильный текст» → «текст с ошибкой». Датасет использовался для обучения модели `melsmm/Spell-Corrector-RU-4B`.

📦 Код генерации, ноутбуки и полное описание проекта: github.com/melsmm/llm-spell-corrector

Состав

Датасет содержит две конфигурации (сабсета):

ФайлConfigПримеровНазначение
synth_spell_correction_1m.csvsynth_1m~1 000 000Синтетически сгенерированные ошибки. Для основного обучения (Stage 1).
spell_correction_30k.csvready_30k~30 800Готовые пары «ошибка → исправление» из открытых датасетов. Для финального дообучения (Stage 2).

Структура данных

Оба файла имеют одинаковые колонки:

КолонкаТипОписание
textstringЭталонный (правильный) текст — target.
text_corruptstringТекст с ошибками — input модели.
sourcestringИсточник исходного текста (nerus, gazeta, wikipedia, RUSpellRU, MultidomainGold, russian_gec_dataset, mixed_raw и др.).
methodstringСпособ внесения ошибки (ready_pair, sbsc, char_aug, word_aug, punct_corruption, lowercase, identity, mixed_*).

Пример строки:

text:         Об этом сообщает корреспондент «Ленты.ру».
text_corrupt: об этом сообщаеп корреспондент лертыру.
source:       mixed_raw
method:       mixed_lower_char_punct

Как создавался

synth_1m — синтетический датасет (~1 млн)

Чистые тексты из корпусов nerus, gazeta, wikipedia портились набором алгоритмов: статистическим (SAGE: SBSC, CharAug, WordAug) и собственным алгоритмом внесения пунктуационных ошибок. Часть примеров оставлена без изменений (identity), чтобы модель не «переисправляла» корректный текст.

КатегорияИсточникАлгоритмПримеров
Готовые парыrussiangecdataset~25 000
Готовые парыRUSpellRU~2 000
Готовые парыMultidomainGold~3 569
Чистые (без изменений)gazeta / wikipedia / nerusidentity~50 000
SBSC (статистическая порча)nerusSBSCCorruptor~200 000
CharAugnerus / wikipediaCharAugCorruptor~150 000
WordAugnerus / gazetaWordAugCorruptor~100 000
Punctuation corruptionnerus / wikipedia / gazetacustom~150 000
Lowercasenerus / gazetalowercase~100 000
Mixed (2–3 алгоритма)nerusmulti-corrupt~219 431
ИТОГО~1 000 000

ready_30k — готовые пары (~30 тыс.)

Объединение реальных пар «ошибка → исправление» из открытых датасетов:

ИсточникПримеров
russiangecdataset~25 000
RUSpellRU~2 000
MultidomainGold~3 569
ИТОГО~30 569

Загрузка

python
from datasets import load_dataset

# Синтетический датасет (~1 млн)
synth = load_dataset("melsmm/spell-correction-ru", "synth_1m", split="train")

# Готовые пары (~30 тыс.)
ready = load_dataset("melsmm/spell-correction-ru", "ready_30k", split="train")

print(synth[0])
# {'text': '...', 'text_corrupt': '...', 'source': '...', 'method': '...'}

Назначение и применение

  • Обучение моделей spell / punctuation correction для русского языка.
  • Двухстадийное обучение: сначала на большом синтетическом наборе (synth_1m), затем дообучение на качественных готовых парах (ready_30k).
  • Аугментация данных для GEC-задач.

Подача в модель: text_corrupt как вход, text как целевой ответ.

Источники и лицензии

Датасет собран на основе открытых корпусов и датасетов:

При использовании учитывайте лицензии исходных корпусов.

Ограничения

  • Большая часть synth_1mсинтетические ошибки; их распределение может отличаться от реальных опечаток пользователей.
  • Тексты в основном из новостного, энциклопедического и общего доменов; узкоспециализированные домены (например, медицина) представлены слабо.

Ссылки

  • 🔗 Проект на GitHub: https://github.com/melsmm/llm-spell-corrector
  • 🤖 Обученная модель: https://huggingface.co/melsmm/Spell-Corrector-RU-4B