Как использовать процентные (плавающие) нечеткие запросы сходства в Lucene? - PullRequest
0 голосов
/ 29 марта 2019

Lucene, версия: 7.3.0.

Все, что я хочу, это использовать нечеткие запросы процентного (плавающего) сходства (FuzzyQuery класс) в Lucene .

defaultMinSimilarity устарела, поэтому я могу использовать только defaultMaxEdits для своих целей.

Насколько я вижу, максимальное поддерживаемое расстояние для org.apache.lucene.search.FuzzyQuery не может быть больше 2:

MAXIMUM_SUPPORTED_DISTANCE = 2

Что делать, если я хочу найти 55% похожих строк, но для термина с большой длиной? Как я могу сделать это с Lucene FuzzyQuery? Могу ли я вообще обойти ограничение по максимальному двухэтапному расстоянию редактирования?

1 Ответ

1 голос
/ 03 апреля 2019

Можете ли вы обойти это ограничение FuzzyQuery?Вы можете сделать это вообще?Почти наверняка да, но вам нужно немного переосмыслить проблему.FuzzyQuery - это не ответ.

Вместо этого вам следует подумать, как вы можете использовать анализ для решения своей проблемы.Индексирование NGrams было бы самым прямым решением для очень свободного, нечеткого соответствия стилей, см. NGramTokenFilter .

...