【发布时间】:2017-09-15 06:26:56
【问题描述】:
举例:假设我们有一个搜索查询,它返回 2000 个结果,范围从非常相关到几乎不相关。当它按相关性排序时,这很好,因为最相关的结果列在第一页上。
但是,当按其他字段(例如用户评分)排序时,第一页上的结果充满了几乎不相关的结果,这对我们的客户来说是个问题。不知何故,我们只需要显示具有最高评分的“相关”结果。
我只能想出几个解决办法,都是有问题的:
1 - 如果相关性分数低于阈值,则过滤掉 Solr 端的列表。我不知道该怎么做,而且从我读过的内容来看,这无论如何都不是一个好主意。例如如果结果仅返回 10 个列表,我希望将它们全部显示而不是过滤掉任何列表。似乎不可能确定一个可以全面发挥作用的阈值。如果有人可以告诉我,请告诉我如何!
2 - 根据分数过滤掉应用程序端的列表。我可以毫无问题地做到这一点,除了现在我无法实现分页,因为我无法确定过滤结果的总数而不返回整个集合,这会影响性能/带宽等......也有相同的第一点的问题。
3 - 创建一种“组合”排序,聚合相关性和用户评分之间的分数,然后对结果进行排序。首先,我不确定这是否可能,其次,如果结果实际上没有按评级顺序列出,这对用户来说会很奇怪。
以前是如何解决这个问题的?我愿意接受任何想法!
谢谢
【问题讨论】: