PsyMeasureFDR

PsyMeasure · 统计实验室

错误发现率(FDR)模拟器

免费模拟多重检验,比较 Bonferroni、Holm 和 Benjamini–Hochberg 等 11 种方法。通过交互实验探索错误发现率(FDR)、族错误率(FWER)和统计功效。

有多少显著结果只是噪声?用相同的模拟实验比较各方法,探索错误发现与遗漏真实效应之间的权衡。

比较结果

准备就绪

直观查看模拟

每个方块代表一次模拟实验中的一项检验。颜色表示真实情况,标记表示方法的判定。

模拟完成后,结果将在此显示。

颜色 = 真实效应:负向无正向
亮度:该效应在本次样本中表现出的强度(|z|)
方块顺序:

同一次实验,逐个方法对比

多次实验一览

每一行是一次完整的实验:左侧为真实效应,右侧为噪声。左侧的亮色方块是检出的效应,右侧的黄色方块是错误发现。选择一行即可在上方查看。

错误发现率 (FDR)

所有发现中错误发现所占比例的平均值。没有发现的实验按零计算。

统计功效

检出的真实效应比例。越高表示遗漏的真实效应越少。

家族错误率 (FWER)

至少出现一次错误发现的实验比例。

目标依据方法适用于 FDR 或 FWER,不适用于功效。模拟估计值会围绕理论值波动。

精确结果

已完成实验的平均值。FP = 错误发现;FN = 遗漏的真实效应。

精确结果
方法FDR功效FWER平均 FP平均 FN
p 值从何而来

零假设的 p 值近似均匀分布;真实效应的 p 值倾向于接近零。各组分别归一化;空组不显示柱形。

零假设(噪声)真实效应

模拟的假设条件

每次实验包含相互独立、双侧、方差已知的单样本 z 检验。零假设对应 Z ~ N(0, 1);真实效应对应 Z ~ N(d√n, 1)。真实效应数量四舍五入为整数。该模型不模拟相关检验、t 检验、可选停止或发表偏倚。

这些是蒙特卡罗估计值,不能保证单次实验的结果。重复 2,000 次时,估计 FWER 为 5% 的标准误约为 0.5 个百分点。FDR 是各次实验错误发现比例的平均值,并非把所有错误发现总数除以所有发现总数。

FDR / FWER

多重比较:FDR 与 FWER

检验多个假设会增加假阳性的机会。校正方法会改变判定显著性的阈值。比较方法时既要看错误控制,也要看检出真实效应的能力。

为何多重检验需要校正

若有 20 个相互独立且真实成立的零假设,α = 0.05,则至少出现一个假阳性的概率为 1 − (1 − 0.05)²⁰ ≈ 64%。假阳性的期望数量为 20 × 0.05 = 1。两者是不同的量:一个是概率,一个是数量。

什么是错误发现率?

FDR = E[V / max(R, 1)],其中 V 是错误发现数,R 是发现总数。在方法假设成立时,5% 的 FDR 目标控制的是重复实验中该比例的平均值。这并不表示每个显著结果为假的概率都是 5%。

FWER 有什么不同?

FWER = P(V ≥ 1):在一组检验中至少出现一次错误发现的概率。Bonferroni 和 Holm 控制 FWER;Benjamini–Hochberg 控制 FDR。控制 FWER 也会为 FDR 提供上界,但往往会检出更少的真实效应。

实例:Bonferroni 与 BH

取五个排序后的 p 值:0.001、0.008、0.039、0.041、0.300,且 α = q = 0.05。Bonferroni 使用 0.05 / 5 = 0.01,拒绝前两个零假设。BH 按秩比较 0.01、0.02、0.03、0.04、0.05。满足条件的最大秩为 2,因此 BH 也拒绝前两个。若最后一个 p 值改为 0.045,BH 会拒绝全部五个:应采用满足条件的最大秩,而不是第一个未通过的秩。

比较全部 11 种校正方法

未校正

当 p < α 时拒绝各零假设。不控制检验族层面的错误率。可作为观察假阳性如何累积的基线。

Bonferroni

当 p < α/m 时,Bonferroni 拒绝零假设。对于有效的 p 值,它在任意依赖结构下都能控制 FWER,但检验很多时可能遗漏真实效应。

Holm

将 p 值从小到大排序。将秩 r 与 α/(m−r+1) 比较,并在首次未通过时停止。Holm 在任意依赖结构下控制 FWER,且至少拒绝 Bonferroni 拒绝的全部零假设。

Šidák

使用单一阈值 1−(1−α)^(1/m)。Šidák 在检验相互独立时控制 FWER,比 Bonferroni 略不保守。

Holm–Šidák

按 Holm 的逐步递减逻辑使用阈值 1−(1−α)^(1/(m−r+1))。本模拟采用独立检验;不要假设该方法适用于任意依赖结构。

Hochberg

找到满足 p(r) ≤ α/(m−r+1) 的最大秩 r,并拒绝截至 r 的所有零假设。Hochberg 在独立性或适当的正依赖条件下控制 FWER。

Hommel

Hommel 使用基于 Simes 检验的闭合检验程序。它在独立性或支持 Simes 不等式的条件下控制 FWER,功效至少与 Hochberg 一样高,但计算成本更大。

Benjamini–Hochberg

找到满足 p(r) ≤ (r/m)q 的最大秩 r,然后拒绝截至 r 的所有零假设。Benjamini–Hochberg 在检验独立或满足特定正依赖条件(PRDS)时控制 FDR。

Benjamini–Yekutieli

使用 BH,但将 q 除以 Hm = Σ(1/k),k = 1…m。Benjamini–Yekutieli 在任意依赖结构下控制 FDR,通常以降低功效为代价。

Storey 式方法(探索性)

此简化的探索性变体根据大于 0.5 的 p 值所占比例估计 π₀,然后以 q/π̂₀ 运行 BH。它并非完整的 q 值实现,也不提供普遍适用的有限样本 FDR 保证。

自适应 BH(探索性)

此探索性双轮变体先以 q 运行 BH,将 m₀ 估计为 max(1, m−R₁),再以 q·m/m̂₀ 运行 BH。它不是 BKY 程序,也不声称具备该程序的有限样本保证。

常见问题

这是用于我自己的 p 值的 FDR 计算器吗?

这是教学模拟器,不是上传 p 值的计算器。它生成已知真实情况的实验,让你观察错误发现和遗漏的效应;仅凭真实数据通常无法知道这些情况。

q 值为 0.05 能保证只有 5% 的假阳性吗?

不能。目标 q = 0.05 指在程序假设成立时,发现结果中错误发现比例的期望值。单次实验的错误发现比例可能更高或更低。

应该选择哪种校正方法?

先确定研究设计需要控制哪类错误。FWER 方法限制一组检验中出现任何错误发现的风险;FDR 方法控制发现结果中错误发现比例的平均值。请检查依赖性假设,并在查看结果前定义假设族。

来源与延伸阅读