我有一个音乐项目是由用户评分在1到5之间,和
我需要一个公式来得到5个得分最高的项目。
但很明显,一个项目从1000个不同的用户那里得到3.5分的平均分会比一个项目从5个用户那里得到4.9分的平均分的平均分要高…换言之,我认为,如果一个项目得到人们的关注来评分,这表明该项目是有趣的。所以在计算中,votescont参数需要有一个幂。(多少功率?我不确定,我让你想办法)。
我认为函数中需要以下参数:votesaverage,votescount。

最佳答案

五星级投票系统的加权投票
您可以使用贝叶斯估计来计算加权投票。
IMDb(Internet电影数据库)使用此计算确定其IMDB Top 250。(注:IMDB使用10星,但公式相同,使用5星)。
计算最高评分250个标题的公式给出了一个真正的贝叶斯估计:
加权额定值(wr)=(v÷(v+m))×r+(m÷(v+m))×c
在哪里?
R=电影的平均值(平均值)=(评分)
V=电影的票数=(票数)
M=需要列入前250名(目前为3000名)的最低票数
C=整个报告的平均投票数(目前为6.9)
IMDb Reference
Wikipedia Reference

关于algorithm - 计算得分最高的项目的最佳算法是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2134504/

10-17 03:13