Search Solr';解释';值与Solr分数不同?
在使用'debugQuery=on'调试Solr返回的分数时,我发现'explain'部分中的顶级值不一定与Solr生成的分数匹配 例如,以下是两个文档的顶级调试信息:Search Solr';解释';值与Solr分数不同?,search,solr,search-engine,recommendation-engine,Search,Solr,Search Engine,Recommendation Engine,在使用'debugQuery=on'调试Solr返回的分数时,我发现'explain'部分中的顶级值不一定与Solr生成的分数匹配 例如,以下是两个文档的顶级调试信息: 114628: Object description: "sum of:" details: Array[2] match: true value: 20.542768 357547: Object description: "sum of:" details: Array[2] match: tr
114628: Object
description: "sum of:"
details: Array[2]
match: true
value: 20.542768
357547: Object
description: "sum of:"
details: Array[2]
match: true
value: 26.517654
但他们有分数:
114628: 20.542767
357547: 13.258826
我希望第二个文档与我的查询最相关,并且调试值似乎一致。然而,在我收到的最终分数中,该文档的分数被调低了
调试值与我看到的最终分数有何差异?有没有办法获得我所期望的行为?这似乎是在优化我的收藏中的核心之后解决的
所有的差异似乎使他们的调试分数正好减半。我猜这是因为我的Solr Cloud集合在两个节点上复制了两个碎片时出现了一些问题
可能是没有减半的分数使用的是IDF因子,该因子仅使用其中一个节点或碎片中的文档计算。然而,仍然奇怪的是,调试结果中出现了正确的值,而不是最终的分数
编辑这似乎只解决了一个案例的问题。我偶尔会在其他查询中看到同样的问题。现在所有受影响的分数正好是调试分数的1/4。
编辑2这已被确定为Lucene中的一个bug。问题可在此处找到:
在解决此问题之前,一个解决方法是在schema.xml中使用BM25相似性
<similarity class="solr.BM25SimilarityFactory"/>
这似乎是在优化我的收藏中的核心后解决的
所有的差异似乎使他们的调试分数正好减半。我猜这是因为我的Solr Cloud集合在两个节点上复制了两个碎片时出现了一些问题
可能是没有减半的分数使用的是IDF因子,该因子仅使用其中一个节点或碎片中的文档计算。然而,仍然奇怪的是,调试结果中出现了正确的值,而不是最终的分数
编辑这似乎只解决了一个案例的问题。我偶尔会在其他查询中看到同样的问题。现在所有受影响的分数正好是调试分数的1/4。
编辑2这已被确定为Lucene中的一个bug。问题可在此处找到:
在解决此问题之前,一个解决方法是在schema.xml中使用BM25相似性
<similarity class="solr.BM25SimilarityFactory"/>
357547中的两个子节点是什么?@MatsLindh每个文档的分数中都有很多因素的提升和组合。357547中的两个子节点是什么?@MatsLindh每个文档的分数中都有很多因素的提升和组合。