核密度估计与扩散模型
- todo: 增加可视化html
- todo: 审阅
VE 型扩散可以被严格解释为连续带宽高斯 KDE 的参数化推广,而 VP/DDPM 型扩散则对应带有中心收缩的高斯混合平滑族。神经网络的作用,是在高维空间中压缩并泛化这一整族分布的 score,而不是显式保存全部核中心。
本文沿着“KDE—尺度空间—score—去噪—扩散”的逻辑链条,对相关经典工作进行统一分析。
1. 高斯 KDE:从离散经验分布到连续密度
1.1 经验分布与核平滑
给定独立同分布样本 $x_1,\ldots,x_n\in\mathbb R^d$,其经验分布可以形式化表示为
\[\hat p_0(x) = \frac{1}{n} \sum_{i=1}^{n} \delta(x-x_i),\]其中 $\delta$ 是 Dirac 测度。经验分布保留了全部样本信息,但它是离散且奇异的,通常不存在相对于 Lebesgue 测度的普通密度,更不存在良好定义的环境空间 score。
带宽为 $h$ 的各向同性高斯 KDE 定义为
\[\hat p_h(x) = \frac{1}{n} \sum_{i=1}^{n} \frac{1}{(2\pi h^2)^{d/2}} \exp\left( -\frac{|x-x_i|^2}{2h^2} \right).\]若记协方差为 $h^2I$ 的高斯密度为 $\varphi_{h^2}$,则 KDE 可以写成卷积形式
\[\hat p_h = \hat p_0 * \varphi_{h^2}.\]因此,带宽 $h$ 并不只是一个数值调参变量,而是把离散经验测度映射为连续概率密度的平滑尺度。随着 $h$ 增大,每个样本点的质量向更大的邻域扩散,局部尖峰被抹平,分离的模态可能逐渐连接或合并。Botev、Grotowski 与 Kroese 将这种解释系统化为基于扩散过程的核密度估计框架。
1.2 带宽族具有高斯半群结构
设 $0<h_1<h_2$。高斯分布的卷积封闭性给出
\[\mathcal N(0,h_1^2I) * \mathcal N(0,(h_2^2-h_1^2)I) = \mathcal N(0,h_2^2I).\]因此,
\[\hat p_{h_2} = \hat p_{h_1} * \mathcal N\left( 0,(h_2^2-h_1^2)I \right).\]这意味着从 $h_1$ 到 $h_2$ 不需要重新从原始数据构造估计,只需要继续施加额外的高斯平滑。若以方差尺度 $\tau=h^2$ 为参数,则有半群关系
\[P_{\tau_1+\tau_2} = P_{\tau_1}P_{\tau_2},\]其中 $P_\tau$ 是高斯平滑算子。
这一结构非常重要:不同带宽的 KDE 不是彼此独立的估计,而是位于同一条由高斯半群生成的连续概率路径上。Chaudhuri 与 Marron 将由平滑参数索引的一族曲线估计组织为统计尺度空间,强调平滑参数对应观察分辨率,而不应只被看作需要选出唯一最优值的 nuisance parameter。
2. KDE 与热方程:带宽就是扩散时间
2.1 两种常见热方程约定
考虑热方程
\[\frac{\partial p_t(x)}{\partial t} = \frac{1}{2}\Delta p_t(x),\]其初始条件为 $p_0$ 时,解为
\[p_t = p_0 * \mathcal N(0,tI).\]将 $p_0$ 替换为经验分布 $\hat p_0$,得到
\[p_t(x) = \frac{1}{n} \sum_{i=1}^{n} \mathcal N(x;x_i,tI).\]它与高斯 KDE 完全相同,且满足
\[h^2=t.\]Botev 等人采用的正是 $\partial_t p_t=\frac12\Delta p_t$ 这一约定,并指出高斯 KDE 是相应扩散偏微分方程的唯一解,高斯核则是该方程的 Green 函数。
另一种常见约定是
\[\frac{\partial p_t(x)}{\partial t} = \Delta p_t(x).\]此时基本解的协方差为 $2tI$,因此对应关系变为
\[h^2=2t.\]所以,“$h^2=t$”还是“$h^2=2t$”不是理论矛盾,而是扩散生成元中系数约定不同。更本质的结论是
\[\text{扩散时间} \propto \text{核方差} = h^2.\]2.2 尺度空间中的结构消失
对于一维高斯 KDE,随着扩散时间或带宽增加,局部极大值的数目不会增加。直观上,热扩散可以消除细尺度结构,却不会凭空创造新的细尺度结构。Botev 等人利用热方程在局部极大值处的符号关系说明这一点,并将其联系到 Silverman 的多模态检验。
Silverman 定义临界带宽
\[h_k = \inf \{ h: \hat p_h \text{ 至多具有 }k\text{ 个模态} \},\]并以此研究总体分布的模态数。这里的关键不是寻找“视觉上最合理”的一条密度曲线,而是考察模态结构能够在多大的平滑尺度下保持稳定。
不过,这一模态单调性需要谨慎使用。它对一维高斯核具有特别良好的性质,但不能直接推广为“任意核、任意维度下模态数都随带宽单调下降”。在高维空间中,临界点的产生、消失和拓扑变化更加复杂。
3. KDE 的 score:从密度估计到向量场估计
3.1 高斯 KDE score 的解析表达式
定义尺度 $h$ 下的 score 为
\[s_h(x) = \nabla_x\log\hat p_h(x).\]对高斯 KDE 直接求导,可得
\[\nabla_x\hat p_h(x) = \frac{1}{n} \sum_{i=1}^{n} \mathcal N(x;x_i,h^2I) \frac{x_i-x}{h^2}.\]定义归一化核权重
\[w_i(x;h) = \frac{ \mathcal N(x;x_i,h^2I) }{ \sum_{j=1}^{n} \mathcal N(x;x_j,h^2I) },\]则
\[s_h(x) = \frac{1}{h^2} \left( \sum_{i=1}^{n}w_i(x;h)x_i-x \right).\]记局部核加权均值为
\[m_h(x) = \sum_{i=1}^{n} w_i(x;h)x_i,\]便得到核心恒等式
\[m_h(x)-x = h^2s_h(x).\]也就是说,高斯 KDE 的 score 指向以当前点为中心、由核权重定义的局部样本重心,其长度还受到 $h^{-2}$ 的尺度归一化。
3.2 Mean shift 是沿 score 的自适应步进
Fukunaga 与 Hostetler 从非参数密度梯度估计出发提出 mean-shift 估计,并将其用于模式识别和聚类。
高斯核情况下,mean-shift 迭代为
\[x^{(k+1)} = m_h\left(x^{(k)}\right).\]利用上面的恒等式,可写成
\[x^{(k+1)} = x^{(k)} + h^2s_h\left(x^{(k)}\right).\]因此,mean shift 本质上是沿 KDE 的对数密度梯度执行确定性上升,只是其步长由 $h^2$ 和局部核结构共同决定。它与后续 score-based 模型的差别主要不在于方向,而在于:
- mean shift 通常使用固定带宽;
- 它以确定性方式收敛到局部模态;
- 它不包含维持目标分布所需的随机噪声;
- 它的目标是模式搜索或聚类,而非从完整分布生成样本。
4. Tweedie 公式:score 与最优去噪器的精确联系
4.1 高斯观测模型
设干净变量为 $X$,观测变量为
\[Y=X+\sigma\epsilon, \qquad \epsilon\sim\mathcal N(0,I).\]记 $Y$ 的边缘密度为
\[p_\sigma(y) = \int p_0(x) \mathcal N(y;x,\sigma^2I) ,dx.\]Tweedie 公式给出
\[\mathbb E[X\mid Y=y] = y+\sigma^2\nabla_y\log p_\sigma(y).\]因此,
\[\nabla_y\log p_\sigma(y) = \frac{ \mathbb E[X\mid Y=y]-y }{ \sigma^2 }.\]这不是小噪声近似,而是加性高斯观测模型下的精确恒等式。Efron 对 Tweedie 公式及其经验 Bayes 含义进行了系统讨论。
4.2 KDE、Mean Shift 与 Tweedie 公式之间的关系
设随机变量 $X$ 的先验分布取为训练样本的经验分布:
\[p_0(dx) = \frac{1}{n} \sum_{i=1}^{n} \delta_{x_i}(dx),\]其中 $\delta_{x_i}$ 表示集中在样本点 $x_i$ 上的 Dirac 测度。考虑加性高斯观测模型
\[Y=X+\sigma\varepsilon, \qquad \varepsilon\sim\mathcal N(0,I).\]此时,观测变量 $Y$ 的边缘密度为
\[\hat p_\sigma(y) = \frac{1}{n} \sum_{i=1}^{n} \mathcal N(y;x_i,\sigma^2I),\]它恰好是以 $\sigma$ 为带宽的高斯核密度估计。
根据 Bayes 公式,在给定观测 $Y=y$ 后,潜在干净样本取值为 $x_i$ 的后验概率为
\[\mathbb P(X=x_i\mid Y=y) = \frac{ \mathcal N(y;x_i,\sigma^2I) }{ \sum_{j=1}^{n} \mathcal N(y;x_j,\sigma^2I) } \equiv w_i(y;\sigma).\]因此,Bayes 最优平方误差去噪器,即后验均值,为
\[\mathbb E[X\mid Y=y] = \sum_{i=1}^{n} w_i(y;\sigma)x_i.\]定义高斯核下的局部加权均值
\[m_\sigma(y) = \sum_{i=1}^{n} w_i(y;\sigma)x_i,\]则有
\[m_\sigma(y) = \mathbb E[X\mid Y=y].\]另一方面,Tweedie 公式给出
\[\mathbb E[X\mid Y=y] = y+\sigma^2\nabla_y\log\hat p_\sigma(y).\]将后验均值表达式代入,得到
\[m_\sigma(y) = y+\sigma^2\nabla_y\log\hat p_\sigma(y),\]从而
\[m_\sigma(y)-y = \sigma^2\nabla_y\log\hat p_\sigma(y).\]对于高斯核,Mean Shift 向量通常定义为
\[v_{\mathrm{MS}}(y) = m_\sigma(y)-y.\]因此,
\[v_{\mathrm{MS}}(y) = \sigma^2\nabla_y\log\hat p_\sigma(y).\]同时,Bayes 最优去噪残差为
\[\mathbb E[X\mid Y=y]-y = \sigma^2\nabla_y\log\hat p_\sigma(y).\]由此可见,高斯核情形下有如下对应关系:
\[\boxed{ \underbrace{m_\sigma(y)-y}_{\text{Mean Shift 向量}} = \underbrace{\mathbb E[X\mid Y=y]-y}_{\text{Bayes 最优去噪残差}} = \sigma^2 \underbrace{\nabla_y\log\hat p_\sigma(y)}_{\text{KDE score}} }\]具体而言:
- KDE score $\nabla_y\log\hat p_\sigma(y)$ 描述对数密度增长最快的方向;
- Mean Shift 向量 $m_\sigma(y)-y$ 指向局部核加权均值;
- Bayes 最优去噪残差 $\mathbb E[X\mid Y=y]-y$ 表示从噪声观测返回后验均值的修正量。
在经验分布先验和加性高斯噪声模型下,后两者完全相同,并且等于 KDE score 乘以噪声方差 $\sigma^2$。
从现代扩散模型的角度看,score 网络本质上是在学习一个跨噪声尺度共享参数的高维经验 Bayes 去噪器。
5. Score matching:不估计归一化密度,直接估计对数梯度
5.1 原始 score matching 目标
设真实密度为 $p_{\mathrm{data}}$,模型 score 为 $s_\theta(x)$。理想目标是最小化 Fisher divergence
\[J(\theta) = \frac12 \mathbb E_{p_{\mathrm{data}}} \left[ \left| s_\theta(x) - \nabla_x\log p_{\mathrm{data}}(x) \right|^2 \right].\]困难在于真实 score 未知。Hyvärinen 证明,在适当的光滑性和边界条件下,通过分部积分可以将其改写为
\[J(\theta) = \mathbb E_{p_{\mathrm{data}}} \left[ \frac12|s_\theta(x)|^2 + \nabla_x\cdot s_\theta(x) \right] + C,\]其中 $C$ 与 $\theta$ 无关。于是训练只需要数据样本和模型自身的导数,不需要知道真实密度,也不需要计算能量模型的配分函数。
如果模型由未归一化密度给出
\[p_\theta(x) = \frac{\exp(-E_\theta(x))}{Z_\theta},\]则
\[\nabla_x\log p_\theta(x) = -\nabla_xE_\theta(x),\]因为归一化常数 $Z_\theta$ 与 $x$ 无关。score matching 因而绕过了通常难以计算的配分函数。
5.2 原始 score matching 的高维困难
原始目标包含散度项
\[\nabla_x\cdot s_\theta(x) = \operatorname{tr} \left( \nabla_xs_\theta(x) \right),\]在高维神经网络中可能涉及昂贵的 Jacobian trace 计算。此外,如果数据集中在低维流形上,环境空间中的密度可能是奇异的,普通 score 不一定存在,经典 score matching 的正则条件也可能失效。Song 与 Ermon 将这两个问题列为直接在原始数据分布上训练 score 模型的核心障碍。
6. Denoising score matching:用条件噪声构造可监督目标
6.1 Vincent 的等价性
设腐蚀分布为 $q_\sigma(\tilde x\mid x)$,平滑后的边缘分布为
\[q_\sigma(\tilde x) = \int p_{\mathrm{data}}(x) q_\sigma(\tilde x\mid x) ,dx.\]Vincent 证明,对边缘分布 $q_\sigma(\tilde x)$ 进行 score matching,可以等价地转化为使用条件腐蚀分布 score 的目标。
对于高斯腐蚀
\[q_\sigma(\tilde x\mid x) = \mathcal N(\tilde x;x,\sigma^2I),\]条件 score 为
\[\nabla_{\tilde x} \log q_\sigma(\tilde x\mid x) = -\frac{\tilde x-x}{\sigma^2}.\]因此 denoising score matching 的目标可以写成
\[\mathcal L_{\mathrm{DSM}}(\theta;\sigma) = \frac12 \mathbb E_{x\sim p_{\mathrm{data}}} \mathbb E_{\tilde x\sim q_\sigma(\cdot\mid x)} \left[ \left| s_\theta(\tilde x,\sigma) + \frac{\tilde x-x}{\sigma^2} \right|^2 \right].\]其总体最优解是
\[s_\theta^*(\tilde x,\sigma) = \nabla_{\tilde x} \log q_\sigma(\tilde x).\]这里必须区分两个对象:
- 训练标签使用的是条件 score $-(\tilde x-x)/\sigma^2$;
- 网络在均方误差意义下学习到的是边缘平滑分布的 score $\nabla\log q_\sigma(\tilde x)$。
二者通过条件期望联系:
\[\mathbb E \left[ -\frac{\tilde X-X}{\sigma^2} \mathrel{\bigg|} \tilde X=\tilde x \right] = \nabla_{\tilde x} \log q_\sigma(\tilde x).\]这正是 Tweedie 公式的 score 形式。
6.2 去噪自编码器学到什么
若去噪器 $r_\sigma(\tilde x)$ 使用平方误差训练,则无限容量下的最优解为
\[r_\sigma^*(\tilde x) = \mathbb E[X\mid\tilde X=\tilde x].\]结合 Tweedie 公式可得
\[r_\sigma^*(\tilde x) = \tilde x + \sigma^2 \nabla_{\tilde x} \log q_\sigma(\tilde x).\]Alain 与 Bengio 从正则化自编码器和小噪声渐近展开的角度证明,最优重构函数满足
\[r_{\sigma^2}^*(x) = x + \sigma^2\nabla_x\log p(x) + o(\sigma^2), \qquad \sigma^2\to0.\]他们由此说明,重构残差刻画的是局部 score,而不能简单地把重构误差本身解释为概率能量。
需要注意,两个公式的适用语境不同:
- 对高斯腐蚀后的边缘分布 $q_\sigma$,Tweedie 公式是精确的;
- 对原始分布 $p$ 的 score,正则化自编码器结果通常是 $\sigma\to0$ 下的渐近关系。
7. 为什么一个带宽不够:从单尺度 KDE 到多尺度 score
7.1 小带宽的问题
当 $h$ 很小时,高斯 KDE 接近经验分布。此时每个核高度集中于单一样本附近:
- 密度包含大量样本级尖峰;
- score 在核重叠较弱处可能剧烈变化;
- 低密度区域几乎没有训练信号;
- 有限样本 KDE 的 score 容易指向最近训练样本;
- 高维数据若接近低维流形,原始 score 甚至可能没有普通意义。
因此,小 $h$ 虽然保留细节,却难以提供适合全局采样的向量场。
7.2 大带宽的问题
当 $h$ 很大时,不同样本核大量重叠,分布变得平滑且连通,score 更容易估计,基于 Langevin 动力学的链也更容易跨越原始分布中的低密度屏障。
但过大的 $h$ 会抹除:
- 局部纹理;
- 小尺度几何结构;
- 独立模态;
- 类别间细粒度差异。
因此,单一大带宽不能恢复数据分布。
7.3 多尺度路径作为 continuation 方法
Song 与 Ermon 构造一组递减的噪声尺度
\[\sigma_1>\sigma_2>\cdots>\sigma_L>0,\]通常令其构成几何序列,并训练单个噪声条件 score 网络
\[s_\theta(x,\sigma_i) \approx \nabla_x\log q_{\sigma_i}(x).\]采样从最大的 $\sigma_1$ 开始,然后逐步降低噪声尺度。这种 annealed Langevin dynamics 先在平滑、连通、易混合的分布上建立全局结构,再逐步恢复细节。
从数值分析角度看,这是一种 continuation 或 homotopy 策略:
\[\text{容易求解的平滑分布} \longrightarrow \text{逐步增加复杂度} \longrightarrow \text{目标数据分布}.\]从 KDE 角度看,它就是沿着一条带宽递减路径反向移动:
\[h_{\max} \longrightarrow h_{\min}.\]8. Langevin 动力学:score 为什么能够生成样本
给定目标密度 $p(x)$,过阻尼 Langevin SDE 为
\[dX_t = \frac12 \nabla_x\log p(X_t),dt + dW_t.\]在适当条件下,其平稳分布为 $p$。对应的 Euler–Maruyama 离散化为
\[x_{k+1} = x_k + \frac{\eta}{2} \nabla_x\log p(x_k) + \sqrt{\eta},z_k, \qquad z_k\sim\mathcal N(0,I).\]确定性的 score 项将样本推向高密度区域,随机项则阻止所有轨迹坍缩到局部模态,并维持正确的概率质量分布。
如果去掉随机项,就得到近似梯度上升:
\[x_{k+1} = x_k + \frac{\eta}{2} s(x_k),\]其行为更接近 mean shift,只能进行模式搜索,不能保证从完整目标分布采样。
Song 与 Ermon 指出,在多模态分布中,直接使用最低噪声级别的 Langevin 动力学可能因低密度屏障而混合缓慢;使用多个噪声尺度能够改善不同模态之间的概率质量传递。
9. 离散扩散概率模型:KDE 路径的马尔可夫化
9.1 Sohl-Dickstein 等人的前向与逆向过程
扩散概率模型的基本思想是构造一个固定的前向马尔可夫过程,逐步破坏数据结构,再学习其逆过程。Sohl-Dickstein 等人从非平衡热力学出发提出这一生成建模框架:前向过程逐步将复杂数据分布转化为简单分布,反向过程则恢复原始结构。
一般离散前向过程写成
\[q(x_{1:T}\mid x_0) = \prod_{t=1}^{T} q(x_t\mid x_{t-1}),\]逆过程由模型参数化:
\[p_\theta(x_{0:T}) = p(x_T) \prod_{t=1}^{T} p_\theta(x_{t-1}\mid x_t).\]前向扩散易于采样,难点集中在逆条件分布的学习。
9.2 DDPM 的 VP 前向过程
Ho、Jain 与 Abbeel 使用高斯前向转移
\[q(x_t\mid x_{t-1}) = \mathcal N \left( x_t; \sqrt{1-\beta_t},x_{t-1}, \beta_tI \right).\]定义
\[\alpha_t=1-\beta_t, \qquad \bar\alpha_t=\prod_{s=1}^{t}\alpha_s,\]则任意时刻可以直接写成
\[q(x_t\mid x_0) = \mathcal N \left( x_t; \sqrt{\bar\alpha_t},x_0, (1-\bar\alpha_t)I \right),\]或采用重参数化
\[x_t = \sqrt{\bar\alpha_t},x_0 + \sqrt{1-\bar\alpha_t},\epsilon, \qquad \epsilon\sim\mathcal N(0,I).\]DDPM 进一步揭示了扩散概率模型、denoising score matching 和多噪声尺度训练之间的对应关系。
10. DDPM 是否等价于 KDE
10.1 经验边缘分布是收缩中心的高斯混合
若初始数据分布使用经验分布表示,则 DDPM 在时刻 $t$ 的边缘分布为
\[\hat p_t(x) = \frac1n \sum_{i=1}^{n} \mathcal N \left( x; \sqrt{\bar\alpha_t},x_i, (1-\bar\alpha_t)I \right).\]因此,DDPM 确实产生高斯混合,但它并不是最普通的固定中心 KDE,因为:
- 核标准差为 $\sqrt{1-\bar\alpha_t}$;
- 核中心同时收缩为 $\sqrt{\bar\alpha_t}x_i$。
所以,将 DDPM 直接表述为“带宽 $h_t=\sqrt{1-\bar\alpha_t}$ 的 KDE”是不完整的。准确说法是:
DDPM 的前向边缘分布是一族中心随时间收缩、方差随时间增加的高斯核混合。
10.2 归一化坐标下的有效带宽
只要 $\bar\alpha_t>0$,定义归一化变量
\[\tilde x_t = \frac{x_t}{\sqrt{\bar\alpha_t}},\]则
\[\tilde x_t = x_0 + \sqrt{ \frac{1-\bar\alpha_t}{\bar\alpha_t} } ,\epsilon.\]于是,在归一化坐标中,它重新变成以原始样本为中心的高斯 KDE,其有效带宽为
\[\tilde h_t = \sqrt{ \frac{1-\bar\alpha_t}{\bar\alpha_t} }.\]这一区分说明:
- 在原始坐标中,VP/DDPM 同时执行缩放和扩散;
- 在信噪比归一化坐标中,它可以重新解释为纯加性噪声平滑。
相应的信噪比为
\[\operatorname{SNR}(t) = \frac{\bar\alpha_t}{1-\bar\alpha_t},\]因此
\[\tilde h_t^2 = \frac{1}{\operatorname{SNR}(t)}.\]从这一角度看,扩散时间、有效 KDE 带宽与逆信噪比是同一尺度变量的不同参数化。
11. DDPM 的噪声预测与 score 参数化
DDPM 常使用噪声预测网络 $\epsilon_\theta(x_t,t)$,训练目标简化为
\[\mathcal L_{\mathrm{simple}} = \mathbb E_{t,x_0,\epsilon} \left[ \left| \epsilon = \epsilon_\theta \left( \sqrt{\bar\alpha_t}x_0 + \sqrt{1-\bar\alpha_t}\epsilon, t \right) \right|^2 \right].\]由于条件高斯分布的 score 为
\[\nabla_{x_t} \log q(x_t\mid x_0) = -\frac{\epsilon}{\sqrt{1-\bar\alpha_t}},\]可以将噪声预测器转换为 score 预测器:
\[s_\theta(x_t,t) = -\frac{ \epsilon_\theta(x_t,t) }{ \sqrt{1-\bar\alpha_t} }.\]因此,预测噪声、预测 score 和预测去噪后的 $x_0$ 并不是三个彼此独立的问题,而是同一高斯条件模型下的不同参数化。
在总体最优条件下,网络的噪声预测满足
\[\epsilon_\theta^*(x_t,t) = \mathbb E[\epsilon\mid x_t],\]从而
\[s_\theta^*(x_t,t) = \nabla_{x_t}\log p_t(x_t).\]这正是 denoising score matching 的条件期望机制。
12. 连续时间 SDE:统一 VE、VP、NCSN 与 DDPM
12.1 一般前向 SDE
Song 等人将离散扩散推广为连续时间随机微分方程
\[dX_t = f(X_t,t),dt + g(t),dW_t.\]这一 SDE 将初始数据分布 $p_0$ 连续变换为终点附近的简单先验分布 $p_T$。其核心贡献之一,是以同一框架统一早期 score-based 模型和扩散概率模型。
12.2 VE SDE:与 KDE 最精确的对应
VE,即 variance exploding 过程,可以写成边缘形式
\[X_t = X_0 + \sigma(t)\epsilon.\]于是
\[p_t(x) = \int p_0(x_0) \mathcal N \left( x;x_0,\sigma^2(t)I \right) ,dx_0.\]对于经验分布,
\[\hat p_t(x) = \frac1n \sum_{i=1}^{n} \mathcal N \left( x;x_i,\sigma^2(t)I \right).\]因此 VE 扩散与高斯 KDE 严格对应:
\[h_t=\sigma(t).\]在这一情形下,前向扩散就是不断增大 KDE 带宽,反向生成就是沿连续带宽路径从大尺度走向小尺度。
12.3 VP SDE:扩散与均值回归同时发生
VP,即 variance preserving 过程,对应连续时间极限下的 DDPM。其边缘形式一般写成
\[X_t = \alpha(t)X_0 + \sigma(t)\epsilon,\]并满足适当的方差约束。经验边缘分布为
\[\hat p_t(x) = \frac1n \sum_{i=1}^{n} \mathcal N \left( x; \alpha(t)x_i, \sigma^2(t)I \right).\]所以 VP 不是纯 KDE 扩散,而是“中心收缩加核扩散”。在归一化变量 $X_t/\alpha(t)$ 下,有效带宽为
\[h_{\mathrm{eff}}(t) = \frac{\sigma(t)}{\alpha(t)}.\]13. 逆时间 SDE:score 是逆扩散唯一未知项
对于前向 SDE
\[dX_t = f(X_t,t),dt + g(t),dW_t,\]相应的逆时间 SDE 为
\[dX_t = \left[ f(X_t,t) = g^2(t) \nabla_x\log p_t(X_t) \right]dt + g(t),d\bar W_t,\]其中时间从 $T$ 向 $0$ 积分,$\bar W_t$ 表示逆时间 Wiener 过程。
前向漂移 $f$ 和扩散系数 $g$ 是人为设计且已知的,唯一未知项是时变 score
\[\nabla_x\log p_t(x).\]因此,扩散模型的训练任务可以概括为:
\[s_\theta(x,t) \approx \nabla_x\log p_t(x), \qquad t\in[0,T].\]一旦得到这一时变向量场,就可以使用数值 SDE 求解器执行逆扩散。Song 等人还构造了与前向 SDE 具有相同时间边缘分布的 probability flow ODE:
\[dX_t = \left[ f(X_t,t) = \frac12g^2(t) \nabla_x\log p_t(X_t) \right]dt.\]它去除了随机项,但改变了 score 漂移系数,可用于确定性生成和似然计算。
14. 一个统一的数学图景
综合上述结果,可以将相关方法放入同一框架。
14.1 分布层面
高斯平滑族为
\[p_h = p_0 * \mathcal N(0,h^2I).\]对于有限样本,它是 KDE;对于未知真实分布,它是加性高斯噪声后的边缘分布;对于 VE 模型,它是扩散过程的时间边缘分布。
14.2 向量场层面
每个尺度对应一个 score:
\[s_h(x) = \nabla_x\log p_h(x).\]它同时可以解释为:
- 平滑密度的最陡对数上升方向;
- mean-shift 位移除以 $h^2$;
- 最优去噪残差除以 $h^2$;
- Langevin 动力学的漂移方向;
- 逆扩散 SDE 中的时间反演修正项。
14.3 学习层面
对于有限样本,精确 KDE score 需要计算所有样本对查询点的核权重,单次查询复杂度通常为 $O(nd)$。现代 score 网络通过参数共享学习映射
\[(x,h) \mapsto s_h(x),\]将整套多尺度核计算压缩到神经网络参数中,并试图在训练样本之间实现统计泛化。
14.4 生成层面
生成过程不是直接从最小带宽分布采样,而是沿平滑分布族逐级反演:
\[p_{h_{\max}} \rightarrow p_{h_{L-1}} \rightarrow \cdots \rightarrow p_{h_{\min}} \approx p_{\mathrm{data}}.\]这解释了为什么扩散模型需要大量中间噪声级别:它们不仅是数值离散点,也是连接简单先验与复杂数据分布的中间概率几何。
15. KDE 带宽选择与扩散噪声调度不是同一优化问题
经典 KDE 通常试图选择一个带宽,使密度估计误差最小,例如最小化渐近积分均方误差。Botev 等人的扩散 KDE 也重点研究了数据驱动的带宽选择和自适应平滑。
扩散模型则需要设计完整的尺度路径,而不是选择单个最优 $h$。其目标包括:
- 最大噪声级别下分布应足够接近简单先验;
- 相邻时间分布之间不能相差过大;
- 低噪声区域必须有足够分辨率以恢复细节;
- score 训练中不同尺度的梯度量级需要平衡;
- 数值逆积分的离散误差需要受控。
因此,
\[\text{KDE 最优带宽} \neq \text{扩散模型的最优噪声调度}.\]前者主要是静态统计估计问题,后者是分布路径设计、函数逼近和随机微分方程数值求解的联合问题。
16. 多尺度训练中的尺度归一化
对于高斯扰动,条件 score 的典型量级为
\[\left| \frac{\tilde x-x}{\sigma^2} \right| \sim \frac{\sqrt d}{\sigma}.\]因此,小噪声尺度上的目标值通常更大。如果直接对所有噪声级别等权训练,小 $\sigma$ 可能主导梯度。
Song 与 Ermon 在 NCSN 中使用加权目标
\[\mathcal L(\theta) = \frac1L \sum_{i=1}^{L} \lambda(\sigma_i) \mathcal L_{\mathrm{DSM}}(\theta;\sigma_i),\]并采用 $\lambda(\sigma)=\sigma^2$ 平衡不同噪声级别的损失量级。
这一点也揭示了“带宽只是一个平滑参数”这一说法的局限:score 本身随带宽发生量纲变化。比较不同 $h$ 下的向量场时,常常需要考察尺度归一化对象,例如
\[h,s_h(x) \quad\text{或}\quad h^2s_h(x),\]其中 $h^2s_h(x)$ 恰好对应去噪位移。
17. 高维情形下的关键限制
17.1 $h$ 是逐坐标标准差,而不是总噪声半径
若 $\epsilon\sim\mathcal N(0,I_d)$,则
\[\mathbb E|\sigma\epsilon|^2 = d\sigma^2.\]因此,噪声向量的典型长度约为
\[|\sigma\epsilon| \approx \sigma\sqrt d.\]在高维空间中,即使逐坐标噪声标准差 $\sigma$ 数值较小,总扰动距离也可能很大。不同数据维数下不能只根据 $\sigma$ 的标量大小比较实际平滑强度。
17.2 有限样本 KDE 与真实分布扩散不同
对于有限数据集,最小尺度下的经验 KDE 是训练样本高斯混合。若模型精确拟合这一分布,并令 $h\to0$,极限将回到经验分布,而不是自动恢复未知的总体分布。
神经 score 网络能否生成训练集中未出现的新样本,取决于:
- 网络结构带来的归纳偏置;
- 参数共享和正则化;
- 数据增强;
- 有限容量造成的平滑;
- 多尺度训练提供的跨样本统计结构。
因此,“扩散模型等于 KDE”在前向边缘分布层面可以严格成立,但不能据此断言训练后的神经生成器只是机械记忆训练样本。
17.3 数据流形与环境空间 score
如果真实数据严格位于低维流形上,原始环境空间密度相对于 Lebesgue 测度可能不存在。加入任意 $\sigma>0$ 的高斯噪声后,平滑分布通常在整个 $\mathbb R^d$ 上具有正密度和光滑 score。
这说明扩散加噪不仅是为了构造生成终点,也是一种数学正则化:它把奇异测度转化为可进行 score matching 的光滑密度。Song 与 Ermon 正是以此解释多噪声扰动对流形数据的必要性。
18. 一个最小的数值实现
下面的 PyTorch 代码计算有限样本高斯 KDE 的精确 score。它适合低维、小样本实验,可用于验证 score 网络或观察不同带宽下的向量场。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import torch
def gaussian_kde_score(
query: torch.Tensor,
samples: torch.Tensor,
bandwidth: float,
) -> torch.Tensor:
"""
Compute the exact score of an isotropic Gaussian KDE.
Args:
query:
Tensor of shape [batch_size, dimension].
samples:
Tensor of shape [num_samples, dimension].
bandwidth:
Positive Gaussian kernel standard deviation.
Returns:
Tensor of shape [batch_size, dimension].
"""
if query.ndim != 2 or samples.ndim != 2:
raise ValueError("query and samples must both be rank-2 tensors.")
if query.shape[1] != samples.shape[1]:
raise ValueError("query and samples must have the same dimension.")
if bandwidth <= 0:
raise ValueError("bandwidth must be positive.")
h2 = bandwidth**2
# Pairwise displacement: x_i - x.
displacement = samples.unsqueeze(0) - query.unsqueeze(1)
# Unnormalized log-kernel values.
log_weights = -displacement.square().sum(dim=-1) / (2.0 * h2)
# Stable normalization over all KDE centers.
weights = torch.softmax(log_weights, dim=1)
# Posterior/KDE local mean.
local_mean = torch.sum(
weights.unsqueeze(-1) * samples.unsqueeze(0),
dim=1,
)
# score = (local_mean - query) / h^2
return (local_mean - query) / h2
对应的去噪器可以写成:
1
2
3
4
5
6
def tweedie_denoise(
noisy: torch.Tensor,
score: torch.Tensor,
noise_std: float,
) -> torch.Tensor:
return noisy + noise_std**2 * score
对于经验分布,这个去噪结果等于 KDE 核权重下的样本加权均值。
19. 概念对应表
| 非参数统计对象 | Score/去噪对象 | 扩散模型对象 |
|---|---|---|
| KDE 带宽 $h$ | 高斯噪声标准差 $\sigma$ | VE 噪声尺度 $\sigma(t)$ |
| 核方差 $h^2$ | 去噪残差的尺度因子 | 扩散时间或逆信噪比 |
| KDE 密度 $\hat p_h$ | 噪声边缘分布 $p_\sigma$ | 时间边缘分布 $p_t$ |
| KDE score $\nabla\log\hat p_h$ | 最优去噪方向 | 逆时间 SDE 的漂移修正 |
| Mean-shift 位移 | Tweedie 去噪残差 | 单步去噪更新 |
| 多带宽尺度空间 | 多噪声 DSM | 扩散概率路径 |
| 从小 $h$ 到大 $h$ | 逐步加噪 | 前向扩散 |
| 从大 $h$ 到小 $h$ | 逐步去噪 | 反向生成 |
其中最严格的等价关系是
\[\boxed{ \text{Gaussian KDE bandwidth} \quad\Longleftrightarrow\quad \text{VE diffusion noise standard deviation} }\]即
\[\boxed{ h_t=\sigma(t) }.\]对 VP/DDPM,更准确的关系是
\[\boxed{ \hat p_t(x) = \frac1n \sum_i \mathcal N \left( x; \alpha(t)x_i, \sigma^2(t)I \right) }\]以及归一化坐标下的有效带宽
\[\boxed{ h_{\mathrm{eff}}(t) = \frac{\sigma(t)}{\alpha(t)} }.\]20. 结论
从高斯 KDE 出发,可以得到一条完整的理论链条:
\[\text{经验分布} \xrightarrow{\text{高斯卷积}} \text{平滑密度族} \xrightarrow{\nabla\log} \text{多尺度 score} \xrightarrow{\text{Tweedie}} \text{最优去噪器} \xrightarrow{\text{逆 SDE}} \text{生成模型}.\]这一统一视角带来五个主要结论。
第一,KDE 带宽 $h$ 本质上是空间平滑尺度,其平方对应扩散时间;具体比例取决于热方程生成元的系数约定。
第二,高斯 KDE 的 score、mean-shift 位移和经验 Bayes 最优去噪残差是同一数学对象的不同表达。
第三,denoising score matching 通过可计算的条件高斯 score,学习不可直接观测的噪声边缘分布 score。
第四,多噪声尺度不是扩散模型的附属技巧,而是解决流形奇异性、低密度区域估计和多模态混合问题的核心 continuation 机制。
第五,VE 扩散与连续带宽 KDE 具有直接且严格的对应;VP 和 DDPM 则需要同时考虑核方差增加与核中心收缩,不能简单等同于固定中心 KDE。
现代扩散模型的关键创新,因而不只是“逐步加入和去除噪声”,而是利用神经网络学习一整条高斯平滑概率路径上的 score 场,并通过逆时间随机动力学将这一多尺度统计结构转化为可采样的生成过程。
参考文献
- Silverman, B. W. Using Kernel Density Estimates to Investigate Multimodality. Journal of the Royal Statistical Society, Series B, 1981.
- Fukunaga, K., and Hostetler, L. D. The Estimation of the Gradient of a Density Function, with Applications in Pattern Recognition. IEEE Transactions on Information Theory, 1975.
- Chaudhuri, P., and Marron, J. S. Scale Space View of Curve Estimation. The Annals of Statistics, 2000.
- Hyvärinen, A. Estimation of Non-Normalized Statistical Models by Score Matching. Journal of Machine Learning Research, 2005.
- Botev, Z. I., Grotowski, J. F., and Kroese, D. P. Kernel Density Estimation via Diffusion. The Annals of Statistics, 2010.
- Vincent, P. A Connection Between Score Matching and Denoising Autoencoders. Neural Computation, 2011.
- Efron, B. Tweedie’s Formula and Selection Bias. Journal of the American Statistical Association, 2011.
- Alain, G., and Bengio, Y. What Regularized Auto-Encoders Learn from the Data-Generating Distribution. Journal of Machine Learning Research, 2014.
- Sohl-Dickstein, J., Weiss, E. A., Maheswaranathan, N., and Ganguli, S. Deep Unsupervised Learning Using Nonequilibrium Thermodynamics. ICML, 2015.
- Song, Y., and Ermon, S. Generative Modeling by Estimating Gradients of the Data Distribution. NeurIPS, 2019.
- Ho, J., Jain, A., and Abbeel, P. Denoising Diffusion Probabilistic Models. NeurIPS, 2020.
- Song, Y., Sohl-Dickstein, J., Kingma, D. P., Kumar, A., Ermon, S., and Poole, B. Score-Based Generative Modeling through Stochastic Differential Equations. ICLR, 2021.
