我正在尝试阅读lucene搜索结果的文档分数。
当我使用以下方法时,我通过命中对象获得一组文档分数: Hits hits = IndexSearcher.search(myQuery);
但是,如果我使用的方法: searcher.search(myQuery,hitsCollector);
我通过hitCollector.hits对象获得了完全不同的文档分数集
我在这里错过了什么吗?
谢谢!
答案 0 :(得分:2)
Hits对象返回的分数被归一化,即它们总是在[0,1]范围内,最高分数接近或等于1.给予HitCollector对象的分数是原始的,即未归一化。此外,Hits对象中的文档列表按降低分数排序。 HitCollector对象以某种随机顺序获取文档分数对。