Английская лексика для коррекции поисковых запросов

StackOverflow https://stackoverflow.com/questions/2156538

Вопрос

Я создаю корректор орфографии для запросов поисковых систем, реализуя метод, описанный в разделе "Исправление орфографии как итеративный процесс, использующий коллективные знания веб-пользователей.".

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

Модификация поиска Витерби такова, что если два соседних слова встречаются в доверенном словаре, исправить можно не более одного.Это особенно важно, чтобы избежать исправления правильно написанных однословных запросов на более часто встречающиеся слова.

Мой вопрос заключается в том, где найти такой словарь.Он должен быть на английском языке и содержать имена собственные (имена/фамилии, места, названия брендов и т. д.), которые могут появиться в поисковых запросах, а также распространенные и необычные английские слова.Даже толчок в правильном направлении был бы полезен.

Кроме того, если кто-то читает это и имеет какие-либо предложения по улучшению методологии, изложенной в статье, я также открыт для них, учитывая, что это мой первый опыт НЛП.

Это было полезно?

Решение

Лучшим словарем для этой цели, вероятно, является 5-граммовый набор данных Google Web 1T.

http://www.ldc.upenn.edu/Catalog/CatalogEntry.jsp?catalogId=LDC2006T13

К сожалению, это не бесплатно, если ваш университет не является членом LDC.

Вы также можете попробовать использовать корпуса в таких пакетах, как Python NLTK, но пакет Google, похоже, лучше всего подходит для ваших целей, поскольку он уже связан с поисковыми запросами.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top