如果我们使用 p 值比较两个独立的数据集,为什么误报的数量与样本量无关?

机器算法验证 r 回归 假设检验 p 值
2022-03-03 14:44:41

如果我运行下面的 R 代码,它将生成两个独立的向量,然后测试它们以查看它们是否以某种方式相关(即 p 值 < 0.05)。

如果我重复这 1000 次,那么其中 50 个(5%)将有误报,p 值 < 0.05。这是 1 类错误。

如果我们增加到sampleSize1000,甚至 100,000,结果是一样的(5% 的误报)。

我很难理解这一点,因为我原以为如果我们收集了足够的样本,误报的机会就会下降到 0(就像相关性一样)。

所以,我想我的问题是:“基于比较两个独立数据集生成的 p 值,误报的数量怎么可能与样本量无关?”。

# R code to demonstrate that with a large dataset, we can still 
# get significant p-values, purely by chance.

# Change this to 1000, and we still get the same number of false positives (50, or 5%).
sampleSize = 20

cat("Sample size:",sampleSize,"\n")

set.seed(1010093)
n=1000
pValues <- rep(NA,n)
for(i in 1:n){
    y <- rnorm(sampleSize)
    x <- rnorm(sampleSize)
    pValues[i] <- summary(lm(y ~ x))$coeff[2,4]
}
# Controls false positive rate
fp = sum(pValues < 0.05)
cat("Out of ",n," tests, ",fp," had a p-value < 0.05, purely by by chance.\n",sep="")

----output----
Running "true positives - none.R" ...
Sample size: 1000 
Out of 1000 tests, 52 had a p-value < 0.05, purely by by chance.
2个回答

您在选择此规则时选择了比例:“(即 p-value < 0.05)”

这实际上意味着当 H0 为真时,您选择有 5% 的误报。

http://en.wikipedia.org/wiki/P-value

如果您希望误报的比例下降,则不应在增加样本量时保持显着性水平不变。确实有很好的论据可以使您的显着性水平随着大样本量而降低(例如基于最小化错误决策的总成本)

我认为这个问题是由对统计假设检验的 Neyman-Pearson 范式如何工作的基本混淆引起的,但这是一个非常有趣的问题。我将用来讨论这一点的中心类比是计算机科学中绝对引用与相对引用的概念,人们最熟悉的是它在 Excel 中编写函数时的表现。(这里有一个快速指南。)这个想法是可以将某物固定在绝对比例上的给定位置,或者只能位于相对于其他东西的位置;其结果是,如果“其他”发生变化,后者也会发生变化,但前者将保持不变。

假设检验的核心概念是抽样分布,其他一切都建立在此基础之上。也就是说,如果一遍又一遍地进行相同的研究,样本统计量(如样本斜率)将如何反弹。(作为其他参考,我已经在这里这里讨论过。)对于统计推断,您需要了解有关采样分布的三件事:它的形状、平均值和标准偏差(称为标准误差)。给定一些标准假设,如果误差呈正态分布,则回归模型斜率的采样分布将呈正态分布,以真值为中心,SE=1N1s2/Σ(xix¯)2. (如果残差是根据您的数据估计的,则抽样分布将为,其中是您拥有的数据数量,是预测变量。) s2tdf=N(1+p)Np

在假设检验的 Neyman-Pearson 版本中,我们有一个样本统计量的参考值或空值,以及一个替代值。例如,在评估两个变量之间的关系时,斜率的空值通常为 0,因为这意味着变量之间没有关系,这通常是排除我们对某个主题的理论理解的重要可能性。替代值可以是任何东西,它可能是某个理论提出的值,或者它可能是从实际角度来看某人会关心的最小值,或者可能是其他东西。假设关于XY在总体中分别为 0 和 1。这些数字指的是绝对比例——无论你为 / power、等选择什么,它们都将保持不变。如果我们规定一些值(),我们可以计算出一些东西,比如在零假设和替代假设,或者测试有多少功效。 αβNα=.05s2=1Var(X)=1N=10

现在,在这种情况下,我们应该如何决定是否拒绝原假设?至少有两种方法:我们可以检查我们的 p 值是否小于,或者只是检查我们的 beta 是否大于在这种情况下对应于这些数字的绝对数值。要实现的关键是前者是对于原假设下的抽样分布,而后者是在数轴上的一个绝对位置。如果我们再次计算采样分布,但,它们看起来会有所不同(即,它们的标准差会更窄),但是相对于零采样分布定义的那些值与零假设具有相同的关系测试,αN=25因为它们是这样定义的也就是说,例如,零采样分布的上部 2.5% 仍将包括曲线下总面积的 2.5%,但该线将相对于其下方的绝对数值尺度移动。另一方面,如果我们仅在我们估计的 beta 大于我们上面计算的值时拒绝 null,如果我们保持该值不变并不断增加 ,我们将越来越不可能拒绝 null 。 N

考虑下图。alpha 阈值被定义为划分曲线下最外层 5% 区域的点(这里我只显示了上尾,下尾也一样)。时,这恰好落在(给定我们上面规定的值)。增加到时,标准误差缩小并且采样分布变得“更窄”。因为是相对于采样分布定义的,所以它与采样分布的其余部分一起移动。样本斜率的对应值变为如果阈值在绝对尺度上保持在同一位置 (N=10X=.735N25α=.05.417.735),误报率会下降到.00056

在此处输入图像描述

请注意,后一种假设检验的方法,即将观察到的样本斜率的实际值与固定的截止点进行比较,在很大程度上不是假设检验的方式,但我相信这是您混淆的基础。