---
title: "用重要性权重和残差检验找出错误的模拟器"
description: "重要性权重拿假定似然检验网络，残差检验拿数据检验似然本身。藏着的第二模式可以两关都过。"
canonical_url: "https://sandboxphysics.com/zh/stories/simulation-based-inference/model-mismatch-and-importance-weights/"
language: "zh-CN"
page_type: "story"
alternate_languages:
  en: "https://sandboxphysics.com/stories/simulation-based-inference/model-mismatch-and-importance-weights/"
last_modified: "2026-11-12"
---

[从模拟里学到的后验能不能信](https://sandboxphysics.com/zh/stories/simulation-based-inference/)

# 用重要性权重和残差检验找出错误的模拟器

Sandbox Physics · 2026-11-12

在模拟上做校准，检验的是神经后验和它的模拟器合不合，不检验模拟器和数据合不合。另有两项检查能补上一部分空缺。重要性权重在手头这一条记录上，把网络和假定模型下的精确后验对比，网络力不从心时就会露馅。残差检验看数据减去最佳拟合信号后，剩下的部分像不像假定的噪声，能抓到模型本身的一些错误。可要是模型漏掉的信号能靠挪动参数被拟合吸收掉，两项检查都会放过它。

本章接着 [用秩统计和覆盖率检查后验是否校准](https://sandboxphysics.com/zh/stories/simulation-based-inference/rank-tests-for-posterior-calibration/)。新用到的有：换一个分布求期望、卡方分布、一阶泰勒展开。下面所有数字都来自 Lab 的模型，所以先把模型交代清楚。

## 教学模型

记录是合成的白化应变：128 个采样 $d_k$，采样时刻 $t_k=k/(4096\,\mathrm{Hz})$，共 $31.25\,\mathrm{ms}$。假定的信号是一个振幅和相位都固定的阻尼正弦：

$$
h_k(f,\tau)=A\,\mathrm e^{-t_k/\tau}\cos(2\pi f t_k+\varphi),\qquad A=1,\;\varphi=0,
$$

频率 $f$ 在 $200$ 到 $300\,\mathrm{Hz}$ 之间均匀分布，衰减时间 $\tau$ 在 $2$ 到 $10\,\mathrm{ms}$ 之间均匀分布。这沿用 Berti、Cardoso 与 Will 的写法；按他们的品质因子 $Q=\pi f\tau$，Lab 默认的源（$250\,\mathrm{Hz}$、$6\,\mathrm{ms}$）约为 $4.7$。[Berti、Cardoso 与 Will，2006，第二节](https://arxiv.org/abs/gr-qc/0512160v2) 假定噪声是白色高斯噪声，每个采样的标准差 $\sigma$ 已知，于是

$$
\ln p(d\mid f,\tau)=-\frac{1}{2\sigma^2}\sum_{k=0}^{127}\bigl[d_k-h_k(f,\tau)\bigr]^2+\text{const}.
$$

振幅和噪声用的是同一套白化单位。$\sigma=0.2$ 时，默认信号的最优信噪比 $\sqrt{\textstyle\sum_k h_k^2}/\sigma\simeq13.0$。网络只见过从这个模型生成、$\sigma$ 在 $0.15$ 到 $0.6$ 之间的记录。

## 重要性权重：拿网络和精确后验比

设网络对 $\theta=(f,\tau)$ 给出的后验是 $q(\theta\mid d)$，先验是 $\pi(\theta)$。精确后验下的任何期望，都能改写成 $q$ 下的期望：

$$
\mathbb E_{p}[g]=\frac{\int g(\theta)\,\pi(\theta)\,p(d\mid\theta)\,\mathrm d\theta}{\int\pi(\theta)\,p(d\mid\theta)\,\mathrm d\theta}
=\frac{\mathbb E_{q}[g\,w]}{\mathbb E_{q}[w]},\qquad w(\theta)=\frac{\pi(\theta)\,p(d\mid\theta)}{q(\theta\mid d)} .
$$

从网络里抽 $n$ 个样本 $\theta_i$，算出各自的权重 $w_i$，再用平均值代替期望。$q$ 等于精确后验时，所有权重都等于同一个数 $p(d)$。$q$ 漏掉一部分后验时，落在漏掉区域里的少数样本会拿到极大的权重。采样效率

$$
\epsilon=\frac{\bigl(\sum_i w_i\bigr)^2}{n\sum_i w_i^2}
$$

量的就是这件事：权重全相等时为一，一个样本独大时接近 $1/n$。Dax 等人在引力波网络 DINGO 上用的就是这个量，并把它偏低看作数据超出网络所学范围的信号。[Dax 等，2023](https://arxiv.org/abs/2210.05686v2)

样本很多时，$\epsilon$ 趋于 $\mathbb E_q[w]^2/\mathbb E_q[w^2]$。一个一维的例子能看出它掉得有多快。设精确后验是标准正态，网络给出中心正确、标准差为 $k$ 的正态分布，则

$$
\frac{\mathbb E_q[w^2]}{\mathbb E_q[w]^2}=\int\frac{p(\theta)^2}{q(\theta)}\,\mathrm d\theta=\frac{k^2}{\sqrt{2k^2-1}} .
$$

网络宽了 $1.5$ 倍，$\epsilon\to0.83$；窄成 $0.75$ 倍，$\epsilon\to0.63$。$k\le1/\sqrt2$ 时积分发散，权重的方差是无穷大，有限次抽样算出的效率靠不住。提议分布偏窄，比偏宽危险得多。DINGO 训练时用一种倾向于盖住全部后验质量的损失函数，这是原因之一。

在 Lab 的模型里，从整个训练范围抽 2000 条记录，网络效率的中位数是 $0.966$。$\sigma$ 在 $0.06$ 到 $0.1$ 之间的记录比训练时见过的都干净，中位数跌到 $0.029$。在这些记录上，400 次里网络的 90% 区域只罩住源 $0.38$，精确网格则罩住 $0.89$。

## 残差检验：拿数据检验模型

重要性权重用的是假定的似然，所以只能判断网络和假定模型合不合。要检验模型本身，得看拟合以后剩下什么。假定模型正确时，在真实参数处，缩放后的残差 $(d_k-h_k)/\sigma$ 是 128 个独立的标准正态数。拟合两个参数大约吃掉两个自由度，所以最小值

$$
\chi^2_{\min}=\min_{f,\tau}\frac{1}{\sigma^2}\sum_{k}\bigl[d_k-h_k(f,\tau)\bigr]^2
$$

近似服从自由度为 $126$ 的卡方分布，均值 $126$，标准差 $\sqrt{252}\simeq15.9$。Lab 给出的是取到这么大或更大的概率，低于 $0.01$ 就标出这条记录。

对模型正确的记录，这项检验标出了 $0.9\%$，和应有的 $1\%$ 很接近。对 $20\,\mathrm{ms}$ 处带毛刺的记录，它标出 $96.5\%$；真实噪声是假定 $\sigma$ 的 $1.5$ 倍时，全部标出。这两种情况下，重要性采样效率都远高于 $0.1$ 的警戒线，中位数约为 $0.70$ 和 $0.96$，因为网络和假定模型的精确后验仍然对得上。可精确后验自己也错了：它的 90% 区域只在 $0.40$ 和 $0.62$ 的记录里罩住了源。

## 漏掉一个小信号，答案会挪多少

设数据里多了一个模型没有的信号 $\delta h$。定义按噪声加权的内积 $(a\mid b)=\sum_k a_k b_k/\sigma^2$，以及费希尔矩阵 $\Gamma_{ij}=(\partial_i h\mid\partial_j h)$。把最佳拟合对 $\delta h$ 展开到一阶，Cutler 与 Vallisneri 得到参数的偏移

$$
\delta\theta^{i}=\bigl(\Gamma^{-1}\bigr)^{ij}\,\bigl(\partial_j h\mid\delta h\bigr).
$$

[Cutler 与 Vallisneri，2007，第二节](https://arxiv.org/abs/0707.2982v2) $\Gamma$ 和内积都按 $1/\sigma^2$ 变化，所以偏移和噪声水平无关；后验宽度却按 $\sigma$ 变化。同样大小的失配，信号越响，危害越大。

保存的网格检验在默认的源上加了一个示意性的第二模式，来检验这个公式。强度 $0.02$ 时，公式预言频率偏移 $0.0888\,\mathrm{Hz}$，网格算出 $0.0882\,\mathrm{Hz}$；衰减时间预言 $0.0208\,\mathrm{ms}$，网格算出 $0.0207\,\mathrm{ms}$。强度 $0.3$ 时，把 $\sigma$ 从 $0.6$ 降到 $0.05$，频率偏移从 $1.76\,\mathrm{Hz}$ 趋向高信噪比下约 $1.23\,\mathrm{Hz}$ 的值，而以后验标准差为单位的偏移从 $0.16$ 涨到 $1.70$。

## 两项检查都漏掉的失配

在 $\sigma=0.2$ 的默认源里加一个强度 $0.6$ 的第二模式。拟合靠挪动 $f$ 和 $\tau$ 把它吸收了大半，残差看上去几乎就是噪声：400 条记录里检验只标出 $6\%$。网络仍然和假定模型的精确后验对得上，效率中位数是 $0.98$。可在名义 90% 的水平上，两种后验都只在大约 $0.74$ 的记录里罩住了源。

**表 4.1** 哪项检查看得见哪种毛病。每行 400 条合成记录，名义 90% 区域。

| 记录 | 网络覆盖率 | 精确覆盖率 | 效率中位数 | 残差检验标出 |
| --- | --- | --- | --- | --- |
| 训练范围内 | $0.905$ | $0.900$ | $0.990$ | $0.8\%$ |
| 比训练数据更干净 | $0.285$ | $0.893$ | $0.020$ | $1.3\%$ |
| 记录里的毛刺 | $0.373$ | $0.113$ | $0.292$ | $100\%$ |
| 噪声比假定的强 | $0.648$ | $0.650$ | $0.980$ | $100\%$ |
| 藏着的第二模式 | $0.735$ | $0.743$ | $0.983$ | $6.3\%$ |

各行就是 Lab 里固定源的预设。毛刺那一行，效率也跌到中位数 $0.29$，因为这么强的毛刺让记录离训练时见过的样子太远；真正把它标出来的是残差检验。Talts 等人把这条边界说得很一般：校准不保证模型丰富到足以描述真相。[Talts 等，2018，第 4 节](https://arxiv.org/abs/1804.06788v2) 有研究专门拿故意写错的模拟器去考神经方法，试过的补救办法没有一种能在所有情况下防止失败。[Cannon、Ward 与 Schmon，2022](https://arxiv.org/abs/2209.01845v1) 要揭出这种情况，得换一个包含第二模式的更完整模型，给它算后验，也给它做校准。

## Lab 任务

打开 [神经后验 Lab](https://sandboxphysics.com/zh/labs/neural-posterior-calibration/)。

1. 预测：选“记录里的毛刺”，再把紫色手柄往下拖，让强度趋近零。效率和残差检验 p 值，哪个先恢复？
2. 改一个条件：在“藏着的第二模式”里把强度从 $0.6$ 调到 $1$。残差检验开始报警了吗？覆盖率的缺口变大了吗？
3. 比较：把噪声带边缘拖到略低于 $0.15$，再拖到略高于 $0.6$。训练范围的哪一侧更伤网络？精确后验为什么不在乎？

## 练习

1. 二十个重要性权重，除了一个是别的十倍，其余全相等。求 $\epsilon$。
2. 残差检验为什么用 $126$ 个自由度，而不是 $128$ 个？
3. 按上面的标度论证，如果线性公式成立，$\sigma$ 减半时，以后验标准差为单位的频率偏移变成几倍？

答案

1. 把权重写成十九个 $1$ 和一个 $10$。$\sum w=29$，$\sum w^2=19+100=119$，所以 $\epsilon=29^2/(20\times119)\simeq0.353$。一个离群值就让有用的样本少了将近三分之二。
2. 最小值是对两个拟合参数取的。在最佳拟合附近，模型对参数近似线性时，每拟合一个参数，残差平方和就少一个自由度。
3. 偏移本身不变，后验宽度减半，所以以后验标准差为单位的偏移翻倍。网格在 $\sigma=0.3$ 和 $0.15$ 处的值 $0.29$ 和 $0.57$ 与此相符。

## 来源

1. [Berti、Cardoso 与 Will，2006，第二节](https://arxiv.org/abs/gr-qc/0512160v2)
2. [Dax 等，2023](https://arxiv.org/abs/2210.05686v2)
3. [Cutler 与 Vallisneri，2007，第二节](https://arxiv.org/abs/0707.2982v2)
4. [Talts 等，2018，第 4 节](https://arxiv.org/abs/1804.06788v2)
5. [Cannon、Ward 与 Schmon，2022](https://arxiv.org/abs/2209.01845v1)

## 继续阅读

从模拟里学到的后验能不能信 · 阅读路径

### 从后验到校准，再到模型失配

1. [文章 **神经网络给出的漂亮后验，怎样证明可以相信**](https://sandboxphysics.com/zh/stories/simulation-based-inference/trusting-a-neural-posterior/)
2. [文章 **后验分布与 90% 可信区域到底保证什么**](https://sandboxphysics.com/zh/stories/simulation-based-inference/posterior-and-credible-regions/)
3. [文章 **用秩统计和覆盖率检查后验是否校准**](https://sandboxphysics.com/zh/stories/simulation-based-inference/rank-tests-for-posterior-calibration/)
4. [当前页面 **用重要性权重和残差检验找出错误的模拟器**](https://sandboxphysics.com/zh/stories/simulation-based-inference/model-mismatch-and-importance-weights/)
5. [文章 **动手复算振铃后验的校准检验**](https://sandboxphysics.com/zh/stories/simulation-based-inference/recompute-the-ringdown-calibration/)
6. [文章 **读懂 DINGO 论文里的 P–P 图、散度和采样效率**](https://sandboxphysics.com/zh/stories/simulation-based-inference/reading-dingo-calibration-evidence/)
