【问题标题】:Scoring in Match phrase and Match query not as expected匹配短语和匹配查询中的得分不符合预期
【发布时间】:2017-12-27 07:41:18
【问题描述】:

通过查看我的结果,我对如何在 matchphrase 和 match query 中完成评分感到有点困惑

对于匹配短语 我有如下查询

sd.Query(q =>    
 q.MatchPhrase(m => m  
 .Field(p => p.title)  
 .Query("Test Article in Credit")    
  ));

得到的结果如下
一种。 “信用测试文章 - 消费者”分数为 12.64 的文档
湾。 “Test Article with Credit -X”分数 12.64
C。带有“信用测试文章 - XYZ”分数的文档 10.92
d。 “信用测试文章”分数为 10.22 的文档
e. “Test Article in Credit -Z”分数为 09.40 的文档

前两个来自不同的索引,后三个来自不同的索引

在我看来,第四个应该是高分,第二个应该是最低分。 我正在使用标准分析器

同样,我的匹配查询也是如此
标题为“Test”的文档得分高于 标题为“Test Article in Credit”的文件

我知道评分会针对更相关的文章基于 词条出现频率,文本长度。

如何重组我的查询以按正确的顺序提供文档?

【问题讨论】:

  • 相关性分数是按每个分片计算的,因此可以在具有多个分片的索引内和跨索引之间变化。然而,对于 许多 个文档和合理的路由,分片之间的相关性得分差异会减小。在处理少量文档时,重新评分查询有助于消除差异。

标签: elasticsearch nest


【解决方案1】:

从这里很难说为什么您的期望与结果不符,但我会为您做得更好:您可以使用the Explain API找出自己

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-26
    相关资源
    最近更新 更多