就像卡尔·布罗曼(Karl Broman)在回答中所说的那样,贝叶斯方法可能比使用置信区间好得多。
置信区间问题
为什么使用置信区间不能很好地起作用?一个原因是,如果您对某项的评价不高,则您的置信区间将非常宽,因此置信区间的下限将很小。因此,没有很多评级的项目将最终出现在列表的底部。
但是,凭直觉,您可能希望没有很多评分的商品接近平均商品,因此您希望将商品的预估评分朝所有商品的平均评分摆动(即,将预估评分推向先前的) 。这正是贝叶斯方法的作用。
贝叶斯方法一:评级的正态分布
如卡尔的回答所示,将估算的等级移向优先级的一种方法是使用形式的估算值:w∗R+(1−w)∗C
- R是各项额定值的平均值。
- C是所有项目的均值(或您希望将评分缩小到的任何平均值)。
- 请注意,该公式只是和的加权组合。RC
- w=vv+m是分配给的权重,其中是啤酒的评论数,是某种恒定的“阈值”参数。Rvm
- 请注意,当很大时,即当我们对当前项目有很多评级时,则非常接近1,因此我们的估计评级非常接近,而对先前的却很少关注。但是,当很小时,非常接近0,因此估计的等级对先前的具有很大的权重。vwRCvwC
实际上,可以给此估计值做贝叶斯解释,即当单个评级来自以该均值为中心的正态分布时,该项目的平均评级的后验估计。
但是,假设评级来自正态分布有两个问题:
- 正态分布是连续的,但等级是离散的。
- 项目的评级不一定遵循单峰高斯形状。例如,您的商品可能是两极分化的,因此人们倾向于给它很高的评价或给它非常低的评价。
贝叶斯方法二:评级的多项式分布
因此,让我们假设多项式分布,而不是假设评级的正态分布。也就是说,给定某些特定项目,随机用户给它1星的概率为,随机用户给它2星的概率为,依此类推。p1p2
当然,我们不知道这些概率是多少。随着我们对该商品获得越来越多的评分,我们可以猜测接近,其中是为其授予1星的用户数,是获得评分的用户总数物品,但是当我们第一次开始时,我们什么都没有。因此,我们将这些概率放在Dirichlet上。p1n1nn1n Dir(α1,…,αk)
这个狄里克雷特先验是什么?我们可以将每个参数视为某个虚拟人员给次数的“虚拟计数” 。例如,如果,,而所有其他都等于0,那么我们可以认为这是说两个虚拟人给了项目1星,一个虚拟人给了项目2星。因此,在获得任何实际用户之前,我们可以使用此虚拟发行版来估算商品的评分。αiiα1=2α2=1αi
[选择参数的一种方法是将设置为等于星总票数的。(请注意,参数不一定是整数。)]αiαiiαi
然后,一旦获得实际评分,只需将其计数添加到Dirichlet的虚拟计数中即可。每当您要估算商品的等级时,只需取该商品所有等级(虚拟等级和实际等级)的平均值即可。