我正在审查由Solr调用的Lucene中的DefaultSimilarity类执行的相似性计算。具体来说,我不清楚字段规范化是关于Solr查询何时不引用特定字段时的计算方法。
norm(t,d) = doc.getBoost() · lengthNorm · ∏ f.getBoost() .... field f in d named as t
where
doc.getBoost() = document's boost specified at index time
f.getBoost() = field's boost specified at index time
lengthNorm = number of terms/tokens in the field
我的问题是,如果将solr查询指定为 -
/select?q=indian cricket&rows=5&wt=json
没有引用schema.xml中的特定字段,如何计算规范(t,d)?对于每个领域,这个词都在?如果是这样,怎么样 这些是否合并?
提前感谢您的见解!
答案 0 :(得分:0)
没有字段名称的字段将使用架构中的defaultSearchField
设置,df
(默认字段)查询参数或qf
查询字段参数(如果使用(e)dismax ,这些术语将以字段名称为前缀。每个字段,每个查询字段的术语组合将用于评估规范。
使用Solr的debugQuery
功能查看每个得分部分及其对分数的影响。