Задача исправления грамматических ошибок (Grammatical Error Correction, GEC) заключается в моделировании грамматических и других типов ошибок в текстах для того, чтобы предложить поправки в грамматике и правописании, которые смогут улучшить качество письменного вывода в документах, электронных письмах, сообщениях в блогах и даже в неформальных чатах. За последние 15 лет были достигнуты существенные успехи в задаче GEC, что в значительной степени можно объяснить переосмыслением проблемы как задачи «перевода». Когда этот подход был представлен, например, в Google Docs, он привел к значительному увеличению числа принятых предложений по исправлению грамматики.
Однако одной из самых больших проблем для моделей GEC является недостаток данных. В отличие от других задач обработки естественного языка (Natural Language Processing, NLP), таких как распознавание речи и машинный перевод, для GEC доступно очень мало обучающих данных, даже для таких ресурсоемких языков, как английский. Обычно эта проблема решается созданием синтетических данных с использованием ряда методов, от основанных на эвристике случайных «исправлений» на уровне слов или символов до подходов, основанных на моделях. Однако такие методы имеют тенденцию быть упрощенными и не отражают истинное распределение типов ошибок у реальных пользователей.
В статье «Synthetic Data Generation for Grammatical Error Correction with Tagged Corruption Models», поданной на EACL 16th Workshop on Innovative Use of NLP for Building Educational Applications, авторы представили тегированные модели ухудшения качества текстов (tagged corruption models). Вдохновленные популярной техникой синтезирования данных обратным переводом для задачи машинного перевода, авторы создали поход, который позволяет полностью контролировать создание синтетических данных, обеспечивая разнообразные выходные данные, которые более соответствуют распределению ошибок, наблюдаемому на практике. Были использованы тегированные модели ухудшения качества текста для создания нового набора данных из 200 миллионов предложений, опубликованного для того, чтобы предоставить исследователям реалистичные данные для предварительного обучения моделей для задачи GEC. Интегрировав этот новый набор данных в свой пайплайн обучения, авторы смогли значительно улучшить базовые показатели GEC.
Тегированные модели ухудшения качества текста
Идея применения традиционной модели ухудшения качества для задачи GEC состоит в том, чтобы начать с грамматически правильного предложения, а затем «испортить» его, добавив ошибки. Такую модель можно легко обучить, поменяв местами исходные и целевые предложения в существующих наборах данных GEC — метод, который, как показали предыдущие исследования, может быть очень эффективным для создания улучшенных наборов данных GEC.
Обычная модель ухудшения качества текста генерирует грамматически неверное предложение (выделено красным) из правильного предложения (выделено зеленым).
Предлагаемая авторами модель ухудшения качества с использованием тегов основана на следующей идее: в качестве входных данных используется грамматически правильное предложение вместе с тегом, описывающим тип ошибки, которую необходимо воспроизвести. Затем модель генерирует грамматически неправильную версию входного предложения, содержащую данный тип ошибки. Выбор разных типов ошибок для разных предложений увеличивает разнообразие сгенерированных ошибочных предложений по сравнению с обычной моделью ухудшения качества.
Тегированные модели генерируют предложения с ошибками (красный) для грамматически правильного входного предложения (зеленый) в зависимости от тега типа ошибки. Ошибка детерминатива может привести к отбрасыванию артикля «а», тогда как ошибка склонения существительного может привести к неправильной форме множественного числа слова «sheep».
Чтобы использовать эту модель для генерации данных, авторы сначала случайным образом выбрали 200 миллионов грамматически правильных предложений из корпуса C4 и присвоили каждому предложению тег типа ошибки, чтобы их относительная частота соответствовала распределению тегов типов ошибок в небольшом наборе данных для разработки BEA-dev. Поскольку BEA-dev — это тщательно подобранный набор, охватывающий широкий спектр различных уровней владения английским языком, ожидается, что распределение его тегов будет достаточно репрезентативным для ошибок, встречающихся в реальных текстах. Затем авторы использовали модель ухудшения качества с тегами для создания синтетического исходного предложения.
Генерация синтетических данных с тегированными моделями ухудшения качества. Правильные предложения C4 (отмечены зеленым) сочетаются с «испорченными» предложениями (отмечены красным) в синтетическом наборе данных для обучения GEC. Предложения с ошибками генерируются с использованием тегированной модели ухудшения качества текста в соответствии с частотами типов ошибок в наборе данных BEA-dev (см. гистограмму).
Результаты
В экспериментах авторов тегированные модели ухудшения качества текста превзошли модели без тегов на двух стандартных наборах данных (CoNLL-13 и BEA-dev) более чем на три балла F0.5-меры (стандартная метрика в исследованиях GEC, который сочетает в себе точность и полноту, где точность имеет больший вес), тем самым достигая самых высоких результатов на двух широко используемых в академических кругах тестовых наборах данных, CoNLL-14 и BEA-test.
Кроме того, использование тегированных моделей ухудшения качества текста не только демонстрирует прирост на стандартных тестовых наборах данных GEC, но и позволяет адаптировать системы GEC для более продвинутых пользователей языка. Это может быть полезно, например, потому что распределение тегов ошибок для авторов, являющихся носителями английского языка, часто значительно отличается от распределения для тех, кто изучал английский в качестве иностранного языка. Например, носители языка, как правило, делают больше пунктуационных и орфографических ошибок, в то время как ошибки в детерминативе (например, пропущенные или лишние артикли «a», «an» или «the») чаще встречаются в текстах авторов, не являющихся носителями языка.
Заключение
Модели на основе нейронных сетей, работающие с последовательностями, как известно, требуют больших объемов данных, но наличие размеченных корпусов для обучения задаче исправления грамматических ошибок встречается редко. Новый корпус C4_200M представляет собой синтетический набор данных, содержащий различные грамматические ошибки, который обеспечивает достижение самых высоких результатов при использовании его для предварительного обучения систем GEC. Публикуя этот набор данных, авторы надеются предоставить исследователям GEC ценный ресурс для обучения сильных базовых решений в создании систем исправления грамматических ошибок.
Авторы
- Автор оригинала – Felix Stahlberg, Shankar Kumar
- Перевод – Смирнова Екатерина
- Редактирование и вёрстка – Шкарин Сергей