ARTICLE

精确检验

精确检验 (Exact Test) 精确检验 (Exact Test) 是一类在统计推断中无需依赖大样本渐近近似、能够精确控制第 1类错误 (第I类错误) 概率的假设检验方法。与经典的渐近检验(如卡方检验、似然比检验)不同,精确检验基于检验统计量的确切抽样分布(而非极限分布)来计算 p值 (p-value),因而在小样本或稀疏数据情形下尤为可靠。精确检验的核

浏览 0 更新 2025-10-26

精确检验 (Exact Test)

精确检验 (Exact Test) 是一类在统计推断中无需依赖大样本渐近近似、能够精确控制第\rom{1}类错误 (第I类错误) 概率的假设检验方法。与经典的渐近检验(如卡方检验似然比检验)不同,精确检验基于检验统计量的确切抽样分布(而非极限分布)来计算p值 (p-value),因而在小样本或稀疏数据情形下尤为可靠。精确检验的核心思想可追溯至Ronald Fisher 在 1930 年代提出的Fisher精确检验 (Fisher's Exact Test),此后被推广至多种非参数和参数设定中。

基本思想与定义

精确检验的核心特征在于其推断过程不依赖于任何渐近近似。与之相对的是渐近检验(如卡方检验似然比检验),后者在大样本下近似有效,但在样本量有限时可能产生误导性的结论。

设有一个假设检验问题:

H0:θΘ0vs.H1:θΘ1H_0: \theta \in \Theta_0 \quad \text{vs.} \quad H_1: \theta \in \Theta_1

其中 θ\theta 为未知参数。令 T(X)T(X) 为检验统计量,其精确(而非渐近)抽样分布在 H0H_0 下完全已知。对于一个观测到的统计量值 tobst_{\text{obs}},精确p值定义为:

pexact=PrH0(T(X)tobs)p_{\text{exact}} = \Pr_{H_0}(T(X) \geq t_{\text{obs}})

或相应地采用双侧定义。若 pexactαp_{\text{exact}} \leq \alpha(给定的显著性水平),则拒绝 H0H_0

精确检验的关键优势在于:无论样本量 nn 多大,检验的真实显著性水平永远不会超过名义水平 α\alpha(对于非随机化检验而言,有 supθΘ0Pr(拒绝 H0)α\sup_{\theta \in \Theta_0} \Pr(\text{拒绝 }H_0) \leq \alpha)。这正是"精确"二字的含义——并非指估计量的精度,而是指错误概率被精确控制。

Fisher 精确检验:原型

最著名的精确检验是Fisher精确检验,用于分析 2×22 \times 2 列联表 (Contingency Table) 中的两个分类变量是否独立。设列联表为:

成功失败行合计处理组aba+b对照组cdc+d列合计a+cb+dn\begin{array}{c|cc|c} & \text{成功} & \text{失败} & \text{行合计} \\ \hline \text{处理组} & a & b & a+b \\ \text{对照组} & c & d & c+d \\ \hline \text{列合计} & a+c & b+d & n \end{array}

在行合计与列合计均固定的条件下,Fisher 证明单元格 (1,1)(1,1) 中的计数 aa 服从超几何分布 (Hypergeometric Distribution):

Pr(A=a)=(a+ba)(c+dc)(na+c)\Pr(A = a) = \frac{\binom{a+b}{a} \binom{c+d}{c}}{\binom{n}{a+c}}

精确p值通过将所有比观测结果更极端(即更不利于 H0H_0)的表格的概率求和得到。这一方法由 Fisher 在《统计方法与科学推断》一书中以著名的"女士品茶" (Lady Tasting Tea) 实验为例进行了阐述。

常见类型的精确检验

除 Fisher 精确检验外,常见的精确检验还包括:

  1. 精确二项检验 (Exact Binomial Test):用于检验单样本比例 pp 是否等于某特定值 p0p_0,检验统计量服从二项分布 B(n,p0)B(n, p_0)。当 np0<5np_0 < 5n(1p0)<5n(1-p_0) < 5 时,渐近正态近似失效,精确二项检验成为首选。
  2. 精确 Poisson 检验:用于检验泊松分布的均值参数。常用于流行病学中的标准化发病率比 (SIR) 的推断。
  3. 符号检验 (Sign Test):一种非参数精确检验,用于配对样本中位数的比较,以二项分布为精确抽样分布。
  4. Wilcoxon 符号秩检验 (Wilcoxon Signed-Rank Test) 与 Mann-Whitney U 检验:在无结 (no ties) 的情况下,这些秩检验的p值可以通过精确排列分布计算,而非依赖正态近似。
  5. 排列检验 (Permutation Test) 或随机化检验 (Randomization Test):通过对数据进行所有可能的排列或重新抽样来构建精确p值,是最一般的非参数精确检验框架。当样本量较小且总体分布未知时,排列检验提供了最可靠的推断。

精确检验与渐近检验的比较

精确检验与渐近检验各有优劣:

精确检验的优势:在小样本(如 n<30n < 30)、稀疏列联表(如存在期望频数小于 5 的单元格)、或数据高度不平衡的情形下,渐近检验的近似可能产生严重偏差。精确检验在此类场景中提供可信的推断。此外,精确检验不需要关于总体分布形状的强假设(排列检验即为一例)。

精确检验的局限:(1) 计算负担:对于稍大规模的数据,精确检验所需的组合枚举可能呈指数增长。例如,5×55 \times 5 列联表的 Fisher 精确检验可能需要计算数十亿种可能的表格排列。现代方法借助蒙特卡洛方法 (Monte Carlo Method) 或网络算法 (Network Algorithm) 进行近似,但已不再是严格意义上的"精确"检验。(2) 保守性:由于检验统计量是离散的,精确检验的实际显著性水平通常严格小于名义水平 α\alpha,导致检验功效 (Power) 低于连续渐近检验。这一现象在二项检验中尤为明显。(3) 难以扩展到复杂模型:对于含有协变量 (Covariates) 的回归模型,精确检验的实现远不如似然比检验Wald检验那样直接。

现代发展与应用

随着计算能力的提升,精确检验在现代统计学中的应用日益广泛。Bootstrap 方法提供了另一种非精确但可渐近精确的替代方案。在生物信息学中,基因表达数据的差异分析常借助 Fisher 精确检验或精确负二项检验(如 edgeR 和 DESeq2 包中的方法)。Barnard 检验 (Barnard's Test) 作为 Fisher 精确检验的替代,不固定两个边际合计,在某些设定下具有更高的检验功效。此外,条件精确检验 (Conditional Exact Test) 将充分统计量作为条件以消除冗余参数 (Nuisance Parameters),在指数族分布中得到了系统性的理论发展。

在软件实现方面,主流统计软件均提供了精确检验的功能。R语言中的 exttt{fisher.test()}、 exttt{binom.test()}、 exttt{poisson.test()} 等函数可直接执行精确检验; exttt{exactRankTests} 和 exttt{coin} 包则提供了更为广泛的精确秩检验和排列检验工具。SAS 的 exttt{FREQ} 过程也支持 Fisher 精确检验和精确McNemar检验Python 的 exttt{scipy.stats} 模块同样包含 exttt{fisher\_exact} 和 exttt{binom\_test} 等函数。

精确检验体现了统计学中"精确"与"可行"之间的经典张力。尽管渐近方法在多数应用场景中占据主导地位,但精确检验作为小样本推断的金标准,始终在统计方法论中占有不可替代的位置。对于任何重视推断可靠性的研究者而言,理解精确检验的原理与适用条件都是一项基本素养。