扩散模型系列--DDPM和DDIM原理推导和解释

前言

这里阐述DDPM和DDIM的原理,并对噪声累积、均值和方差的公式进行详细推导。

同时对其它扩散模型也做一个简要的比较和说明。

1.DDPM、DDIM和Stable Diffusion的区别

DDPM、DDIM 和 Stable Diffusion 都是生成模型,主要用于图像生成,但它们在工作原理和生成方式上有所不同。

1.1 三种模型概述

1.1.1 DDPM (Denoising Diffusion Probabilistic Models)

  • 原理: DDPM 基于扩散过程,通过逐步向数据添加噪声,再学习如何逆转这一过程来生成数据。

  • 过程:

    • 前向过程: 逐步向图像添加高斯噪声,直到图像变为纯噪声。

    • 反向过程: 通过训练神经网络逐步去噪,从纯噪声中恢复出原始图像。

  • 特点:

    • 生成过程较慢,需要多次迭代。

    • 生成质量高,但计算成本较大。

1.1.2 DDIM (Denoising Diffusion Implicit Models)

  • 原理: DDIM 是 DDPM 的改进版本,通过引入非马尔可夫过程来加速生成。

  • 过程:

    • 使用与 DDPM 相同的训练目标,但在生成时采用不同的采样策略。

    • 允许更少的步骤生成高质量图像。

  • 特点:

    • 生成速度更快,适合实时应用。

    • 生成质量与 DDPM 相当,但计算效率更高。

1.1.3 Stable Diffusion

  • 原理: Stable Diffusion 结合了扩散模型和潜在空间表示,在潜在空间中进行扩散过程。

  • 过程:

    • 使用编码器将图像压缩到潜在空间。

    • 在潜在空间中进行扩散和去噪。

    • 使用解码器将潜在表示还原为图像。

  • 特点:

    • 计算效率高,适合高分辨率图像生成。

    • 生成质量高,广泛应用于文本到图像生成等任务。

1.2 联系和区别

1.2.1 联系

  • 共同点: 三者都基于扩散过程,通过逐步去噪生成图像。

  • 改进关系: DDIM 是对 DDPM 的改进,Stable Diffusion 则进一步结合了潜在空间表示,提升了效率和生成质量。

1.2.2 区别

  • 速度: DDIM > Stable Diffusion > DDPM

  • 计算成本: DDPM > Stable Diffusion > DDIM

  • 应用场景:

    • DDPM 适合高质量图像生成,但速度较慢。

    • DDIM 适合需要快速生成的场景。

    • Stable Diffusion 适合高分辨率图像生成和文本到图像任务。

总结来说,DDPM 是基础模型,DDIM 通过改进采样策略加速生成,Stable Diffusion 则通过潜在空间表示进一步提升效率和生成质量。

1.3 各个扩散模型的特点

模型核心思想是否需要逐步采样采样速度应用场景
DDPM经典扩散模型需要逐步采样慢(1000步)图像、音频生成
DDIM确定性扩散可跳步较快(50-100步)高质量图像生成
LDM在潜空间扩散可跳步快(50步)Stable Diffusion
PNDM数值方法加速可跳步更快(20-50步)高速图像生成
EDM设计更优的扩散过程需要逐步采样快(20-50步)高质量生成
Consistency Models直接映射到去噪结果一步采样超快(1-4步)实时生成
Rectified Flow用ODE优化数据流可跳步快(10步内)高质量生成

2. DDPM详解

DDPM 是一种基于 马尔可夫链(Markov Chain)生成模型,其主要思想是:

  • 前向过程(Forward Process, 加噪声):逐步向数据 x_0​ 添加噪声,使其逐渐变成高斯噪声 x_T​。
  • 逆向过程(Reverse Process, 生成过程):从高斯噪声 x_T​ 逐步去噪,还原出真实数据 x_0​。
  • 训练目标(Learning Objective):学习一个神经网络 \epsilon_\theta(x_t, t) 来预测噪声,从而完成去噪过程。

这篇博客可以参考DDPM详解

2.1 前向过程(Forward Process, 加噪)

目标:在 T 步内,将数据 x_0 \sim q(x_0) 转变为标准高斯分布。

方法:使用一个固定的马尔可夫链逐步向数据中添加噪声:

q(x_t | x_{t-1}) = \mathcal{N}(x_t; \sqrt{1 - \beta_t} x_{t-1}, \beta_t I)

其中:

  • x_0​ 是原始数据,比如一张图片。
  • \beta_t​ 是预定义的加噪系数(一般是递增的,如 0.0001 → 0.02)。
  • 噪声项:每一步的噪声服从 \mathcal{N}(0, \beta_t I)
  • 马尔可夫假设x_t 只依赖于 x_{t-1}

一步加噪公式

展开上面的条件概率:

x_t = \sqrt{1 - \beta_t} x_{t-1} + \sqrt{\beta_t} \epsilon_t, \quad \epsilon_t \sim \mathcal{N}(0, I)

解释

  • 第一项 \sqrt{1 - \beta_t} x_{t-1} 控制数据的逐步衰减。
  • 第二项 \sqrt{\beta_t} \epsilon_t 控制加噪程度。

直接从 x_0​ 计算 x_t

通过递推可以得到:

x_t = \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon, \quad \epsilon \sim \mathcal{N}(0, I)

其中:

\alpha_t = 1 - \beta_t, \quad \bar{\alpha}_t = \prod_{s=1}^{t} \alpha_s

  • \bar{\alpha}_t 表示累积衰减系数。
  • 这样我们可以一步计算出任意时刻的 x_t​ 而不需要逐步计算

2.2 逆向过程(Reverse Process, 去噪)

目标:给定噪声图像 x_T​,通过逆向马尔可夫链逐步去噪,最终生成数据 x_0

假设:逆向过程也是一个马尔可夫链,且每一步的转移概率为:

p_\theta(x_{t-1} | x_t) = \mathcal{N}(x_{t-1}; \mu_\theta(x_t, t), \sigma_t^2 I)

这里:

  • 均值项 \mu_\theta(x_t, t) 由神经网络预测
  • 方差 \sigma_t^2​ 可以是固定值,也可以是可学习参数

如何计算均值 \mu_\theta(x_t, t)

由于前向过程是高斯分布的链式结构,后验分布 q(x_{t-1} | x_t, x_0) 也是高斯分布:

q(x_{t-1} | x_t, x_0) = \mathcal{N}(x_{t-1}; \tilde{\mu}_t(x_t, x_0), \tilde{\beta}_t I)

其中:

\tilde{\mu}_t(x_t, x_0) = \frac{\sqrt{\bar{\alpha}_{t-1}} \beta_t}{1 - \bar{\alpha}_t} x_0 + \frac{\sqrt{\alpha_t} (1 - \bar{\alpha}_{t-1})}{1 - \bar{\alpha}_t} x_t

\tilde{\beta}_t = \frac{1 - \bar{\alpha}_{t-1}}{1 - \bar{\alpha}_t} \beta_t

2.3 训练过程

DDPM 训练的目标是学会预测噪声 \epsilon_\theta(x_t, t),而不是直接预测 \mu_\theta(x_t, t)x_0

定义损失函数

我们使用神经网络(如 U-Net)来学习一个噪声预测模型:

epsilon_\theta(x_t, t) \approx \text{Ground Truth z} \quad \epsilon

然后,我们定义训练目标:

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

解释

  • 目标是让模型学会还原噪声 \epsilon,这样就能计算去噪后的图像。

2.4 生成过程(Sampling)

当训练完 \epsilon_\theta(x_t, t) 后,我们可以进行去噪采样

从标准高斯噪声采样

x_T \sim \mathcal{N}(0, I)

逐步去噪

对于 t = T, T-1, ..., 1,使用:

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

其中 z\sim \mathcal{N}(0, I) 负责保持生成样本的多样性。

t=0 时,输出的 x_0​ 就是最终生成的图片!

3. DDPM的部分公式推导

3.1 计算出任意时刻的x的公式推导

在DDPM中,前向过程(扩散过程)的每一步是通过逐步向数据添加高斯噪声实现的。公式:

x_t = \bar{\alpha}_t x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon

中的系数 \sqrt{1 - \bar{\alpha}_t} 来源于对前向噪声累积过程的数学推导。以下是详细推导步骤:

3.1.1 前向过程的定义

前向过程每一步的定义为:

q(x_t | x_{t-1}) = \mathcal{N}(x_t; \sqrt{1 - \beta_t} x_{t-1}, \beta_t I)

其中:

  • \beta_t 是噪声调度参数(控制每一步添加的噪声量)。
  • \alpha_t = 1 - \beta_t,表示保留原始信号的比例。
  • \bar{\alpha}_t = \prod_{s=1}^{t} \alpha_s,即 \alpha_t 的累积乘积。

3.1.2 递归展开前向过程

通过递归展开 x_t,可以直接从 x_0 推导出 x_t 的表达式。例如:

t = 1 时:

x_1 = \alpha_1 x_0 + \beta_1 \epsilon_1

当 t=2t = 2 时:

x_2 = \alpha_2 x_1 + \beta_2 \epsilon_2 = \alpha_2 (\alpha_1 x_0 + \beta_1 \epsilon_1) + \beta_2 \epsilon_2

展开后:

x_2 = \alpha_2 \alpha_1 x_0 + \alpha_2 \beta_1 \epsilon_1 + \beta_2 \epsilon_2

3.1.3 独立高斯噪声的合并

每一步添加的噪声 \epsilon_1, \epsilon_2, \dots, \epsilon_t 是独立的标准高斯噪声(均值为0,方差为1)。根据高斯分布的性质:

  • 独立高斯变量的线性组合:若 Y = a \epsilon_1 + b \epsilon_2,则 Y \sim \mathcal{N}(0, a^2 + b^2)
  • 重参数化技巧:可以将多个独立高斯噪声合并为一个高斯噪声。

因此,x_t 中的噪声项可以合并为:

\alpha_2 \beta_1 \epsilon_1 + \beta_2 \epsilon_2 \Rightarrow \sqrt{\alpha_2^2 \beta_1^2 + \beta_2^2} \cdot \epsilon

其中 \epsilon \sim \mathcal{N}(0, I)

3.1.4 推广到 t 步

对于任意步 t,递归展开后:

x_t = \bar{\alpha}_t x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon

其中:

  • 信号部分\bar{\alpha}_t x_0 是原始信号 x_0 的衰减(保留比例由 \bar{\alpha}_t 控制)。
  • 噪声部分\sqrt{1 - \bar{\alpha}_t} \epsilon 是累积噪声的合并。

3.1.5 累积噪声方差的推导

噪声项的方差由每一步的 \beta_t 累积而来。具体推导如下:

  • 定义 \bar{\alpha}_t = \prod_{s=1}^{t} \alpha_s(\alpha_s = 1 - \beta_s)
  • 累积噪声方差

累积噪声方差= 1 - \bar{\alpha}_t

这是因为:

1 - \bar{\alpha}_t = 1 - \prod_{s=1}^{t} (1 - \beta_s)

这一等式可以通过数学归纳法证明(见下文)。

3.1.6 数学归纳法证明

目标:证明 累积噪声方差= 1 - \bar{\alpha}_t

  • 基例(t = 1

1 - \bar{\alpha}_1 = 1 - (1 - \beta_1) = \beta_1

显然成立。

  • 归纳假设:假设对于 t = k,有:

累积噪声方差= 1 - \prod_{s=1}^{k} (1 - \beta_s)

  • 递推步骤(t = k+1

累积噪声方差_{k+1} = (1 - \beta_{k+1}) \cdot累积噪声方差_k + \beta_{k+1}

代入归纳假设:

= (1 - \beta_{k+1}) (1 - \prod_{s=1}^{k} (1 - \beta_s)) + \beta_{k+1}

展开后:

= 1 - \prod_{s=1}^{k+1} (1 - \beta_s)

从而证明了递推关系。

3.1.7 最终结论

通过上述推导,噪声项的方差为 1 - \bar{\alpha}_t,标准差为 \sqrt{1 - \bar{\alpha}_t}。因此,前向过程的 x_t 可表示为:

x_t = \bar{\alpha}_t x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon

其中 \epsilon \sim \mathcal{N}(0, I)

关键点总结

  • 信号衰减\bar{\alpha}_t 是原始信号 x_0 的衰减系数。
  • 噪声累积\sqrt{1 - \bar{\alpha}_t} 是累积噪声的标准差,来源于所有前向步骤的噪声方差之和。
  • 物理意义:随着 t 增大,\bar{\alpha}_t 趋近于0,噪声逐渐主导,最终 x_T 接近纯噪声。

这一公式是DDPM的核心,允许直接从 x_0 采样得到任意 x_tt,极大简化了训练过程。

3.2 均值的推导

在DDPM中,去噪过程(反向过程)的核心是求解条件分布 q(x_{t-1} \mid x_t, x_0) 的均值。以下是均值的详细推导过程:

3.2.1 前向过程与反向过程的关系

前向过程定义为马尔可夫链:

q(x_{1:T} \mid x_0) = \prod_{t=1}^{T} q(x_t \mid x_{t-1})

其中每一步:

q(x_t \mid x_{t-1}) = \mathcal{N}(x_t; \sqrt{1-\beta_t} x_{t-1}, \beta_t \mathbf{I})

反向过程需要建模为:

p_{\theta}(x_{t-1} \mid x_t) = \mathcal{N}(x_{t-1}; \mu_{\theta}(x_t, t), \Sigma_{\theta}(x_t, t))

目标是学习均值 \mu_{\theta} 和方差 \Sigma_{\theta}​。

3.2.2 关键目标:推导条件分布 q(x_{t-1} \mid x_t, x_0)

反向过程的训练依赖于对 q(x_{t-1} \mid x_t, x_0) 的建模。通过贝叶斯定理:

q(x_{t-1} \mid x_t, x_0) = \frac{q(x_t \mid x_{t-1}, x_0) q(x_{t-1} \mid x_0)}{q(x_t \mid x_0)}

由于前向过程是马尔可夫链,q(x_t \mid x_{t-1}, x_0) = q(x_t \mid x_{t-1}),因此:

q(x_{t-1} \mid x_t, x_0) \propto q(x_t \mid x_{t-1}) q(x_{t-1} \mid x_0)

3.2.3 代入高斯分布密度函数

将前向过程的高斯分布代入贝叶斯公式:

q(x_{t-1} \mid x_t, x_0) \propto \exp \left( -\frac{1}{2} \left[ \frac{(x_{t-1} - \sqrt{1 - \beta_t} x_{t-1})^2}{\beta_t} + \frac{(x_{t-1} - \bar{\alpha}_{t-1} x_0)^2}{1 - \bar{\alpha}_{t-1}} \right] \right)

3.2.4 合并指数项并配方

将两个高斯分布的指数项合并,并对 x_{t-1}​ 配方,得到关于 x_{t-1}​ 的二次函数:

指数项= -\frac{1}{2} \left[ \left( \frac{1 - \bar{\alpha}_{t-1} + \beta_t}{\beta_t (1 - \bar{\alpha}_{t-1})} \right) x_{t-1}^2 - 2 \left( \frac{(1 - \beta_t) x_t}{\beta_t} + \frac{\bar{\alpha}_{t-1} x_0}{1 - \bar{\alpha}_{t-1}} \right) x_{t-1} + C \right]

其中 C 是常数项。

3.2.5 提取高斯分布的均值和方差

高斯分布的均值为一次项的系数除以二次项系数的负两倍:

\mu = \frac{\frac{(1 - \beta_t) x_t}{\beta_t} + \frac{\bar{\alpha}_{t-1} x_0}{1 - \bar{\alpha}_{t-1}}}{\frac{1 - \bar{\alpha}_{t-1} + \beta_t}{\beta_t (1 - \bar{\alpha}_{t-1})}}

化简后得到:

\mu = \frac{\bar{\alpha}_{t-1} \beta_t}{1 - \bar{\alpha}_t} x_0 + \frac{(1 - \beta_t)(1 - \bar{\alpha}_{t-1})}{1 - \bar{\alpha}_t} x_t


3.2.6 从t时刻到0时刻的x表达

x_t 表达 x_0

从前向过程公式:

x_t = \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon

解出 x0x_0x0​:

x_0 = \frac{1}{\sqrt{\bar{\alpha}_t}} (x_t - \sqrt{1 - \bar{\alpha}_t} \epsilon)

代入均值表达式:

\mu = \frac{1}{1 - \beta_t} \left( x_t - \frac{\beta_t}{\sqrt{1 - \bar{\alpha}_t}} \epsilon \right)

3.2.7 最终均值公式

去噪过程的均值可表示为:

\mu_{\theta}(x_t, t) = \frac{1}{1 - \beta_t} \left( x_t - \frac{\beta_t}{\sqrt{1 - \bar{\alpha}_t}} \epsilon_{\theta}(x_t, t) \right)

其中 ϵ\epsilon_{\theta}(x_t, t) 是神经网络预测的噪声。

推导总结

  • 贝叶斯定理:将反向过程的条件概率转换为前向过程的联合分布。
  • 高斯分布配方:合并指数项并配方,提取均值和方差。
  • 变量替换:用 x_t​ 表达 x_0,消除对 x_0 的依赖。
  • 参数化:通过神经网络预测噪声 \epsilon_{\theta}​,代替直接预测均值。

物理意义

  • 均值修正:每一步根据预测的噪声 \epsilon_{\theta}​,从 x_t 中减去噪声成分,逐步恢复原始信号。
  • 方差控制:系数 \beta_t​ 平衡了当前噪声的去除强度。

3.3 方差的推导

3.2.4 合并指数项并配方 继续推导

3.3.1 指数项合并与配方

指数项= -\frac{1}{2} \left[ \left( \frac{1 - \bar{\alpha}_{t-1} + \beta_t}{\beta_t (1 - \bar{\alpha}_{t-1})} \right) x_{t-1}^2 - 2 \left( \frac{(1 - \beta_t) x_t}{\beta_t} + \frac{\bar{\alpha}_{t-1} x_0}{1 - \bar{\alpha}_{t-1}} \right) x_{t-1} + C \right]

其中 C 是常数项。

3.3.2 提取高斯分布的方差

高斯分布的方差为二次项系数的倒数:

\Sigma = \left( 1 - \bar{\alpha}_{t-1} + \beta_t \cdot \beta_t (1 - \bar{\alpha}_{t-1}) \right)^{-1}

简化后得到:

\Sigma = \frac{1}{\beta_t (1 - \bar{\alpha}_{t-1})}

3.3.3 最终方差公式

去噪过程的方差可表示为:

\Sigma_{\theta}(x_t, t) = \frac{1 - \bar{\alpha}_t}{\beta_t (1 - \bar{\alpha}_{t-1})}

  • 推导总结:

    • 贝叶斯定理: 将反向过程的条件概率转换为前向过程的联合分布。
    • 高斯分布配方: 合并指数项并配方,提取方差。
    • 参数化: 通过神经网络预测方差 \Sigma_{\theta}​。
  • 物理意义:

    • 方差修正: 每一步根据预测的方差 \Sigma_{\theta},从 x_t 中减去噪声成分,逐步恢复原始信号。
    • 方差控制: 系数 \frac{\beta_t (1 - \bar{\alpha}_{t-1})}{1 - \bar{\alpha}_t}​ 平衡了当前噪声的去除强度。

4. DDIM详解

DDIM(Denoising Diffusion Implicit Models)是一种改进的扩散模型,它的核心思想是去掉采样过程中的随机性,让采样变为确定性映射,以加速去噪过程。

4.1 扩散模型的前向过程

在扩散模型(如 DDPM)中,前向过程(即添加噪声的过程)被定义为:

q(x_t \mid x_{t-1}) = \mathcal{N}(x_t; \sqrt{\alpha_t} x_{t-1}, (1 - \alpha_t) I)

其中:

  • x_t 是第 t 轮扩散后的变量,
  • \alpha_t = 1 - \beta_t 是噪声缩放因子,\beta_t 是超参数,控制噪声的增加量,
  • 该公式表明,每一步 x_t​ 都是从一个高斯分布中采样得到的,它是上一时刻 x_{t-1}​ 的缩放版本,并加上一个噪声。

经过 ttt 轮扩散,原始数据 x_0​ 变成:

q(x_t \mid x_0) = \mathcal{N}(x_t; \sqrt{\bar{\alpha}_t} x_0, (1 - \bar{\alpha}_t) I)

其中:

\bar{\alpha}_t = \prod_{s=1}^{t} \alpha_s

是累积噪声缩放因子。

这个公式意味着:我们可以直接在任意时刻 t 通过 x_0 计算出 x_t,如下:

x_t = \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon, \quad \epsilon \sim \mathcal{N}(0, I)

这表明 x_t原始数据的缩放版本加上噪声构成。

4.2 反向去噪过程

扩散模型的目标是逆向求解这个过程,即:

q(x_{t-1} \mid x_t, x_0)

来恢复原始数据。

4.2.1 DDPM 反向去噪

在 DDPM 中,利用贝叶斯定理可得:

q(x_{t-1} \mid x_t, x_0) = \mathcal{N}(x_{t-1}; \tilde{\mu}(x_t, x_0), \tilde{\beta}_t I)

其中:

tilde{\mu}(x_t, x_0) = \frac{\sqrt{\bar{\alpha}_{t-1}} (1 - \alpha_t) x_0 + \sqrt{\alpha_t} (1 - \bar{\alpha}_{t-1}) x_t}{1 - \bar{\alpha}_t}

反向去噪的均值,而 \tilde{\beta}_t 是噪声方差。

在实际实现时,我们并不知道 x_0​,但可以用神经网络 \epsilon_\theta(x_t, t) 来预测扩散过程中添加的噪声 \epsilon,然后用:

\hat{x}_0 = \frac{x_t - \sqrt{1 - \bar{\alpha}_t} \epsilon_\theta(x_t, t)}{\sqrt{\bar{\alpha}_t}}

来估计 x_0​,并代入均值公式得到 x_{t-1} 的采样:

x_{t-1} = \tilde{\mu}(x_t, \hat{x}_0) + \sigma_t z, \quad z \sim \mathcal{N}(0, I)

这个过程是随机采样的,因此,每次去噪都会有不同的结果。

4.2.2 DDIM 的去噪过程

DDIM 的目标是消除采样过程的随机性,使得同一个 x_T​ 在每次去噪时总是得到相同的 x_0​。


确定性去噪映射

DDIM 设计了一个确定性去噪过程,它的公式如下:

x_{t-1} = \sqrt{\bar{\alpha}_{t-1}} \hat{x}_0 + \sqrt{1 - \bar{\alpha}_{t-1} - \eta^2 \sigma_t^2} \cdot \epsilon_\theta(x_t, t) + \eta \sigma_t z

  • \eta = 0 时,该过程是完全确定性的,不会引入额外噪声 z,因此相同的x_T​ 会生成相同的 x_0​。
  • \eta > 0 时,该过程会引入少量随机性,兼顾质量和多样性。

为什么这样设计?

  • 第一项 \sqrt{\bar{\alpha}_{t-1}} \hat{x}_0 代表直接用估计的 x_0 生成 x_{t-1},这保证了去噪的准确性。
  • 第二项 \sqrt{1 - \bar{\alpha}_{t-1} - \eta^2 \sigma_t^2} \cdot \epsilon_\theta(x_t, t) 是噪声项,控制模型的变化趋势。
  • 第三项 \eta \sigma_t z 允许添加一定的随机性,从而在多次采样时生成不同的结果(但仍然比 DDPM 的随机性小)。

如果我们取 \eta = 0,则公式化简为:

x_{t-1} = \sqrt{\bar{\alpha}_{t-1}} \hat{x}_0 + \sqrt{1 - \bar{\alpha}_{t-1}} \cdot \epsilon_\theta(x_t, t)

这意味着:

  • 直接计算出 x_{t-1},而不需要从高斯分布中采样。
  • 反向过程变成了一个确定性映射,加快了去噪速度。

4.3 DDIM 与 DDPM 的区别

DDPMDDIM
采样过程随机确定性(可选少量随机性)
采样速度需要 1000 步可用 50-100 步
生成结果每次不同相同(\eta=0)或稍有不同(\eta>0
可控性难以调整可通过 \eta 控制

4.4 结论

  • DDIM 通过消除随机性加速去噪过程,使得同一个噪声 x_T​ 总是生成相同的样本。
  • DDIM 采样速度更快(可以减少到 50-100 步),但仍然保持高质量。
  • 通过调整 \eta 值,DDIM 可以在“确定性采样”和“随机采样”之间平衡。
  • DDIM 仍然使用 DDPM 训练的同一个模型,因此无需重新训练模型就能使用 DDIM 进行采样。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值