【发布时间】:2017-03-20 17:43:36
【问题描述】:
是否可以恢复 Lucene 中的评分功能,以便搜索返回索引中最不相似的文档?
具体来说,我想执行一个 MoreLikeThis 查询(查询本身是一个文档),而不是获取最相关的文档,它应该返回最不相关/相似的文档。
这将如何实现?谢谢!
【问题讨论】:
标签: java search solr lucene similarity
是否可以恢复 Lucene 中的评分功能,以便搜索返回索引中最不相似的文档?
具体来说,我想执行一个 MoreLikeThis 查询(查询本身是一个文档),而不是获取最相关的文档,它应该返回最不相关/相似的文档。
这将如何实现?谢谢!
【问题讨论】:
标签: java search solr lucene similarity
您始终可以按“score, asc”排序:升序而不是降序。
请记住,为了得到考虑,至少必须有一些相似之处,否则该文档根本不会被召回。
或者您可以否定查询:过滤掉所有“像这样”的文档。然后排序变得毫无意义,因为这些文档都与查询相同(完全)不同。
【讨论】:
Sort sort = new Sort(new SortField(null, Type.SCORE, true)); 实现了反向排序,并使用BooleanQuery 实现了否定查询,其中MatchAllDocsQuery 必须发生,MoreLikeThis 查询不能发生。