Нечеткий поиск + инвертированное индексирование - PullRequest
4 голосов
/ 16 июля 2011

Я изучаю нечеткий поиск и способы извлечения информации из базы данных с использованием инвертированной индексации.Я изучал Inverted Indexing, и я думаю, что это работает только для точного соответствия.Представьте себе ситуацию, у меня есть строка East Lamar Street в моей базе данных.Кто-то ищет East Lmar Street, а я что найду East Lamar Street.

Будет ли использоваться редактирование расстояния?

Как будет работать алгоритм?

Будет ли база данных использовать инвертированное индексирование?

Или он выполнит полное сканирование?

Я видел, что он использует хеш для выполнения операции в O (1).

1 Ответ

1 голос
/ 19 января 2013

Я написал небольшую библиотеку, которая индексирует с использованием Soundex по словам и баллами с использованием расстояния Левенштейна по всей фразе.Существует версия для Scala и C #.Вы можете использовать это, если вы можете позволить себе загружать все свои названия улиц в память.В противном случае вы можете использовать некоторые источники и использовать их по-другому.

https://github.com/rstokes/fuzzysearch

...