问题描述
为推荐目的对这些产品进行排名的合适算法/方法是什么:
- 产品1:1个评分(平均评分5.0)
- 产品2:30个评分(4.9个平均评分)
- 产品3:500个评分(4.7个平均评分)
- 等
直觉上,我将产品2的排名比产品1更好,因为尽管平均得分略低,但30个评分比1个评分“可靠”得多。
我能想到的最好的办法是对两个数字进行归一化:评级和评级计数,并为每个数字分配(任意的,真正的)权重,并将它们取平均值以得到粗略的“排名”或推荐分数。但是我一直认为这会简化问题。
解决方法
一种常用的解决方案是在平均评分附近建立一个置信区间。然后,您无需按产品的平均评分来对其进行排名,而是可以按其较低的置信度范围对其进行排名。
例如:
- 产品1:1个评级,5.0个平均评级,
[4.0,6.0]
置信区间,4.0下限 - 产品2:30个评分,平均评分4.9,
[4.8,5.0]
置信区间,下限4.8 - 产品3:500个评分,平均评分4.7,
[4.65,4.75]
置信区间,下限4.6
按下限排序:首先是Product-2,然后是Product-3,然后是Product-1。
相关:Wilson's confidence interval for 5-star rating。
使用对评分的信心搜索算法时的关键字:
- TrueSkill评分系统
- 威尔逊评分
- ELO rating
- Sonas rating