DDPM 前向与反向扩散公式推导

前向加噪用重参数化一步直达,反向去噪用贝叶斯公式 + 神经网络近似——两者都是确定性推导,没有”玄学”。

是什么

扩散模型(Denoising Diffusion Probabilistic Models, DDPM)的两条核心公式:

前向加噪(任意 一步直达):

反向去噪(逐步从噪声恢复数据):

这两条公式分别是 DDPM 训练和推理的数学核心。下面从 Markov 链的物理直觉出发,逐步推导。

前向加噪公式推导

单步加噪:Markov 链假设

DDPM 将加噪定义为 Markov 扩散过程——每一步在前一步基础上加高斯噪声:

符号含义
噪声调度(noise schedule),控制每步加多少噪声,通常
对先前状态的缩放因子:“保留信号”的比例
新添加噪声的方差

为什么是这个形式? 这是**方差保持(variance-preserving, VP)**扩散过程。经过 步后, 渐进收敛到 ——无论 是什么分布。这是扩散模型能从任意噪声出发生成任意图像的数学根基。

重参数化:一步跳到任意

高斯分布的核心性质——两个独立高斯之和仍为高斯——意味着不需要迭代 步才能得到

先引入简写 ,利用重参数化技巧把 写成:

递归展开:

继续递归到底,定义 ,得到最终形式:

关键洞察 随时间递减——(几乎原图),(几乎纯噪声)。不需要逐步迭代,任意 一步直达,训练效率大幅提升。

反向去噪公式推导

如果能算真实后验……

如果我们知道 ,反向条件分布 可以用贝叶斯公式精确推导:

把三个高斯分布概率密度函数代入、展开、整理,得到同样形式的高斯:

其中精确均值 为:

问题:推理时根本没有 。这个精确后验只是理论公式,没法直接用。

神经网络近似:从预测 到预测噪声

用网络参数化的高斯近似真实后验:

然后用变分下界(ELBO)推导损失。Ho et al. (2020) 的关键实验发现:与其让网络预测 再代入 算均值,不如直接预测噪声 ,效果更好。

推导如下——由 解出

代入 公式,消去

用网络预测 替代真实 ,就得到采样公式:

最后一项 )是随机采样时加回的微小噪声——也是生成多样性的来源

Loss 为什么这么简洁

训练目标也简化成极简 MSE:

DDPM 论文发现所有复杂的系数在消去 后都成了常数因子,直接去掉反而训练更稳定。最终 Loss 就是预测噪声与真实噪声的 L2 距离。

如何嵌入自回归:MAR 的 Diffusion Loss

MAR 对标准 DDPM 做了一个关键改造——加入自回归产生的条件

Loss

其中 是 Transformer 产生的条件向量,去噪 MLP 的输入多了一个 。梯度从 Diffusion Loss 穿过 流向整个 Transformer。

采样(加温度):

温度 缩放噪声方差,控制生成多样性——等价于离散自回归中的 temperature 采样。

与流匹配的区别

维度DDPM (Diffusion)Flow Matching
前向路径形状曲线 决定弯曲程度)直线
预测目标噪声 速度
推理步数通常 50–1000通常更少
温度方案缩放 有别的方式

详见 条件流匹配(CFM)

相关