Diffusion 扩散模型 (DDPM) 核心理论与严格推导

一、 概述与核心思想
Diffusion 扩散模型是一个类似多层 VAE(变分自编码器)架构的生成模型。它的核心思想可以提炼为两个互逆的过程:
-
前向过程(加噪):通过输入一个具体的真实样本
,在给定的时间步长 内,通过不断注入高斯噪声,使整个样本最终完全失去原有特征,退化到一个已知的标准正态分布状态(纯噪声)。 -
逆向过程(去噪):然后,模型通过神经网络拟合前向过程确定的真实后验分布,最终学习到一个近似的逆向转移概率
,从而实现从纯噪声中逐步生成真实数据的目的。
二、 第一部分:前向过程(噪声处理与马尔可夫链)
前向过程(Forward Process)是一个参数固定的马尔可夫链(Markov Chain)。我们人为定义每一步的加噪过程如下:
其中,
这个式子可以等价改写为条件概率分布的形式:
其中,前一部分
多步跳跃推导(重参数化技巧)
由马尔可夫链的性质,每一个
将
根据高斯分布的可加性:两个独立的高斯分布
上述两个噪声项的方差之和为:
合并噪声项后得到:
依次代入上述式子直到
(注意此处
这一个结论可以衍生出以下三个极其重要的等价推论:
-
可以直接反解出真实输入:
-
随机变量的分布表达:
-
概率密度函数表达:
三、 第二部分:逆向过程与学习真实后验分布
我们希望模型能够学习到逆向过程的条件分布
(训练时的近似目标:
1. 贝叶斯公式展开
将已知条件
由于马尔可夫链的性质,
2. 高斯分布的配方推导
根据第一部分的结论,公式右侧的三个概率分布均为已知的高斯分布:
我们将单变量正态分布的概率密度函数
由于我们要求的是关于
配方后,它必然构成一个新的高斯分布
-
方差的倒数(精度):
-
均值:
3. 后验分布的最终形态
经过上述代数计算,我们最终得到真实后验分布的参数:
其中均值(与
(这里记
其中方差(这是一个随时间
这个
四、 ELBO 分解:从变分下界到噪声预测
4.1 变分推断框架
DDPM 的训练目标可以通过变分下界 (Evidence Lower Bound, ELBO) 推导。设真实数据分布为
ELBO 的分解如下:
直觉解释:
- Reconstruction Term:给定
,要求模型能够重建 。这对应于解码器的重建能力。 - Latent Matching Term:要求模型学习到的逆向分布
尽可能接近真实后验 。 越大(越接近纯噪声),这一项的权重通常越大。
4.2 从 ELBO 到噪声预测损失的严格推导
关键步骤在于重参数化与均值替换。
已知真实后验均值:
由前向过程反解
代入
由于
结论:网络
五、 模型优化与损失函数
在实际训练中,我们希望神经网络预测的概率分布
通过最小化两者之间的 KL 散度(KL Divergence),由于两者的方差都被设定为确定的常数,这个优化问题直接简化为拟合两个高斯分布的均值(即让
进一步地,如果我们将前向过程中推导出的
最终,通过严密的化简,DDPM的损失函数化简为一个极其优雅的噪声预测损失(Noise Prediction Loss):
这意味着,网络
5.1 采样过程(反向过程)
训练完成后,我们通过以下步骤从纯噪声生成样本:
Algorithm: DDPM Sampling
- 初始化:
(纯噪声) - 迭代去噪:对
执行:
其中
- 输出:
即为生成的样本
物理意义:每一步迭代,模型根据当前带噪状态