比较和对比、p 值、显着性水平和 I 型错误

机器算法验证 假设检验 可能性 统计学意义 p 值 错误
2022-01-22 15:46:35

我想知道是否有人可以就 p 值、显着性水平和 I 型错误的定义和使用给出简明扼要的说明。

我理解 p 值被定义为“获得至少与我们实际观察到的一样极端的检验统计量的概率”,而显着性水平只是一个任意的截止值,用于衡量 p 值是否显着. 第一类错误是拒绝一个真实的零假设的错误。但是,我不确定显着性水平和 I 型错误之间的区别,它们不是同一个概念吗?

例如,假设一个非常简单的实验,我掷硬币 1000 次并计算它落在“正面”上的次数。我的零假设 H0 是正面 = 500(无偏硬币)。然后我将我的显着性水平设置为 alpha = 0.05。

我抛硬币 1000 次,然后计算 p 值,如果 p 值 > 0.05,则我无法拒绝原假设,如果 p 值 < 0.05,则我拒绝原假设。

现在,如果我重复做这个实验,每次计算 p 值并拒绝或未能拒绝原假设并记录我拒绝/未能拒绝的次数,那么我最终会拒绝 5% 的原假设这实际上是真的,对吗?这是 I 类错误的定义。因此,如果您进行重复实验,Fisher 显着性检验中的显着性水平本质上是来自 Neyman-Pearson 假设检验的 I 型错误。

现在至于 p 值,如果我从上一次实验中得到 0.06 的 p 值,并且我做了多个实验并计算所有 p 值从 0 到 0.06 的实验,那么我是否也没有6% 的机会拒绝一个真正的零假设?

3个回答

这个问题看起来很简单,但你对它的反思表明它并不是那么简单。

实际上,p 值​​是统计理论中一个相对较晚的补充。在没有计算机的情况下计算 p 值非常繁琐;这就是为什么直到最近才执行统计测试的唯一方法是使用统计测试表,正如我在这篇博文中解释的那样。因为这些表是为固定计算的α级别(通常为 0.05、0.01 和 0.001)您只能使用这些级别执行测试。

计算机使这些表格无用,但测试的逻辑仍然相同。你应该:

  1. 制定零假设。
  2. 制定替代假设。
  3. 确定您准备接受的最大 I 类错误(错误地拒绝原假设的概率)错误。
  4. 设计一个拒绝区域。假设原假设是您的水平,检验统计量落入拒绝区域的概率α. 正如@MånsT 解释的那样,这应该不小于您可接受的 I 型错误,并且在许多情况下使用渐近近似。
  5. 进行随机实验,计算检验统计量,看它是否落入拒绝区域。

理论上, “统计量落在拒绝区域”“p值小于”事件之间存在严格等价关系。α",这就是为什么感觉你可以报告 p 值的原因。在实践,它允许你跳过第 3 步。并在测试完成后评估类型 I 错误。

回到你的帖子,原假设的陈述是不正确的。零假设是翻转头部的概率是1/2(零假设与随机实验的结果不相关)。

如果您以 0.05 的阈值 p 值一次又一次地重复实验,是的,您应该有大约5% 的拒绝率。如果您将 p 值截止设置为 0.06,您最终应该会得到大约 6% 的拒绝率。更一般地,对于连续测试,根据 p 值的定义p

Prob(p<x)=x,(0<x<1),

这仅对离散测试近似正确。

这是一些 R 代码,我希望可以稍微澄清一下。二项式检验相对较慢,所以我只做了 10,000 次随机实验,其中我掷了 1000 个硬币。我执行二项式检验并收集 10,000 个 p 值。

set.seed(123)
# Generate 10,000 random experiments of each 1000 coin flipping
rexperiments <- rbinom(n=10000, size=1000, prob=0.5)
all_p_values <- rep(NA, 10000)
for (i in 1:10000) {
    all_p_values[i] <- binom.test(rexperiments[i], 1000)$p.value
}
# Plot the cumulative density of p-values.
plot(ecdf(all_p_values))
# How many are less than 0.05?
mean(all_p_values < 0.05)
# [1] 0.0425
# How many are less than 0.06?
mean(all_p_values < 0.06)
# 0.0491

可以看到比例并不精确,因为样本量不是无限的,而且测试是离散的,但是两者之间仍然有大约 1% 的增长。

你从@MansT 和@gui11aume 那里得到了很好的答案(每人+1)。让我看看我是否可以在他们的两个答案中更明确地了解某些内容。

处理离散数据时,只有某些可能的 p 值,而且可能性越小/数据集越小,问题就越严重。例如,想象抛硬币n次。获得特定数量正面的概率,k, 是:

p(k)=n!k!(nk)!pk(1p)nk
假设研究人员想要通过翻转 10 次并记录正面数量来测试给定硬币(实际上公平的)的公平性。也就是说,这里的原假设是正确的。我们的研究人员集α=.05,按照惯例,因为这是被更大社区接受的必要条件。现在,暂时忽略传统的 alpha,让我们考虑在这种情况下可能出现的 2 尾 p 值(I 类错误率):

number of heads:           0    1    2    3    4    5    6    7    8    9   10
individual probability:  .001 .010 .044 .117 .205 .246 .205 .117 .044 .010 .001
type I error rate:       .002 .021 .109 .344 .754   1  .754 .344 .109 .021 .002

这表明使用α=.05将导致长期 2 尾 I 型错误率为.021. 所以这显然是一个案例αtype I error,然而,如果α被设置为上述值之一(不是.05) 那么显着性水平将等于第一类错误率。尽管存在这个问题,但在这种情况下,p 值确实等于 I 类错误率。请注意,这里不存在离散推论统计和连续参考分布之间的不匹配问题,因为我使用了精确的二项式概率。进一步注意,此类情况促使中间 p 值的发展,以帮助最小化 p 值和显着性水平之间的差异。

除了 I 类错误率不一定等于显着性水平这一事实之外,可能存在计算的 p 值不等于长期 I 类错误率的情况。考虑具有这些观察到的计数的 2x2 列联表:

     col1 col2
row1   2    4   
row2   4    2

现在,我应该如何计算行和列独立性的 p 值?有很多选择(我在这里讨论)。我将从计算开始χ2统计并将其与参考分布进行比较;产生χ12=1.3,p=.248. χ2但是,参考分布是连续的,因此仅是该特定(离散)分布的近似值χ2统计会表现。我们可以使用Fisher精确检验来确定真正的I型错误率;然后我得到p=.5671. 当以这种方式计算 p 值时,它确实等于第一类错误率,尽管我们仍然有一个问题,即其中一个可能的 p 值是否正好是 5%。让我承认我作弊了一点,如果我使用 Yates 的校正来保证连续性,我会得到一个更好的近似真实类型 I 错误率的近似值,但它仍然不会完全正确(.5637.5671)。

因此,这里的问题是,对于离散数据:

  • 您的首选显着性水平可能不是可能的第一类错误率之一,&
  • 使用(传统)近似连续统计将产生不准确的计算 p 值。

越小这些问题越严重N. 据我所知,连续数据不存在这些问题。

(尽管问题没有询问这些问题的解决方案)有些事情可以缓解这些问题:

  • 较大N意味着更多可能的值,使事情更加连续,
  • 经常有修正(例如耶茨对连续性的修正)会使计算值更接近正确值,
  • 精确测试(如果易于处理,即,如果N足够小)将产生正确的 p 值
  • 中间 p 值提供了使您的 I 类错误率更接近您选择的置信水平的可能性,
  • 您可以明确使用存在的 I 类错误率之一(或注意它会是什么)。

这些概念确实彼此密切相关。

显着性水平是 I 类错误的概率,或者更确切地说,是此类事件的假定概率。 P(type I error)=α通常只能在使用连续分布时获得,因此在经典测试理论中,测试被称为具有显着性水平α如果P(type I error)α,这意味着 I 类错误的概率为α. 然而,使用一种或另一种近似值的测试实际上往往具有P(type I error)α,在这种情况下,I 类错误的概率可能大于标称α.

p 值是拒绝原假设的最低显着性水平因此,它告诉我们结果的“重要性”。