如何计算分数?

时间:2009-06-15 07:11:03

标签: logic blogs weighted-average

这个问题与逻辑关系比任何编程语言都要多。如果问题不适合论坛,请告诉我,我会删除它。

我必须编写一个逻辑来计算博客奖励网站的博客分数。博客可能会被提名为多个奖项类别,并由评审团进行同行评审或评级为-1至5级(-1表示他们完全不喜欢的博客)。现在,一个或多个陪审员可以对博客进行评级。计算博客最终得分时的一个标准是,如果博客被更多人评为肯定,那么它应该获得更多的权重(反之亦然)。类似地,即使是一个陪审员,评分为-1的博客也应该影响其得分(-1在这里是一种否决权)。最后,我还希望根据博客的Technorati等级获得额外分数(以便最终得分基于陪审员评级+ Technorati排名的组合)。

示例:博客在A类中被评为6位陪审员。 2分为3分,3分为2分,1分为4分。(我曾将得分计算为(2 * 3 + 3 * 2 + 1 * 4)/ 6 = 16/6 = 2.67得到加权平均但我对此不满意,主要是因为当陪审员评级为-1时它不能很好地工作。此外,我还需要添加Technorati排名等级标准。)

你能否帮我决定计算最终得分的最佳方法(保持评级方法与上述相同,现在无法改变)?

4 个答案:

答案 0 :(得分:5)

如果您想更强烈地加权-1等级的效果,请使用相同的平均分数计算,但只要看到-1,就用-10替换。如果您不希望负评级强烈加权,则可以选择-10以外的值。

答案 1 :(得分:4)

您可能会考虑使用威尔逊得分间隔的下限作为评分。

有关详细信息,请参阅http://www.evanmiller.org/how-not-to-sort-by-average-rating.html。虽然在那里,它被用于更简单的伯努利案例。

要点是,如果你有很多评分,你对你的得分有更高的信心。然后,您可以将当地评分和Technorati评分的分数结合起来,通过当地和Technorati的选民数量对分数进行加权。

至于想要让单个-1投票产生高影响力,只需将其重新映射到与您想要的影响成比例的大负值,然后再将其输入您的评分公式。

答案 2 :(得分:4)

根据投票计算得分非常简单。添加technorati排名将是棘手的部分。

我制作了一个快速脚本,根据此算法计算一些分数

score = ( vote_sum - ( vetos * veto_weight ) ) / number_of_votes

您可以更改网址参数以获取不同的值

有很多关系,所以也许你可以使用technorati博客排名作为打破平局

答案 3 :(得分:0)

你可以在内部使用0到6的分数。只需换一个,计算得分并换回。我猜-1对你的计算有一些破坏性的影响。