Несколько индексов Lucene: нормализовать оценки документов? - PullRequest
3 голосов
/ 17 июля 2009

Предположим, у меня есть несколько индексов люцена (не реплик) на нескольких компьютерах.

Я запрашиваю каждый индекс, а затем объединяю результаты. Есть ли способ нормализовать оценки документов, чтобы можно было сортировать их по релевантности?

Я имею в виду, что баллы за документ A по индексу A не будут сравнимы с документом B по индексу B, если я не выполню какую-то нормализацию ... не так ли?

Спасибо Roey

Ответы [ 2 ]

4 голосов
/ 20 июля 2009

Сначала изучите документацию Lucene Сходство . Из всех этих факторов единственным, который отличается от одного индекса к другому, является частота обратных документов (idf) .

Я предлагаю вам использовать Luke или отладчик, чтобы увидеть влияние idfs различных индексов. Вы можете обнаружить, что это имеет незначительное влияние.

Здесь обсуждение использования глобального идентификатора , а здесь - Вики-страница, посвященная дизайну распределенного поиска в Solr Я считаю, что проблема еще не решена.

Подсчет очков Lucene не поддается простой нормализации. Я предлагаю вам попытаться сделать распределение документов как можно более случайным, а затем сравнить, как оцениваются ваши совпадения по двум индексам.

0 голосов
/ 12 марта 2010

для сравнения оценки документа A для индексов X и Y. Я вычисляю x = score(A,X) / max score of any document that is a hit for search on index X и y = score(A,Y) / max score of any document that is a hit for search on index Y.

И x, и y теперь находятся в диапазоне от 0 до 1. Просто добавьте x и y, чтобы получить окончательный результат.

это наивный подход. хотел бы услышать ваши комментарии по этому вопросу.

но я не понимаю, почему вы хотите добавить оценки двух разных документов. Вариант использования?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...