如何根据以前的考试成绩预测考生在未来考试中的表现排名概率?

机器算法验证 可能性 排行
2022-04-10 21:41:22

四个学生参加一系列测试,每个测试包含 10 个问题。学生在每项测试中排名 1-4,这取决于谁答对了最多的问题。

                     Tom    Dick    Harry   Alice
   Test1 Score       9      5       6       8
   Test2 Score       8      3       7       4
   Test3 Score       7      6       9       8
   Test4 Score       9      2       5       7

汤姆在 4 次测试中的 3 次中排名第一。

测试 5 将在下周进行。我如何确定汤姆排名第一的概率?爱丽丝先来的概率是多少?

虽然这是一个小样本,但我对可能适用于数百万测试分数的一般过程感兴趣。

因此:我如何根据一组个人在一组测试中的先前表现来预测个人在未来测试中达到给定表现等级的概率?

2个回答

应该有一个计划

  • 将测试视为学生之间的“匹配”
  • 按时间顺序对测试进行排序,并将结果插入评级系统引擎。

您可以从排名值中检索 Tom 在下一次测试中排名第一的概率。

如果您对使用更多而不是开发感兴趣,rankade是我们针对体育、游戏等的免费排名系统,允许与 2 和 3+ 派系进行比赛(根据您的需要,而EloGlicko仅适用于一个-一对一 - 这是一个比较)。此外,rankade 具有权重功能(所有测试都具有相同的影响?),可以改进您的工作。

有一个很大的警告和几个较小的警告。首先,汤姆排名第一的近似答案是p=0.6315,95% 置信区间为 0.6306 至 0.6324。请注意,置信区间来自我确定答案的精确程度,而不是概率的实际可变性。现在是血淋淋的细节。

不能使用 Wilcoxon 或其他排名方法,关系太多了。因此,最大的警告:我假设排名者知道如何准确分配并列分数以仅授予一个第一名。我不需要知道该怎么做,如下。

我将数据转换为近似正态分布,并且要在更大的数据集上执行此操作,必须在该数据上正确重做。为此,我获取了所有数据,并对其进行了正态性测试。平均值和中位数不同,尾部不对称,数据看起来有点像 r 值。所以,我拿了ArcTanh(考试成绩/10)(Fisher 变换),这使得数据更加正常。读者不应该接受我曾经心目中的转变。一个警告是,它不允许满分 10,其中,根据我的快速和肮脏的近似,没有。只有通过分析更多数据才能找到更好的分布。然后,我找到了转换后数据的平均值和标准差,并使用反正态法进行了 1000 次蒙特卡罗模拟 1000 次。对于每个模拟,我计算汤姆何时获得最高分。现在因为我使用的是实数而不是整数分数,所以本来可以完美判定的平局,我不知道如何在实践中实际进行判定。Alice 的排名第一概率可以使用相同的方法来确定。

现在可能有 1000 种方法可以解决同样的问题,而我谦虚的建议有 ifs ands 和 buts 可以通过以其他方式处理问题来避免。我的解决方案只是近似的,但是,它也很快,几乎是脑死亡。我让其他人提出更好的方法。