根据分数值查询Apache Solr

时间:2014-04-01 08:40:15

标签: apache solr lucene

我正在进行图像检索任务。我有一个维基百科图像的数据集,其文本描述在xml文件中(每个图像1 xml文件)。我已经在Solr索引了那些xmls。现在,在检索这些内容时,我希望为分数值保留一些阈值,以便得分较低的文档不会出现在结果中(因为它们不是很重要)。例如,我想检索具有大于或等于2.0的相似性得分的所有文档。我已经尝试了范围查询,例如得分:[2.0 TO *]但无法使其正常工作。有谁知道我该怎么做?

1 个答案:

答案 0 :(得分:2)

  

想要这样做的动机是什么?我问的原因是   得分是Lucene根据您的指数确定的相对事物   统计。它只对比较a的结果才有意义   使用索引特定实例进行特定查询。换句话说,
  在b / c上过滤没有办法知道什么是没有用的   良好的截止值将是。

http://lucene.472066.n3.nabble.com/score-filter-td493438.html

另外,请看一下 - http://wiki.apache.org/lucene-java/ScoresAsPercentages

因此,一般来说,切断一些价值是不好的,因为你永远不知道哪个阈值最好。在良好的查询中,它可能是得分= 2,在错误的查询得分= 0.5等。 这两个链接应该解释你为什么不想这样做。

P.S。如果您仍想这样做,请查看此处 - https://stackoverflow.com/a/15765203/2663985

P.P.S。我建议您修复搜索查询,以便他们更高精度地搜索(http://en.wikipedia.org/wiki/Precision_and_recall