在Apache Solr中,如果我有来自两个不同文档的两个字段:
第1场:" tom sawyer是huckleberry finn的一个角色"
第2场:" huckleberry finn中的一个角色是tom sawyer"
*请注意,为简单起见,字段不会显示为如此处所示的标记,但它们位于索引中
我在huckleberry finn搜索"一个角色," (也是标记化的)将字段2得分更高,因为不仅字段中的标记与查询中的顺序相同,而且短语的位置文本是在字段和查询中的开头?
答案 0 :(得分:1)
没有。如果使用短语查询,则除了相互之间的位置之外,位置不用于计算分数。在你的例子中,它们是相同的 - 所以得分应该是相同的。
为了避免为您应该拥有的每个类似问题发布帖子,最好引用Lucene Practical Scoring Formula来显示如何实际计算TFIDF相似度的分数。请记住,相似度计算是可插入的,因此如果您使用不同的相似度,计算将会有所不同。
这些项目也很容易自己测试 - 只需使用文本索引两个文档并发出debugQuery
设置为true的查询 - 您将看到每个元素如何对分数做出贡献。