【问题标题】:What is the best way to normalize a data set of scores?标准化分数数据集的最佳方法是什么?
【发布时间】:2012-08-23 11:56:12
【问题描述】:

我有一堆 elo 分数 (http://en.wikipedia.org/wiki/Elo_rating_system),大部分介于 800-1300 之间(它是一个开放式等级,因此没有特定的最小值或最大值)。某人的分数从 1000 开始,然后根据表现上下移动。我想将它们标准化,以便我可以将分数显示为 5.0-10.0,并满足以下要求:

  • 它必须反映所有分数的相对比例。或者换一种说法,由于所有分数都从 1000 开始并从那里向上或向下移动,因此每个分数与 1000 的距离应该反映在标准化中。例如,如果分数是 {950, 975, 1000, 1025},它们应该归一化为低于 {1050, 1075, 1100, 1125} 的数字。

  • 它必须保留分数之间的距离。例如,如果一些分数被紧密地聚集在一起,比如 {950, 950, 955, 1100},它们应该归一化为靠近的数字,比如 {6, 6, 6.1, 9}

【问题讨论】:

  • 维基百科上的快速搜索批评使用标准化分数作为低排名玩家的倾斜数据。 Mathematical Issues。在问这个问题之前,我值得先看一下,因为 Elo 分数似乎很常见,我相信那里的其他人知道如何做到这一点并且已经发布过。
  • ELO 并不完美,但我认为批评与这个问题没有直接关系。它与每次比赛后如何计算分数更相关,因为该公式使用正态分布。

标签: algorithm normalization


【解决方案1】:

问题是您不知道输入范围的实际最小值和最大值是多少(因为 ELO 是一个开放式刻度)。

一旦你决定了你的最小值和最大值,剪辑和线性插值。

如果您不知道该怎么做(我怀疑这是),请查看 wiki 中的公式,和/或参加小学代数的进修课程。

【讨论】:

  • 是的,开放式量表使这成为一个难题。如果我有一个一致的最小值和最大值,那么标准化很容易,但我没有。
  • 也许你应该重新考虑你的设计。如果分数是 ELO,只需将它们显示为收到而不是 5-10 问题已解决 - 数字就是它们。
  • 很遗憾,这不能满足我的用户需求。
  • 好吧,用有限的范围代表一个无限的范围,必须给予一些东西。剪辑或压缩 - 选择权在你。
猜你喜欢
  • 2021-10-06
  • 2019-08-17
  • 2016-11-24
  • 2020-11-21
  • 2010-10-18
  • 2020-09-26
  • 1970-01-01
  • 2012-07-31
  • 1970-01-01
相关资源
最近更新 更多