我有以下球员,每个值对应一个给定游戏中正确答案百分比的结果。
$players = array
(
'A' => array(0, 0, 0, 0),
'B' => array(50, 50, 0, 0),
'C' => array(50, 50, 50, 50),
'D' => array(75, 90, 100, 25),
'E' => array(50, 50, 50, 50),
'F' => array(100, 100, 0, 0),
'G' => array(100, 100, 100, 100),
);
我希望能够选拔最好的球员,但我也想考虑球员的可靠性(熵越小=越可靠),到目前为止,我已经提出了以下公式:
average - standard_deviation / 2
但是,我不确定这是否是最佳公式,我想听听您对此的想法。 我一直在考虑这个问题,并且我想出了一个略有不同的公式,这里是修订版:
average - standard_deviation / # of bets
然后,该结果将在下一次即将进行的投票中加权,例如,玩家C进行的新下注将仅计为下注的一半。
我在这里无法详细说明,但这是一个与Wisdom of Crowds theory和Delphi method 相关的项目,我的目标是尽可能地预测接下来的结果,这些结果将根据多个玩家的投注进行加权。
我感谢所有输入,谢谢。
最佳答案
首先,如果您的数据数组只有几个条目,我将不使用标准差。使用更可靠的统计量度,例如中位数绝对偏差(MAD),同样,您可能想使用中位数而不是平均值进行测试。
这是由于以下事实:如果您对玩家投注的“知识”仅限于几个样本,那么您的数据将被异常值所支配,即玩家是幸运的/不幸的。在这种情况下,统计方法可能是完全不合适的,您可能希望使用某种形式的启发式方法。
我还从您的链接中假设,您实际上并不打算挑选最佳球员,而是根据球员的下一组答案“A”,通过权重“A”来预测正确的答案集“C”玩家以前的记录。
当然,如果有一个很好的解决方案,您可能会在股票市场上丧命;-)(没有人这样做的事实应该表明存在这样的解决方案)。
但是回到对球员的排名。您的主要问题是,您(必须?)将正确答案的百分比从0--100%均匀分配。如果测试包含多个问题,肯定不是这种情况。我会看一个完全随机的玩家“R”在测试中得到的分数,并根据给定的真实玩家比“R”更好/更差建立一个相对置信度数。
假设每个游戏回合都会产生一百万个随机玩家,并查看分数分布。使用分布作为玩家实际得分的权重。然后,使用MAD组合加权分数,并计算中位数-MAD/一些数字,就像您已经建议的那样。