Я работаю с Hibernate Search уже несколько месяцев, но все же я не могу переварить релевантность, которую он приносит. Я в целом удовлетворен результатами, которые он возвращает, но даже самый простой тест не соответствует моим ожиданиям.Понимание алгоритма скоринга Apache Lucene
Первое испытание использовало термин частота (tf). данных:
- слово
- слово слово
- слово слово слово
- слово слово слово слово
- слово слово слово слово слово
- слово слово слово слово слово слово
Результаты:
- слово
- слово слово слово слово
- слово слово слово слово слово
- слово слово слово слово слово слово
- слово слово
- слово слово слово
Я действительно смущенный этим эффектом. Мой запрос является довольно сложным, но этот тест не имеет какого-либо другого поля, то для нее может быть упрощена, как показано ниже: booleanjunction.should (phraseQuery) .Should (keywordQuery) .Should (fuzzyQuery)
Я анализаторы как показано ниже:
StandardFilterFactory
LowerCaseFilterFactory
StopFilterFactory
SnowballPorterFilterFactory for english
Моего Объяснение объекта https://jsfiddle.net/o51kh3og/
Отлично! Мне не хватало точки fieldNorm. Я думал, что это какой-то нормализационный фактор и динамически основывается на оценке другого документа. Теперь я понимаю, что он основан на длине поля. Благодаря! – Tejas