Базовый алгоритм автоматической корректировки орфографии текстов на русском языке: разработка, оценка и перспективы
DOI:
https://doi.org/10.17072/1993-0550-2025-1-91-108Ключевые слова:
орфографические ошибки, грамматические ошибки, русский язык, автоматическая корректировка текста, обработка естественного языка, точность, полнота, F1 ScoreАннотация
Автоматическая проверка орфографических ошибок и корректировка текстов на русском языке являются актуальной задачей в области обработки естественного языка. Целью исследования является разработка, оценка и описание программы ЭВМ для исправления орфографических ошибок с высокой точностью.Предложенный метод основан на построчной обработке текста с использованием правил для выявления ошибок в орфографии и капитализации, а также вероятностной модели предложения слов-кандидатов для исправления ошибок. Данный алгоритм работает на уровне отдельных слов, что ограничивает его способность учитывать контекст. Для проверки качества модели использованы метрики: Precision, Recall и F1 Score. Для удобства использования и доработки программы в ее алгоритм были интегрированы автоматический анализ ошибок и формирование детализированного отчета, что позволяет выявлять сильные и слабые стороны алгоритма. Детализированное описание разработки обеспечивает воспроизводимость алгоритма и соответствует идеологии "Open-source" (Открытого программного обеспечения).Результаты показали, что алгоритм обладает высокой точностью (Precision = 1.00), т.е. исправляет только те орфографические ошибки, которые были указаны в контрольном тексте. Однако полнота исправлений (Recall = 0.84) подчеркивает необходимость даль-нейшей доработки, включая обработку контекстозависимых ошибок и работу с устойчивыми выражениями. Значение F1 Score = 0.91 подтверждает сбалансированность работы алгоритма и обосновывает его использование в качестве базовой модели корректировки текста на русском языке.Выводы исследования подчеркивают потенциал алгоритма в задачах автоматической корректировки русскоязычного текста, а также предлагают перспективные направления для улучшения исходного кода, такие как использование n-грамм и языковых моделей. Данная работа закладывает основу для дальнейших исследований в области автоматической корректировки текстов на русском языке.Библиографические ссылки
Zukarnain N. et al. Spelling Checker Algorithm Methods for Many Languages // 2019 International Conference on Information Management and Technology (ICIMTech). IEEE, 2019. P. 198–201. DOI: 10.1109/ICIMTech.2019.8843801.
Hamrouni B.M. Logic compression of dictionaries for multilingual spelling checkers // Proceedings of the 15th conference on Computational linguistics Morristown, NJ, USA: Association for Computational Linguistics, 1994. P. 292. DOI: 10.3115/991886.991936.
Lokhande H.A. et al. Enhancing Text Quality with Bi-LSTM: An Approach for Automated Spelling and Grammar Correction // 2024 International Conference on Advances in Data Engineering and Intelligent Computing Systems (ADICS). IEEE, 2024. P. 01–07. DOI: 10.1109/ADICS58448.2024.10533521.
Mangu L., Brill E. Automatic Rule Acquisition for Spelling Correction // Proceedings of the Fourteenth International Conference on Machine Learning (ICML '97). San Francisco, CA, USA: Morgan Kaufmann Publishers Inc, 1997. P. 187–194.
Davrondjon G., Janowski T. Developing a Spell-Checker for Tajik Using RAISE // Formal Methods and Software Engineering. ICFEM 2002. Lecture Notes in Computer Science / ed. George C., Miao H. Berlin, Heidelberg: Springer, 2002. Vol. 2495. P. 401–405. DOI: 10.1007/3-540-36103-0_41 EDN: XNBRMD.
Atawy S.M. El, ElGhany A.A. Automatic Spelling Correction based on n-Gram Model // Int J Comput Appl. 2018. Vol. 182, № 11. P. 5–9.
Chen K.-Y., Wang H.-M., Chen H.-H. A Probabilistic Framework for Chinese Spelling Check // ACM Transactions on Asian and Low-Resource Language Information Pro-cessing. 2015. Vol. 14, № 4. P. 1–17. DOI: 10.1145/2826234.
Sasu L. A Probabilistic Model for Spelling Correction // Bulletin of the Transilvania University of Brasov. Series III: Mathematics, Informatics, Physics. 2011. Vol. 4(53), № 2. P. 141–146.
Kashyap R.L., Oommen B.J. Spelling correction using probabilistic methods // Pattern Recognit Lett. 1984. Vol. 2, № 3. P. 147-154. DOI: 10.1016/0167-8655(84)90038-2
Chen S.F. Building Probabilistic Models for Natural Language. 1996.
Flachs S., Lacroix O., Søgaard A. Noisy Channel for Low Resource Grammatical Error Correction // Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications. Stroudsburg, PA, USA: Association for Computational Linguistics, 2019. P. 191–196. DOI: 10.18653/v1/W19-4420.
Li Y., Anastasopoulos A., Black A.W. Towards Minimal Supervision BERT-Based Grammar Error Correction (Student Abstract) // Proceedings of the AAAI Conference on Artificial Intelligence. 2020. Vol. 34, № 10. P. 13859–13860. DOI: 10.1609/aaai. v34i10.7202 EDN: QHFSCJ.
Khabutdinov I.A. et al. RuGECToR: Rule-Based Neural Network Model for Russian Language Grammatical Error Correction // Programming and Computer Software. Pleiades Publishing, 2024. Vol. 50, № 4. P. 315–321. DOI: 10.1134/ S0361768824700129 EDN: XCUPYE.
Martynov N. et al. A Methodology for Generative Spelling Correction via Natural Spelling Errors Emulation across Multiple Domains and Languages. 2023.
Kaggle: Your Machine Learning and Data Science Community [Electronic resource]. URL: https://www.kaggle.com/ (accessed: 07.02.2025).
Hugging Face – The AI community building the future. [Electronic resource]. URL: https://huggingface.co/ (accessed: 07.02.2025).
Language-tool-python.PyPI [Electronic resource]. URL: https://pypi.org/project/language-tool-python/ (accessed: 11.12.2024).
Hunspell download | SourceForge.net [Electronic resource]. URL: https://sourceforge.net/projects/hunspell/ (accessed: 02.02.2025).
Goslin K., Hofmann M. English Language Spelling Correction as an Information Retrieval Task Using Wikipedia Search Statistics // Proceedings of the 13th Conference on Lan-guage Resources and Evaluation (LREC 2022). Marseille: European Language Resources Association (ELRA), 2022. P. 458–464.
SymSpell, Github [Electronic resource]. URL: https://github.com/wolfgarbe/ SymSpell (ac-cessed: 02.02.2025).
Audah H.A., Yuliawati A., Alfina I. A Comparison Between SymSpell and a Combination of Damerau-Levenshtein Distance with the Trie Data Structure // 2023 10th International Conference on Advanced Informatics: Concept, Theory and Application (ICAICTA). IEEE, 2023. P. 1–6. DOI: 10.1109/ICAICTA59291.2023.10390399.
Проверка орфографии, грамматики и стилистики онлайн – LanguageTool [Electronic resource]. URL: https://languagetool.org/ru (accessed: 02.02.2025).
Sorokin A.A., Shavrina T. Automatic spelling correction for Russian social media texts // Dialogue, International Conference on Computational Linguistics. Moscow: URL: https://www.researchgate.net/publication/303813582_Automatic_spelling_correction_for_ Russian_social_media_texts, 2016. EDN: XMWHDK (accessed: 02.02.2025).
Pandas 2.2.3 documentation [Electronic resource]. URL: https://pandas.pydata. org/docs/ (accessed: 02.02.2025).
Загрузки
Опубликован
Как цитировать
Выпуск
Раздел
Лицензия
Copyright (c) 2025 Екатерина Владимировна Исаева, Бехруз Зафарович Сафарбеков

Это произведение доступно по лицензии Creative Commons «Attribution» («Атрибуция») 4.0 Всемирная.
Публикация статьи в журнале осуществляется на условиях лицензии Creative Commons Attribution 4.0 International (CC BY 4.0).