我正在尝试为我的产品数据库获得体面的排序算法。用户可以使用0到5的分数来投票选择他们的产品(0.5分也可以是2.5)。我的表结构目前看起来是这样的:按用户分级对产品进行排序/排名的公式
[ProductID] [Title] ... [NumberOfVotes] [TotalPoints] [FinalScore]
每当用户投票,我用一个非常简单的公式一样 (TotalPoints/NumberOfVotes)= FinalScore正在计算finalscore。
然后我对FinalScore和NumberOfVotes进行排序。
这虽然有效,但并不公平,因为只有1票5星的产品很容易进入排行榜。
我不擅长统计或算法来获得公平的产品排名。 我正在寻找一个相对容易实现的公式,这比我现在使用的方法更公平。
这怎么办?
您可以试着用一堆平均分数(约2.5)来“欺骗”每一款新产品。通过这种方式,需要多个真正的投票才能移动产品评级,但这可能会给客户留下不好的印象。或者,在产品至少有N张选票之前,不要将产品放入排名靠前的产品。 – StuartLC 2010-12-21 13:32:28