简介
DDPM即去噪扩散概率模型(Denoising Diffusion Probabilistic Models),是一种生成式模型,在图像生成、视频生成等领域有广泛应用。以下是其详细介绍:
原理
- DDPM的核心思想是通过在数据上逐步添加噪声来破坏数据,然后学习一个逆过程,从噪声中恢复出原始数据。这个过程基于马尔可夫链,将数据的生成看作是从噪声中逐步采样并去噪的过程。
- 前向过程(正向扩散):从干净的图像x0x_0x0开始,通过不断地添加高斯噪声,逐步将图像转化为纯噪声xTx_TxT。在每一步ttt,根据给定的噪声 schedule(通常是一个固定的方差序列),按照公式q(xt∣xt−1)=N(xt;1−βtxt−1,βtI)q(x_t|x_{t - 1}) = \mathcal{N}(x_t; \sqrt{1 - \beta_t}x_{t - 1}, \beta_t\mathbf{I})q(xt∣xt−1)=N(xt;1−βtxt−1,βtI)来添加噪声,其中βt\beta_tβt是第ttt步的噪声方差,N\mathcal{N}N表示高斯分布。
- 反向过程(逆向去噪):学习一个神经网络(通常是U-Net结构)来估计在给定噪声图像xtx_txt的情况下,前一步干净图像xt−1x_{t - 1}xt−1的条件分布pθ(xt−1∣xt)p_{\theta}(x_{t - 1}|x_t)pθ(xt−1∣xt)。通过最小化重建损失等目标函数来训练这个神经网络,使得它能够逐渐从噪声中恢复出原始图像。
模型架构
- DDPM通常使用U-Net作为其核心的神经网络架构。U-Net具有编码器和解码器结构,中间通过跳跃连接(skip connections)相连。编码器部分用于提取图像的特征,随着网络层数的加深,特征图的分辨率逐渐降低,通道数逐渐增加;解码器部分则是将低分辨率、高通道数的特征图逐步上采样,恢复出原始图像的分辨率,同时利用跳跃连接来融合编码器不同层次的特征,以更好地重建图像细节。
训练与采样
- 训练:在训练过程中,从数据集中随机采样图像,然后按照正向扩散过程添加噪声,将噪声图像和对应的时间步ttt作为输入,将原始干净图像作为目标,训练神经网络来最小化预测的去噪图像与真实干净图像之间的损失,常用的损失函数有均方误差(MSE)等。
- 采样:在生成阶段,从纯噪声xTx_TxT开始,按照训练好的反向去噪过程,逐步从pθ(xt−1∣xt)p_{\theta}(x_{t - 1}|x_t)pθ(xt−1∣xt)中采样,经过TTT步的采样,最终得到生成的图像x0x_0x0。
优点
- 生成的样本质量高,在图像生成任务中能够生成具有丰富细节和多样性的图像。
- 模型的理论基础较为坚实,基于扩散过程的建模方式具有清晰的数学原理。
- 训练过程相对稳定,相比一些其他生成式模型,如对抗生成网络(GANs),DDPM的训练更容易收敛,不需要对抗训练中复杂的博弈过程。
局限性
- 采样过程计算量较大,由于需要从噪声中逐步采样生成图像,生成过程较为耗时,尤其是在生成高分辨率图像时,采样步数较多,计算成本较高。
- 对内存要求较高,在训练和采样过程中,需要存储大量的中间特征和模型参数,对于一些资源有限的设备来说,可能难以满足需求。
DDPM为生成式模型的发展提供了新的思路和方法,其后续也有许多改进和扩展的工作,推动了生成式模型在更多领域的应用和发展。
核心原理和特点
DDPM(Denoising Diffusion Probabilistic Models,去噪扩散概率模型)是一种基于扩散过程的生成模型,通过逐步添加和去除噪声来学习数据分布并生成高质量样本。以下是其核心原理和特点:
1. 核心思想
DDPM通过两个马尔可夫链过程实现生成:
-
前向扩散过程(Forward Process):
对输入数据x0x_0x0逐步添加高斯噪声,经过TTT步后转化为纯噪声xTx_TxT。每一步的加噪公式为:
xt=αtxt−1+1−αtϵt,ϵt∼N(0,I)x_t = \sqrt{\alpha_t}x_{t-1} + \sqrt{1-\alpha_t}\epsilon_t, \quad \epsilon_t \sim \mathcal{N}(0, I)xt=αtxt−1+1−αtϵt,ϵt∼N(0,I)
其中αt\alpha_tαt是预定义的噪声调度参数(如线性插值),控制噪声添加的强度。 -
反向去噪过程(Reverse Process):
训练一个神经网络(通常为U-Net)预测噪声ϵθ(xt,t)\epsilon_\theta(x_t, t)ϵθ(xt,t),逐步从xTx_TxT恢复原始数据x0x_0x0。每一步的生成公式为:
xt−1=1αt(xt−1−αt1−αˉtϵθ(xt,t))+σtz,z∼N(0,I)x_{t-1} = \frac{1}{\sqrt{\alpha_t}}\left(x_t - \frac{1-\alpha_t}{\sqrt{1-\bar{\alpha}_t}}\epsilon_\theta(x_t, t)\right) + \sigma_t z, \quad z \sim \mathcal{N}(0, I)xt−1=αt1(xt−1−αˉt1−αtϵθ(xt,t))+σtz,z∼N(0,I)
其中αˉt=∏s=1tαs\bar{\alpha}_t = \prod_{s=1}^t \alpha_sαˉt=∏s=1tαs,σt\sigma_tσt为噪声方差。
2. 训练与损失函数
- 目标:最小化预测噪声与真实噪声的均方误差(MSE):
L(θ)=Ex0,t,ϵ[∥ϵ−ϵθ(xt,t)∥2]L(\theta) = \mathbb{E}_{x_0,t,\epsilon} \left[ \|\epsilon - \epsilon_\theta(x_t, t)\|^2 \right]L(θ)=Ex0,t,ϵ[∥ϵ−ϵθ(xt,t)∥2]
通过重参数化技巧直接优化噪声预测。 - 高效训练:利用重参数化直接从x0x_0x0计算任意xtx_txt,避免逐步采样噪声。
3. 数学基础
- 马尔可夫链:前向和反向过程均为马尔可夫链,保证无后效性。
- 变分推断:通过最大化ELBO(证据下界)近似数据分布。
DDPM通过理论严谨的扩散过程和高效的噪声预测机制,成为当前生成模型的核心框架之一,推动了文生图、视频生成等领域的发展。