【第五章:计算机视觉-项目实战之生成式算法实战:扩散模型】2.CV黑科技:生成式算法理论-(2)扩散模型背后的数学原理 - 详解

第五章:计算机视觉-项目实战之生成式算法实战:扩散模型

第二部分:CV黑科技——生成式算法理论

第二节:扩散模型背后的数学原理


一、扩散模型的数学本质

扩散模型(Diffusion Model)从本质上是一个基于概率分布建模的生成框架
它凭借模拟一个马尔可夫过程(Markov Process),在高维空间中建立数据分布的“正向破坏”和“反向重建”。

通过整个模型能够用两条核心概率链描述:

  • 正向过程(Forward Diffusion Process)
    从数据分布 (q(x_0)) 开始,不断添加噪声,得到一系列的 (x_t ):
    q(x_{1:T}|x_0) = \prod_{t=1}^{T} q(x_t | x_{t-1})
    其中每一步:
    q(x_t | x_{t-1}) = \mathcal{N}(x_t ; \sqrt{1 - \beta_t}x_{t-1}, \beta_t I)
    即在每个时间步 (t),大家向数据添加方差为 (\beta_t) 的高斯噪声。

  • 反向过程(Reverse Diffusion Process)
    模型学习如何从纯噪声逐步恢复原始数据:
    p_\theta(x_{0:T}) = p(x_T) \prod_{t=1}^{T} p_\theta(x_{t-1}|x_t)
    其中:
    p_\theta(x_{t-1}|x_t) = \mathcal{N}(x_{t-1} ; \mu_\theta(x_t, t), \Sigma_\theta(x_t, t))

在这个过程中,神经网络(通常为UNet)负责学习如何预测“噪声”或“去噪方向”,使得模型能从噪声逐步还原出逼真的图像。


二、扩散模型的训练目标函数

扩散模型的核心训练目标,是让模型学会预测在每个时间步中加入的噪声

将真实噪声 (\epsilon) 与模型预测噪声 (\epsilon_\theta(x_t, t)) 的差异最小化:

L_{\text{simple}} = \mathbb{E}{x_0, \epsilon, t} \left[ | \epsilon - \epsilon\theta(x_t, t) |^2 \right]

这实际上是一种噪声预测回归任务,模型通过不断拟合噪声分布,学习到数据分布的逆过程。

等价地,我们可以把模型理解为在学习以下映射:

x_t \xrightarrow[\text{UNet}]{\text{predict noise}} \epsilon_\theta \Rightarrow x_{t-1} = f_\theta(x_t, \epsilon_\theta)


三、扩散模型的概率推导核心

扩散模型许可看作一种变分推断(Variational Inference, VI)方法。
最小化生成分布 (就是其目标p_\theta(x_0)) 与真实数据分布 (q(x_0)) 的Kullback-Leibler散度(KL散度):

\min_\theta D_{KL}(q(x_0) | p_\theta(x_0))

我们通过最大化变分下界(ELBO,Evidence Lower Bound)来搭建这一点:

\log p_\theta(x_0) \geq \mathbb{E}q \left[ \log \frac{p\theta(x_{0:T})}{q(x_{1:T}|x_0)} \right]

展开后得到:
L = \mathbb{E}q \Big[ D{KL}(q(x_T|x_0) | p(x_T)) + \sum_{t>1} D_{KL}(q(x_{t-1}|x_t,x_0) | p_\theta(x_{t-1}|x_t)) - \log p_\theta(x_0|x_1) \Big]

在实践中,Ho 等人(2020)发现该损失可简化为上文的噪声回归形式,从而显著提升训练效率。


四、扩散过程的解析公式

在实际推理时,我们不必须逐步采样每一层噪声,而可以依据封闭形式迅速计算任意时刻的噪声混合:

q(x_t | x_0) = \mathcal{N}(x_t; \sqrt{\bar{\alpha_t}} x_0, (1 - \bar{\alpha_t}) I)
其中:
\bar{\alpha_t} = \prod_{s=1}^{t} (1 - \beta_s)
这个公式使得我们许可在任意时间步t直接生成带噪样本,而无需逐步模拟正向过程。


五、反向去噪公式(采样过程)

在生成阶段,大家运用训练好的模型逐步去噪:

x_{t-1} = \frac{1}{\sqrt{1 - \beta_t}} \left( x_t - \frac{\beta_t}{\sqrt{1 - \bar{\alpha_t}}} \epsilon_\theta(x_t, t) \right) + \sigma_t z

其中:

  • (\epsilon_\theta(x_t, t)):模型预测的噪声;

  • (\sigma_t):可调节的采样方差;

  • (z \sim \mathcal{N}(0, I)):随机噪声项。

这个过程从纯噪声开始,不断“去噪”,最终生成出逼真图像。


六、从DDPM到DDIM:采样加速的数学优化

DDPM(原始扩散模型)需要上百步采样,推理非常慢。
后续的 DDIM(Denoising Diffusion Implicit Model) 提出通过非马尔可夫性简化采样过程:

x_{t-1} = \sqrt{\bar{\alpha}{t-1}} f\theta(x_t, t) + \sqrt{1 - \bar{\alpha}{t-1}} \epsilon\theta(x_t, t)

该方式允许使用更少的采样步数(如20步)就能生成高质量图像,大幅提升生成速度。


七、数学视角下的扩散模型总结

模型阶段数学核心作用
正向扩散加性高斯噪声过程模拟材料破坏
反向去噪学习噪声逆过程数据重建
训练目标噪声回归损失函数拟合真实分布
概率本质变分推断(VI)最大化ELBO
数学优化DDIM、采样调度提升生成速度

八、总结

扩散模型的强大之处不仅在于效果,更在于其严格的概率建模基础
它不同于GAN的对抗博弈,而是通过数学可解释的噪声逆过程来学习真实世界的分布。

理解其数学原理后,我们会更清楚:

  • 为什么它稳定;

  • 为什么它能统一多种生成任务;

  • 以及为什么它能生成出令人惊叹的高保真图像。

posted @ 2025-11-05 13:16  yangykaifa  阅读(0)  评论(0)    收藏  举报