use*_*332 11 tf-idf elasticsearch
我正在使用ES搜索使用模糊搜索技术的大量人名.
TF适用于评分,但在这种情况下我并不需要IDF.这真的是在稀释分数.我仍然希望将TF和Field Norm应用于分数.
如何为我的查询禁用/抑制IDF,但保留TF和Field Norm?
我遇到了禁用IDF计算线程,但它没有帮助我.在这种情况下,似乎常数分数查询也无法帮助我.
小智 5
创建索引时,我们可以将自己的相似度计算方法放入设置部分,如果您只需要禁用IDF并将其他设置用作默认设置,则可以编写一个简单的脚本,例如:
"script": {"source": "double tf = Math.sqrt(doc.freq); double idf = 1.0; double norm = 1/Math.sqrt(doc.length); return query.boost * tf * idf * norm;"`}
Run Code Online (Sandbox Code Playgroud)
这显示在这里。
| 归档时间: |
|
| 查看次数: |
2134 次 |
| 最近记录: |