跳转至

Holdout predictive checks for Bayesian model criticism

作者: Gemma E Moran, David M Blei, Rajesh Ranganath
来源: Journal of the Royal Statistical Society Series B
主题: 数理统计 / 假设检验
相关性: 4/10
机构绿灯: Rutgers University(US News 前 50,免分进入精读)
链接: https://doi.org/10.1093/jrsssb/qkad105


一、领域脉络与小综述

这个方向是什么: 贝叶斯模型检验旨在为研究者提供诊断模型拟合不足、定位模型缺陷并指导模型修订的工具。其根本统计问题是:如何在一个贝叶斯框架下,构造一个既有明确概率解释(如校准的 p-value)、又能真实反映模型与数据偏离程度的检验程序。当前该子方向的成熟度较高,经典方法(如 PPC)已被广泛内化于贝叶斯工作流,但对其频率派校准性的反思与修正仍是活跃议题。

发展脉络: - 奠基工作:Gelman et al. (1996) 提出 posterior predictive check (PPC)。作者在 intro 中明确指出其核心机制:"PPC checks a model by assessing the posterior predictive distribution on the observed data",即用观测数据算后验预测,再用同一数据评估。 - 主要进展与瓶颈显现:Bayarri & Berger (2000) 与 Robins et al. (2000) 提出了 conditional predictive p-value (CPP) 与 observed-data p-value。作者引用时点明了他们的判断:这些方法试图解决 PPC 的双重使用问题,但"can lead to uncalibrated p-values"(CPP)或"can be difficult to compute"(observed-data p-value)。这里留下了口子:既有修正路线要么校准性仍存疑,要么计算不可行。 - 当前 frontier 与本文位置:作者将本文定位为一条绕开上述计算困难、同时保证校准性的新路线。他们引用了 Robins et al. (2000) 的 observed-data p-value 作为理论上的校准基准,但指出其计算需要积分出所有参数,在复杂模型中不可行;本文的 HPC 通过数据分割(data splitting)将贝叶斯推断与频率派评估混合,声称在保持校准性的同时恢复了计算可行性。

子线索聚类: 1. 双重使用与校准性反思线:包含 Bayarri & Berger (2000)、Robins et al. (2000)。这一簇在做的事情是:承认 PPC 用数据两次(既算后验又算 p-value)会导致保守偏差,试图通过改变 p-value 的定义(如条件化、边缘化)来修正校准性。 2. 数据分割与混合评估线:包含本文 Moran et al. (2018) 以及隐含的频率派交叉验证思想。这一簇在做的事情是:物理上将数据拆分,训练集做贝叶斯推断,heldout 集做频率派评估,从而在操作层面切断双重使用。 3. 计算可行性线:涉及 Robins et al. (2000) 的 observed-data p-value。这一簇关注的是:即便理论上存在校准的 p-value,其在复杂模型下的计算(积分出参数)是否可行。

这个方向在追问的核心问题: 1. 校准性:在贝叶斯模型检验中,p-value 在原假设(模型正确)下是否服从 Uniform(0,1)?PPC 不服从,CPP 也不严格服从,这是核心瓶颈。 2. 双重使用:同一批数据既参与推断又参与评估,如何在不损失信息的前提下切断这种依赖? 3. 计算可行性:理论上校准的 p-value(如 observed-data p-value)往往需要边缘化参数,在非共轭、高维模型下计算不可行;如何构造既校准又可算的检验?

⚠️ 作者的 framing: - 作者把缺口 frame 成:PPC 有双重使用偏差,Robins et al. (2000) 的 observed-data p-value 虽校准但计算不可行,因此"显然的下一步"是找一个既校准又可算的方法,而 HPC 恰好填补了这个位置。 - 被淡化或回避的竞争路线:作者在 intro 中未讨论纯频率派的模型检验方法(如基于 M-estimator 的 score test),也未讨论不依赖 p-value 的纯贝叶斯诊断(如后验预测损失)。更关键的是,数据分割本身带来的信息损失(训练集变小导致后验方差增大)被作者轻描淡写,仅在实证中提及,未在理论节量化其对检验 power 的影响。 - 明显该被引却未出现的:频率派交叉验证理论(如 Stone 1974, Arlot & Celisse 2010)与数据分割下的假设检验理论(如 Wasserman 2011 的 split-sample inference)。这些文献直接处理数据分割后的推断性质,缺失它们使得 HPC 的理论定位缺乏与已有 split-sample 文献的对话。

张力: 未见明显对立引用。Robins et al. (2000) 与 Bayarri & Berger (2000) 在"PPC 不校准"上是一致的,分歧仅在修正路径(条件化 vs 边缘化)。本文与 Robins et al. (2000) 的张力在于:Robins 的 observed-data p-value 保留了全部数据做推断,仅通过边缘化参数来切断双重使用;而 HPC 物理扔掉一部分数据。两者在 power 与校准性之间的 trade-off 未被正面讨论。


二、最核心、最简单的例子 / 数学问题

第一步:符号、模型、可观测数据交代清楚

  • \(p^*\)(真实分布 / 数据生成分布):这是不可观测的 estimand / 目标。模型检验的原假设是 \(p^* \in \mathcal{M}\)(模型类正确)。
  • \(\mathcal{M}\)(模型类):由参数 \(\theta\) 索引的分布族 \(\{p_\theta : \theta \in \Theta\}\)\(\theta\) 是参数。
  • \(x = (x_1, \dots, x_n)\)(观测数据 / 随机变量样本):来自 \(p^*\)\(n\) 个独立样本。
  • \(x_{\text{train}}, x_{\text{heldout}}\)(数据分割):将 \(x\) 拆分为两部分,\(x_{\text{train}}\) 用于推断,\(x_{\text{heldout}}\) 用于评估。
  • \(p(\theta \mid x_{\text{train}})\)(后验分布):基于训练集算出的后验,是随机变量(因 \(x_{\text{train}}\) 是随机的)。
  • \(p(x_{\text{new}} \mid x_{\text{train}})\)(后验预测分布)\(\int p(x_{\text{new}} \mid \theta) p(\theta \mid x_{\text{train}}) d\theta\)。这是检验的参照分布。
  • \(T(x)\)(检验统计量):研究者选择的函数,用于度量数据的某种特征。
  • \(p_{\text{HPC}}\)(HPC 的 p-value):本文要证明其校准性的对象,定义见下。

第二步:最小内核——在独立同分布高斯位置模型下的 HPC

剥掉所有层级模型、因子分析等复杂性,考虑最简特例: - 模型类 \(\mathcal{M}\)\(x_i \sim \mathcal{N}(\theta, 1)\)\(\theta \in \mathbb{R}\),已知方差为 1。 - 检验统计量 \(T(x) = \bar{x}\)(样本均值)。 - 数据分割:\(n\) 个样本随机拆分,\(n_1\) 个入训练集,\(n_2\) 个入 heldout 集。

PPC 的双重使用偏差在此特例下的表现: PPC 的 p-value 定义为 \(p_{\text{PPC}} = P(T(x_{\text{new}}) \ge T(x_{\text{obs}}) \mid x_{\text{obs}})\),其中 \(x_{\text{obs}}\) 既算了后验 \(p(\theta \mid x_{\text{obs}})\),又出现在 \(T(x_{\text{obs}})\) 里。在高斯位置模型下,后验预测分布为 \(x_{\text{new}} \mid x_{\text{obs}} \sim \mathcal{N}(\bar{x}_{\text{obs}}, 1 + 1/n)\),而 \(T(x_{\text{obs}}) = \bar{x}_{\text{obs}}\)。因此 \(p_{\text{PPC}} = P(\bar{x}_{\text{new}} \ge \bar{x}_{\text{obs}} \mid x_{\text{obs}})\)。由于 \(\bar{x}_{\text{new}}\) 的均值就是 \(\bar{x}_{\text{obs}}\),这个 p-value 在原假设下趋向于 0.5,而不是 Uniform(0,1)。这就是双重使用导致的保守偏差:数据被用了两次,使得预测分布的中心被拉向观测值,检验永远很难拒绝。

HPC 如何在此特例下破局: HPC 的 p-value 定义为:

\[p_{\text{HPC}} = P\big(T(x_{\text{new}}) \ge T(x_{\text{heldout}}) \mid x_{\text{train}}\big)\]
注意:\(x_{\text{train}}\) 只算后验,\(x_{\text{heldout}}\) 只做评估,两者独立(在原假设下,给定 \(\theta\),训练集与 heldout 集独立;边缘化 \(\theta\) 后,因样本独立同分布,仍独立)。

在此特例下: - 后验预测均值:\(\bar{x}_{\text{new}} \mid x_{\text{train}} \sim \mathcal{N}(\bar{x}_{\text{train}}, 1 + 1/n_1)\)。 - Heldout 均值:\(\bar{x}_{\text{heldout}} \sim \mathcal{N}(\theta^*, 1/n_2)\),且与 \(x_{\text{train}}\) 独立。 - 因此 \(p_{\text{HPC}} = P(\bar{x}_{\text{new}} \ge \bar{x}_{\text{heldout}} \mid x_{\text{train}})\)。 - 令 \(Z = \bar{x}_{\text{new}} - \bar{x}_{\text{heldout}}\),给定 \(x_{\text{train}}\)\(Z\) 的分布为 \(\mathcal{N}(\bar{x}_{\text{train}} - \bar{x}_{\text{heldout}}, 1 + 1/n_1 + 1/n_2)\)。 - \(p_{\text{HPC}} = P(Z \ge 0 \mid x_{\text{train}}) = 1 - \Phi\big(\frac{\bar{x}_{\text{heldout}} - \bar{x}_{\text{train}}}{\sqrt{1 + 1/n_1 + 1/n_2}}\big)\)

为什么校准:在原假设 \(p^* = p_{\theta^*}\) 下,\(\bar{x}_{\text{train}}\)\(\bar{x}_{\text{heldout}}\) 均服从 \(\mathcal{N}(\theta^*, \cdot)\)\(\bar{x}_{\text{heldout}} - \bar{x}_{\text{train}}\) 的分布为 \(\mathcal{N}(0, 1/n_1 + 1/n_2)\)。因此 \(\frac{\bar{x}_{\text{heldout}} - \bar{x}_{\text{train}}}{\sqrt{1 + 1/n_1 + 1/n_2}}\) 的分布为 \(\mathcal{N}(0, \frac{1/n_1 + 1/n_2}{1 + 1/n_1 + 1/n_2})\),其方差小于 1。但 \(p_{\text{HPC}}\) 是对 \(x_{\text{train}}\) 条件化的概率,要证的是边缘校准性(对所有随机变量积分)。通过积分掉 \(x_{\text{train}}\)\(x_{\text{heldout}}\)\(p_{\text{HPC}}\) 的边缘分布恰好是 Uniform(0,1)。这就是最小内核:数据分割切断了双重使用的依赖,使得后验预测分布与评估数据独立,从而恢复了 p-value 的校准性


三、这篇论文做了什么

三句话: ① 研究了贝叶斯模型检验中 PPC 因双重使用数据导致 p-value 不校准的问题。 ② 核心方法是 holdout predictive check (HPC),通过数据分割将贝叶斯后验推断与频率派 heldout 评估混合。 ③ 主要结论是证明了 HPC 的 p-value 在原假设下是 properly calibrated(服从 Uniform(0,1)),并在回归、层级文本模型与因子分析上实证展示了其诊断能力。

关键设定与假设: - 数据分割设定:观测数据 \(x\) 被随机拆分为 \(x_{\text{train}}\)\(x_{\text{heldout}}\)。这是本文最核心的操作设定。 - HPC p-value 定义\(p_{\text{HPC}}(x) = P\big(T(x_{\text{new}}) \ge T(x_{\text{heldout}}) \mid x_{\text{train}}\big)\),其中 \(x_{\text{new}}\) 是从后验预测分布 \(p(x_{\text{new}} \mid x_{\text{train}})\) 中抽取的伪数据。 - 假设 1(原假设)\(p^* \in \mathcal{M}\),即真实分布属于模型类。这是校准性证明的前提。 - 假设 2(独立同分布)\(x_1, \dots, x_n\) 独立同分布来自 \(p^*\)。这保证了训练集与 heldout 集的独立性。 - 假设 3(先验支撑条件):先验 \(p(\theta)\) 在真实参数 \(\theta^*\) 处有正密度。这是保证后验收敛与积分可交换的必要条件,相比 Robins et al. (2000) 的 observed-data p-value(需要边缘化所有参数),HPC 通过条件化于 \(x_{\text{train}}\) 绕开了边缘化计算,但代价是依赖后验推断的准确性。

主要结果: - 定理(HPC 的校准性):在原假设 \(p^* \in \mathcal{M}\) 下,\(p_{\text{HPC}}\) 的边缘分布服从 Uniform(0,1)。 - 直觉:给定 \(x_{\text{train}}\)\(x_{\text{new}}\)\(x_{\text{heldout}}\) 是从同一个真实分布 \(p^*\)(通过后验预测与直接采样)生成的独立样本,因此 \(T(x_{\text{new}}) \ge T(x_{\text{heldout}})\) 的概率在条件化下是 0.5,边缘化后积分出 Uniform。 - 必要条件:先验在 \(\theta^*\) 处有支撑;\(x_{\text{train}}\)\(x_{\text{heldout}}\) 独立。 - 解决的技术难点:PPC 的 \(p_{\text{PPC}}\) 不校准是因为 \(x_{\text{obs}}\) 同时出现在预测分布与评估统计量中,导致两者正相关;HPC 通过物理分割消除了这种相关。

证明路线与技术技巧: - 整体路线: 1. 定义 HPC p-value\(p_{\text{HPC}} = P(T(x_{\text{new}}) \ge T(x_{\text{heldout}}) \mid x_{\text{train}})\)。 2. 条件化独立性论证:在原假设下,给定 \(x_{\text{train}}\)\(x_{\text{new}}\)(从后验预测抽)与 \(x_{\text{heldout}}\)(从真实分布抽)的分布相同。关键步骤是证明 \(p(x_{\text{new}} \mid x_{\text{train}}) = p(x_{\text{heldout}} \mid x_{\text{train}})\) 在原假设下成立。 3. 积分交换:利用先验支撑条件与 Fubini 定理,交换后验积分与真实分布积分的顺序,证明后验预测分布边缘化后退化为真实分布。 4. 边缘化校准:由于条件化下 \(p_{\text{HPC}}\) 是对称比较的概率(两同分布独立变量谁大),其条件分布已知;再积分掉 \(x_{\text{train}}\),得到边缘 Uniform(0,1)。 - 关键跳跃点:步骤 2 中证明 \(p(x_{\text{new}} \mid x_{\text{train}}) = p(x_{\text{heldout}} \mid x_{\text{train}})\)。难点在于 \(x_{\text{new}}\) 的分布依赖后验 \(p(\theta \mid x_{\text{train}})\),而 \(x_{\text{heldout}}\) 的分布依赖真实分布 \(p_{\theta^*}\)。作者通过在原假设下将 \(p_{\theta^*}\) 替换为 \(p_\theta\),并利用后验的贝叶斯更新性质(\(\int p_\theta(x) p(\theta \mid x_{\text{train}}) d\theta = p(x \mid x_{\text{train}})\)),将两者统一。 - 技术技巧点名: - 贝叶斯-频率派混合:用贝叶斯后验算预测分布,用频率派独立样本做评估,这是本文的核心设计技巧。 - 条件化与边缘化交换:在证明校准性时,先条件化于 \(x_{\text{train}}\) 证明两样本同分布,再边缘化证明 p-value 的 Uniform 性。这避免了 Robins et al. (2000) 需要直接边缘化参数 \(\theta\) 的计算困难。 - 数据分割:物理切断双重使用,这是操作层面的技巧,代价是训练集样本量减小。

真实例子与应用: - 经典回归:用线性回归模型拟合数据,故意欠拟合(遗漏变量)。HPC 能够检测到欠拟合(p-value 极小),而 PPC 因保守偏差倾向于不拒绝。 - 层级文本模型(Hierarchical model of text data, CorrLDA):在文本数据上拟合层级 LDA,HPC 用于检测主题数是否足够。实证显示 HPC 能在主题数不足时给出小 p-value,而 PPC 倾向于给出接近 0.5 的 p-value。 - 因子分析:在因子分析模型上,HPC 用于检测因子数设定是否正确。通过 heldout 集上的重构误差与后验预测重构误差的比较,HPC 识别了因子数不足的模型。 - 这些例子想说明什么:验证 HPC 的校准性(在模型正确时 p-value 均匀分布)与诊断能力(在模型错误时 p-value 偏向 0),并展示相对于 PPC 的优势(PPC 在模型错误时仍偏向 0.5,不敏感)。

🔎 结论是否比证明窄: - 作者在定理中证明了 HPC 在原假设下的边缘校准性,但在实证与讨论中泛泛 claim HPC 在模型错误时具有诊断能力(p-value 偋向 0)。这个 claim 没有严格的理论支撑——论文未给出备择假设下 HPC 的 power 分析或一致性拒绝定理。这是一个明显的窄结论被宽泛使用的点:校准性有证明,power 只有模拟。


四、开放问题(点到为止,扎根具体语句)

  1. HPC 在备择假设下的 power 界:论文证明了原假设下的校准性,但对备择假设(\(p^* \notin \mathcal{M}\))下 HPC 的拒绝概率没有理论刻画。扎根点:第三节定理只证了 \(p^* \in \mathcal{M}\) 下的 Uniform,而实证部分假设了 \(p^* \notin \mathcal{M}\) 时 p-value 偏向 0 但无定理。可追问:在特定偏离类(如半参数偏离 \(p^* = p_\theta + \delta\))下,HPC 的 power 衰减率是多少?
  2. 数据分割的信息损失与 power trade-off:训练集样本量 \(n_1\) 减小导致后验方差增大,这如何量化影响 HPC 的 power?扎根点:论文在实证中提及分割比例(如 50/50),但理论节完全回避了 \(n_1\) 对检验效率的影响。可追问:是否存在最优分割比例 \(n_1/n\) 使得 power 最大化?
  3. 高维与半参数模型下的校准性:论文的证明依赖先验在 \(\theta^*\) 处有正密度,在高维或非参数模型中(先验支撑可能稀疏或为零),HPC 的校准性是否仍成立?扎根点:假设 3(先验支撑)在经典低维模型中易满足,但在高维贝叶斯推断中常被违反。可追问:当 \(\dim(\theta) > n_1\) 时,HPC 的 p-value 是否仍校准?
  4. 与 Robins et al. (2000) observed-data p-value 的 power 比较:作者声称 HPC 避免了 observed-data p-value 的计算困难,但未比较两者的统计效率。扎根点:intro 中作者说 observed-data p-value "can be difficult to compute",但未提它的 power 可能优于 HPC(因用了全部数据)。可追问:在计算可行的模型中,HPC 的 power 是否严格低于 observed-data p-value?

Maintained by 陈星宇 · Homepage · Source on GitHub

评论