Ada*_*dam 3 lucene solr relevance solr5
我有两个索引文件,我试图弄清为什么一个索引高于另一个索引的相关性。所以我跑DebugQuery=True了以获得解释。以下是两个文档中的相关区别。
这可能是相关的;这些文档有两种不同的类型,我使用* _s字段进行区分。所以我的字段module_s有两个模块1和2。我的查询有:
<arr name="filter_queries">
<str>moduleid_s:(1 OR 2)</str>
</arr>
Run Code Online (Sandbox Code Playgroud)
因此,我认为这不会引起问题,但我想添加此信息。
文档1-模块类型= 1
result of: 1.7325882 = score(doc=3513280,freq=1.0),
product of: 0.44456035 = queryWeight,
product of: 0.5 = boost 7.7946143 = idf(docFreq=5286,maxDocs=4721423) 0.1140686 = queryNorm 3.8973072 = fieldWeight in 3513280,
product of: 1.0 = tf(freq=1.0), with freq of: 1.0 = termFreq=1.0 7.7946143 = idf(docFreq=5286, maxDocs=4721423) 0.5 = fieldNorm(doc=3513280)
Run Code Online (Sandbox Code Playgroud)
文档2-模块类型= 2
result of: 0.75800735 = score(doc=174,freq=1.0),
product of: 0.44456035 = queryWeight,
product of: 0.5 = boost 7.7946143 = idf(docFreq=5286,maxDocs=4721423) 0.1140686 = queryNorm 1.7050719 = fieldWeight in 174,
product of: 1.0 = tf(freq=1.0), with freq of: 1.0 = termFreq=1.0 7.7946143 = idf(docFreq=5286, maxDocs=4721423) 0.21875 = fieldNorm(doc=174)
Run Code Online (Sandbox Code Playgroud)
如您所见,说明几乎相同。它们都具有相同的queryWeight,boost,idf和queryNorm。区别在于doc = XXX。对于文档1是351328,对于文档2是174。有人可以解释这个数字是什么吗?它来自哪里?为何与众不同?
使用资源
该号码是医生。它唯一地标识要从索引中检索的文档。它与计分绝对无关。
真正的得分差异在于fieldnorm:
0.5 = fieldNorm0.21875 = fieldNormfieldNorm是基于两个数字计算的。索引文档时对字段的增强作用以及字段的长度(更精确的描述可以norm(t,d)在TFIDFSimilarity docs的小节中找到)
因此,要么该字段在Document 1中较短,要么在被索引时在Document 1中具有更高的提升。
| 归档时间: |
|
| 查看次数: |
270 次 |
| 最近记录: |