Neo4j 是否可以将Lucene得分设置为0到1之间的数字?
似乎该数字可以远远高于或低于1,而不是在0-1的范围内。Neo4j正在使用Lucene全文搜索,分数不在0-1之间。这在Lucene中是预期的吗?我相信Lucene的默认开箱即用评分确实在0到1之间,但是一旦涉及到提升或其他自定义评分,那么评分值可以是任何适合浮动的正值Neo4j 是否可以将Lucene得分设置为0到1之间的数字?,neo4j,lucene,Neo4j,Lucene,似乎该数字可以远远高于或低于1,而不是在0-1的范围内。Neo4j正在使用Lucene全文搜索,分数不在0-1之间。这在Lucene中是预期的吗?我相信Lucene的默认开箱即用评分确实在0到1之间,但是一旦涉及到提升或其他自定义评分,那么评分值可以是任何适合浮动的正值 但是,通过将每个命中的分数除以查询中任何命中的最大分数,您可以轻松地将分数标准化为0到1的范围。Related:.RonC,用于将其转换为0到1的范围(0,1]在上面的示例中,它并没有真正说明查询与文档的相关性或相似性。最大浮动
但是,通过将每个命中的分数除以查询中任何命中的最大分数,您可以轻松地将分数标准化为0到1的范围。Related:.RonC,用于将其转换为0到1的范围(0,1]在上面的示例中,它并没有真正说明查询与文档的相关性或相似性。最大浮动始终为1,即使排名靠前的文档与查询有点相似。我希望浮动能够真正表明查询与文档的相似性。如果查询为“ab”,排名靠前的文档为“AXXXYB”,则它们的“相似性”很小分数应该是0.02,如果排名靠前的文档是“abc”或“cab”,那么分数可能会高达0.9。这样,浮动真的让人感觉到了相似性。我明白了。你真正想要的是让Lucene给文档打分的绝对范围是0到1,其中0是“根本不匹配”,1是“完美匹配”。我想你需要创建你自己的自定义评分来做到这一点,你必须定义什么是“完美匹配”“evens的意思是。假设一个文档包含搜索短语一次,另一个文档包含搜索短语3次,而另一个文档包含搜索短语5次。每个文档应该得到多少分数?即使包含搜索短语5次,在绝对量表上也不能是1,因为某些文档理论上可以包含更多次。