拟合优度适用于非常大的样本量


12

我每天收集非常大的分类数据样本(> 1,000,000),并希望看到各天之间的数据看起来“明显”不同,以检测数据收集中的错误。

我认为使用拟合度测试(尤其是G检验)将非常适合(双关语)。预期分布由前一天的分布给出。

但是,由于我的样本量太大,该测试具有很高的功效,并且会散发出许多假阳性结果。就是说,即使是很小的每日波动也会产生接近零的p值。

我最终将测试统计量乘以某个常数(0.001),可以很好地解释以该速率采样数据。本文似乎同意这种方法。他们说:

卡方最可靠,样本约100至2500人

我正在寻找有关此的更多权威评论。在大型数据集上进行统计测试时,也可能有一些其他方法可以解决误报问题。


3
这是一个好问题。但是,您的临时方法没有客观的依据。这并不意味着它会表现不佳-而是强烈建议有更好的程序。为了找到它们,如果您可以编辑此问题以解释您试图识别的错误类型,包括它们的大小,可能发生的错误数量以及(a)未能解决的后果,这将很有帮助。识别某些错误,并(b)将正确的数据标记为错误。
ub

2
从数学的角度来看,具有非常大的的拟合优度检验非常好-只是相应的零假设不是很有趣:为什么您想问一个“是/否”问题,得到“多少”的答案?在你的情况下,每天的基础上,你可以估算比例的变化对每个类别中,添加一个置信区间每看他们不打0附近一个预定的公差区域n
迈克尔中号

您对“重要”和“假阳性”等术语的使用似乎与这些术语的统计含义不一致,尤其是在您进行正确测试时*。我建议您避免使用这些术语,除非您严格按照技术意义使用它们。您的基本问题是在可能没有意义的情况下使用假设检验。用普通的,非技术的,英语的,您真正感兴趣的是什么? *(特别是如果您不考虑前一天的可变性,那么将前一天用作“人口”是不正确的-通常情况下它与今天一样可变)
Glen_b -Reinstate Monica

Answers:


4

测试返回正确的结果。每天的分布都不相同。当然,这对您毫无用处。您面临的问题早已为人所知。参见:关于统计检验的卡尔·皮尔森(Karl Pearson)和RA费舍尔(RA Fisher):《自然的1935年交流》

取而代之的是,您可以回顾以前的数据(您的数据或从其他位置获取的数据),并获取每个类别的每日变化的分布。然后,检查在给定该分布的情况下是否可能发生了当前更改。如果不知道错误的数据和类型,很难做出更具体的回答,但是这种方法似乎更适合您的问题。


4

让我们继续前进,杀死5%的神圣牛。

您(正确)指出问题在于测试的强大功能。您可能需要将其重新校准为更相关的功效,例如更传统的值为80%:

  1. 确定您要检测的效果大小(例如0.2%偏移)
  2. 确定对您足够好的电源,以使其不会过载(例如1β=80%)
  3. 现有的Pearson测试理论出发,确定可以使您的测试实用的水平。

假设您有5个具有相等概率的类别,,您的替代选择是。因此对于,。渐近分布是非中心卡方与(#类别-1)= 4 DF和非集中参数 利用该大值,足够接近。80%区块为p1=p2=p3=p4=p5=0.2p+δ/n=(0.198,0.202,0.2,0.2,0.2)n=106δ=(2,+2,0,0,0)k=

λ=jδj2/pj=4/0.2+4/0.2=40
λN(μ=λ+k=44,σ2=2(k+2λ)=168)44+13Φ1(0.8)=44+130.84=54.91。因此你的测试的期望的水平是的逆尾CDF从54.91: 因此,这将是水平你应该考虑在以下位置测试您的数据,使其具有80%的功效来检测0.2%的差异。χ42
Prob[χ42>54.91]=3.31011

(请检查我的数学,这是一个荒谬的测试水平,但这就是您想要的大数据,不是吗?另一方面,如果您通常看到Pearson在几个范围内百,这可能是一个完全有意义的关键价值。)χ2

请记住,尽管零值和替代值的近似值在尾部可能效果不佳,请参见本讨论


2

在这些情况下,我的教授建议计算Cramér的V,该V是基于卡方统计量的关联度量。这应该给您力量,并帮助您确定测试是否过敏。但是,我不确定是否可以将V与G2测试返回的统计信息一起使用。

这应该是V的公式:

ϕc=χ2n(k1)

其中,是观测值的总计,是行数或列数,以较小者为准。或者为了拟合优度检验,显然不是。行。ķ ķnkk


0

一种方法是通过在较小的数据块上执行拟合优度测试来使它们更有意义。

您可以将给定日期的数据分成1000个块,每个块包含1000个样本,并针对每个块运行单独的拟合优度测试,并使用前一天的完整数据集给出的预期分布。将每个测试的显着性水平保持在您使用的水平(例如)。然后寻找阳性测试总数与预期的假阳性数之间的显着偏离(在零假设下,分布没有差异,阳性测试总数以二项式分布,参数为)。αα=0.05α

您可以通过假设两天的数据集相同并假设分布相同,然后查看正好通过测试的频率大致等于数据块来找到合适的块大小(即,块大小停止了多少)通过报告虚假差异进行测试)。α


您能否详细说明这种方法“更有意义”的意义?
Whuber

统计显着性与实际意义的比较。通过使用10 ^ 3而不是10 ^ 6的样本,有意识地降低了单个检验的功效,因此对原假设的拒绝将倾向于对应于大量的不拟合。这使单个测试的结果更有意义,因为OP不在乎“较小的每日波动”。对于10 ^ 6的样本,由于细微的差异,测试可能始终拒绝H0,因此尚不清楚测试结果是否代表有意义的信息。
CJ Stoneking

1
谢谢:您的评论提出了一些有趣且重要的问题,这些问题开始影响到我认为是真正的根本问题。就是说,一个人应该如何测量数据之间的差异以检测错误以及差异有多大? 尽管您的答案在某些情况下可能是适当的,但似乎不太可能有效检测数据中可能发生的许多类型的错误,并且也使(自然)问题是应该使用多少数据块。
Whuber

@whuber,可以用这样的方式重新定义问题,以使null及其偏差是数据大小不变的,但需要定性表示吗?
Vass
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.