НЛП-способ устранения опечаток?

#nlp

Вопрос:

Пример: «Средний возраст участников карты 5 лет, присоединившихся в прошлом году». Очевидно, что «5» — это опечатка, и я хотел бы нормализовать это предложение до «среднего возраста участников карты, присоединившихся в прошлом году» перед дальнейшей обработкой. Какую технику НЛП я могу использовать для этой задачи?

Ответ №1:

Стандартизация ввода путем удаления опечаток не является обычным способом предварительной обработки текста в НЛП.

Автоматическая коррекция грамматики (которая включает исправление очевидных опечаток) — довольно сложная задача, и хорошо работающие решения требуют больших вычислительных затрат. В настоящее время наилучшие результаты достигаются с помощью больших моделей глубокого обучения. Вы можете загрузить и напрямую использовать некоторые модели из центра моделей HuggingFace. В качестве более легкого решения вы можете попробовать применить проверку орфографии или написать некоторые правила, которые хорошо подходят для ваших данных.

Вместо устранения ошибок на этапе предварительной обработки обычный подход заключается в том, чтобы сделать модели и алгоритмы NLP устойчивыми к исходному шуму. В простых статистических моделях это обычно достигается за счет учета только слов (или n-граммов слов), которые появляются в обучающих данных всего несколько раз. Большие нейронные модели обычно становятся надежными благодаря крупномасштабной предварительной подготовке на всех доступных данных.