Автоматическая правка ошибок правописания
Аннотация
Рассмотрены информационное обеспечение и алгоритмы программного приложения поиска и исправления орфографических и грамматических ошибок в текстах, написанных на русском языке. Работа приложения обеспечивается базой данных, для заполнения таблиц которой используются морфологический словарь русского языка, содержащий более четырех миллионов словоформ, и тексты различных жанров.
Перед правкой текст разбивается на фрагменты. В качестве разделителей текста на фрагменты используются знаки препинания, полученные фрагменты разбираются и правятся независимо друг от друга.
Правка текста выполняется в два этапа. На первом этапе с использованием метода орфографической коррекции на основе алгоритма симметричного удаления исправляются орфографические ошибки и ошибки, вызванные неправильным словообразованием. Для каждого слова с ошибкой на первом этапе правки текста формируется список кандидатов на замену. В качестве замещающего слова выбирается кандидат с наименьшей ценой замены — показателя, характеризующего близость заменяемого слова и кандидата. При наличии нескольких равноправных замен предпочтение отдается кандидату с наибольшим числом вхождений в тексты, ранее использованных для заполнения базы данных приложения.
На втором этапе правки исправляются некоторые виды грамматических ошибок. Правка выполняется на основе прецедентов — случаев употребления пары «слово – следующее слово» в прошедших редакционную правку текстах. Используя найденные в базе данных прецеденты, приложение выделяет слова, подлежащие замене. Так же как и на первом этапе, выбор замещающего слова осуществляется из списка кандидатов, однако замены не будет, если ее цена превысит допустимое значение.
Правка текста может выполняться как автоматически, так и в режиме интерактивного выбора замещающего слова. На тестовом наборе данных, содержащем как орфографические, так и грамматические ошибки, приложение исправляет больше слов, чем Microsoft Word и Яндекс-спеллер.
Литература
2. Уроки литературы. Грамматические ошибки [Электрон. ресурс] http://chitaj.ucoz.net/index/grammaticheskie_oshibki/0-97 (дата обращения 01.09.2018).
3. Левченко О.С., Тишина Т.Н. Готовимся к ГИА по русскому языку. 9 класс (пособие для учителя): комментарии, рекомендации, дидактические материалы. Омск: БОУ ДПО «ИРООО», 2009.
4. Спеллер [Электрон. ресурс] https://tech.yandex. ru/speller/ (дата обращения 01.09.2018).
5. Поддержка системы автоматической правки текста [Электрон. ресурс] http://100byte.ru/stdntswrks/sql/ sql.html (дата обращения 01.09.2018).
6. Титов Д.А. Методы автоматического поиска и исправления ошибок в предложении [Электрон. ресурс] http://100byte.ru/stdntswrks/spellCh/spellCh.html (дата обращения: 01.09.2018).
7. Garbe W. 1000x Faster Spelling Correction algorithm (2012). [Электрон. ресурс] https://medium.com/@ wolfgarbe/1000x-faster-spelling-correction-algorithm- 2012-8701fcd87a5f (дата обращения 01.09.2018).
8. Варшавский П.Р., Алехин Р.В. Метод поиска решений в интеллектуальных системах поддержки принятия решений на основе прецедентов // Information Models and Analyses. 2013. V. 2. No. 4. Pp 385—392.
9. Знаки препинания [Электрон. ресурс] https://dic.academic.ru/dic.nsf/ruwiki/28257 (дата обращения 01.09.2018).
10. Фонетический разбор слов. [Электрон. ресурс] http://phoneticonline.ru/ (дата обращения 01.09.2018).
11. Словарь языка Пушкина / Отв. ред. акад. АН СССР В.В. Виноградов. М.: Азбуковник, 2000.
12. Mikolov T., Sutskever I., Chen K., Corrado G., Dean J. Distributed Representations of Words and Phrases and their Compositionality // Proc Advances in Neural Information Proc. Syst. 2013. Pp. 3111—3119.
---
Для цитирования: Бартеньев О.В., Титов Д.А. Автоматическая правка ошибок правописания // Вестник МЭИ. 2019. № 5. С. 117—128. DOI: 10.24160/1993-6982-2019-5-117-128.
#
1. Uroki Literatury. Vse Vidy Oshibok [Elektron. Resurs] http://chitaj.ucoz.net/index/vse_vidy_oshibok/0-99 (Data Obrashcheniya 01.09.2018). (in Russian).
2. Uroki literatury. Grammaticheskie Oshibki [Elektron. Resurs] http://chitaj.ucoz.net/index/grammaticheskie_ oshibki/0-97 (Data Obrashcheniya 01.09.2018). (in Russian).
3. Levchenko O.S., Tishina T.N. Gotovimsya k GIA po Russkomu Yazyku. 9 klass (Posobie dlya Uchitelya): Kommentarii, Rekomendatsii, Didakticheskie Materialy. Omsk: BOU DPO «IROOO», 2009. (in Russian).
4. Speller [Elektron. Resurs] https://tech.yandex.ru/speller/ (Data Obrashcheniya 01.09.2018). (in Russian).
5. Podderzhka Sistemy Avtomaticheskoy Pravki Teksta [Elektron. Resurs] http://100byte.ru/stdntswrks/sql/sql. html (Data Obrashcheniya 01.09.2018). (in Russian).
6. Titov D.A. Metody Avtomaticheskogo Poiska i Ispravleniya Oshibok v Predlozhenii [Elektron. Resurs] http://100byte.ru/stdntswrks/spellCh/spellCh.html (Data Obrashcheniya: 01.09.2018). (in Russian).
7. Garbe W. 1000x Faster Spelling Correction algorithm (2012). [Elektron. resurs] https://medium.com/@ wolfgarbe/1000x-faster-spelling-correction-algorithm-2012-8701fcd87a5f (Data Obrashcheniya 01.09.2018).
8. Varshavskiy P.R., Alekhin R.V. Metod Poiska Resheniy v Intellektual'nyh Sistemah Podderzhki Prinyatiya Resheniy Na Osnove Pretsedentov. Information Models and Analyses. 2013;2;4:385—392. (in Russian).
9. Znaki Prepinaniya [Elektron. Resurs] https://dic. academic.ru/dic.nsf/ruwiki/28257 (Data Obrashcheniya 01.09.2018). (in Russian).
10. Foneticheskiy Razbor Slov. [Elektron. Resurs] http://phoneticonline.ru/ (Data Obrashcheniya 01.09.2018). (in Russian).
11. Slovar' Yazyka Pushkina. Otv. Red. Akad. AN SSSR V.V. Vinogradov. M.: Azbukovnik, 2000. (in Russian).
12. Mikolov T., Sutskever I., Chen K., Corrado G., Dean J. Distributed Representations of Words and Phrases and their Compositionality. Proc Advances in Neural Information Proc. Syst. 2013:3111—3119.
---
For citation: Barten′ev O.V., Titov D.A. Automatic Correction of Spelling Errors. Bulletin of MPEI. 2019;5:117—128. (in Russian). DOI: 10.24160/1993-6982-2019-5-117-128.