2.5 生成式模型:生成对抗网络(GAN)与扩散模型(Diffusion Model)的技术对比

生成式模型是深度学习领域皇冠上的明珠,其目标是学习数据分布 ( p(\text{data}) ) 并从中采样,以创造出与真实数据相似的新样本。在众多生成模型中,生成对抗网络扩散模型 是两条主导技术路径,分别代表了隐式生成模型显式概率模型 的巅峰。本节将从技术原理、训练动态、样本质量等多个维度对二者进行深度对比。

2.5.1 生成对抗网络(GAN):对抗性博弈

GAN 的核心思想源于博弈论,通过一个生成器(Generator)和一个判别器(Discriminator)之间的对抗竞争来共同进化。

1. 基本框架与目标函数

  • 生成器(G, Generator): 其输入通常是一个从简单先验分布(如高斯分布)中采样的随机噪声向量 (\mathbf{z}),目标是生成足以“以假乱真”的样本 (G(\mathbf{z}))。它试图欺骗判别器。
  • 判别器(D, Discriminator): 其输入是真实数据样本 (\mathbf{x}) 或生成样本 (G(\mathbf{z})),目标是输出一个标量,表示输入为真实数据的概率。它试图区分真实样本与伪造样本。

这是一个二人极小极大博弈,其价值函数 (V(G, D)) 为:
[
\min_G \max_D V(D, G) = \mathbb{E}{\boldsymbol{x} \sim p{\text{data}}(\boldsymbol{x})}[\log D(\boldsymbol{x})] + \mathbb{E}{\boldsymbol{z} \sim p{\boldsymbol{z}}(\boldsymbol{z})}[\log (1 - D(G(\boldsymbol{z})))]
]

  • 判别器 D 的目标: (\max_D V(D, G)),即最大化区分真实与生成样本的能力。这等价于最小化一个二分类的交叉熵损失。
  • 生成器 G 的目标: (\min_G V(D, G)),即最小化 (\log (1 - D(G(\mathbf{z})))),相当于最大化 (D(G(\mathbf{z}))),让判别器将生成样本判定为“真”。

2. 训练动态与挑战

训练过程是一个迭代的二元博弈:

  1. 固定 G,训练 D: 用来自真实数据和小批量生成样本的数据,通过梯度上升更新 D 的参数。
  2. 固定 D,训练 G: 通过梯度下降更新 G 的参数,以使得 D 对生成样本的判别概率升高。

GAN 面临的主要挑战

  • 训练不稳定性: 生成器与判别器的训练需要精细的平衡。如果一方远强于另一方,会导致梯度消失,训练停滞。这常被比喻为“鞍点”问题。
  • 模式崩溃: 生成器可能发现并反复生成少数几个能成功欺骗判别器的样本,而忽略了数据分布的其他模式(多样性),导致生成样本缺乏多样性。
  • 评估困难: 由于没有显式的似然函数,评估 GAN 的性能通常依赖于启发式指标(如 IS, FID)。

2.5.2 扩散模型(Diffusion Model):去噪扩散过程

扩散模型的核心思想是一个双向马尔可夫过程:一个固定的前向过程(加噪)逐渐将数据破坏为噪声,然后一个学习的反向过程(去噪)从噪声中重建数据。

1. 前向过程(加噪过程)

前向过程是一个固定的、逐步向数据 (\mathbf{x}_0) 添加高斯噪声的过程,在 (T) 步后,数据完全变为纯高斯噪声 (\mathbf{x}T \sim \mathcal{N}(0, \mathbf{I}))。每一步的转移概率为:
[
q(\mathbf{x}t | \mathbf{x}{t-1}) = \mathcal{N}(\mathbf{x}t; \sqrt{1 - \beta_t} \mathbf{x}{t-1}, \beta_t \mathbf{I})
]
其中 ({\beta_t \in (0, 1)}
{t=1}^T) 是预先定义的方差调度。一个关键性质是,我们可以通过重参数化技巧,直接从 (\mathbf{x}_0) 采样得到任意时刻 (t) 的加噪结果 (\mathbf{x}_t):
[
\mathbf{x}_t = \sqrt{\bar{\alpha}_t} \mathbf{x}_0 + \sqrt{1 - \bar{\alpha}_t} \boldsymbol{\epsilon}, \quad \text{where } \boldsymbol{\epsilon} \sim \mathcal{N}(0, \mathbf{I}), \alpha_t = 1 - \beta_t, \bar{\alpha}t = \prod{s=1}^t \alpha_s
]

2. 反向过程(去噪过程)

生成新样本,即从纯噪声 (\mathbf{x}T) 开始,执行反向过程 (q(\mathbf{x}{t-1} | \mathbf{x}t))。但这个真实的后验分布是未知的。因此,我们用一个以 (\theta) 为参数的神经网络 (p\theta) 来学习它:
[
p_\theta(\mathbf{x}{t-1} | \mathbf{x}t) = \mathcal{N}(\mathbf{x}{t-1}; \boldsymbol{\mu}\theta(\mathbf{x}t, t), \boldsymbol{\Sigma}\theta(\mathbf{x}_t, t))
]

3. 训练目标(去噪分数匹配/变分下界)

模型的训练目标是最大化变分下界。一个简化且非常有效的训练目标是去噪目标:训练一个网络 (\boldsymbol{\epsilon}\theta) 来预测在前向过程中添加到 (\mathbf{x}0) 上的噪声 (\boldsymbol{\epsilon})。
[
\mathcal{L}
{\text{simple}}(\theta) = \mathbb{E}
{t, \mathbf{x}0, \boldsymbol{\epsilon}} \left[ | \boldsymbol{\epsilon} - \boldsymbol{\epsilon}\theta( \sqrt{\bar{\alpha}_t} \mathbf{x}_0 + \sqrt{1 - \bar{\alpha}t} \boldsymbol{\epsilon}, t ) |^2 \right]
]
网络 (\boldsymbol{\epsilon}
\theta) 的输入是噪声数据 (\mathbf{x}_t) 和时间步 (t),输出是对所添加噪声的预测。一旦这个去噪网络被训练好,就可以通过从 (t=T) 到 (t=1) 的迭代去噪来生成样本。

2.5.3 技术对比深度分析

特性生成对抗网络(GAN)扩散模型(Diffusion Model)
核心原理对抗性博弈。一个生成器与一个判别器在极小极大游戏下共同进化。基于似然的去噪。学习一个固定的、逐步加噪过程的逆过程。
模型类型隐式密度模型。不显式定义数据分布 (p(x)),而是通过生成过程隐含地学习。显式概率模型。通过定义反向过程的转移概率,显式地建模数据分布。
训练目标极小极大博弈价值函数。非凸优化,寻求纳什均衡。证据下界(ELBO)最大化,简化为去噪均方误差损失
训练稳定性不稳定。需要精细平衡G和D,易遭遇模式崩溃和梯度消失。稳定。训练目标是一个简单的回归损失(预测噪声),训练过程更可靠、可重复。
采样速度极快。单次前向传播即可生成样本。缓慢。生成一个样本需要多次(如50-1000次)串行的去噪步骤。
样本质量高保真度,但多样性可能不足。尤其在生成图像上,细节锐利,但易受模式崩溃影响。高保真度与高多样性。通常能产生多样性极好且质量很高的样本,但有时可能略显平滑。
模式覆盖不保证。由于模式崩溃,可能无法覆盖整个数据分布。理论上保证。由于目标是最大化似然,倾向于覆盖所有数据模式。
评估指标依赖FID, IS等。可使用负对数似然(NLL)等理论坚实的指标。
主要挑战训练不稳定性、模式崩溃、评估困难。采样速度慢似然-质量权衡(似然高的模型生成质量不一定最好)。

总结与趋势

  • GAN 的优势在于其采样速度和曾经在图像生成领域无人能及的锐利度。它更类似于一种“艺术家”,通过直觉和对抗快速产生惊艳的结果,但过程可能难以控制。
  • 扩散模型 的优势在于其训练稳定性理论完备性卓越的多样性。它更像一位“工匠”,通过一步步严谨的步骤雕琢出样本。其缓慢的采样过程正通过蒸馏技术更先进的采样器(如DDIM, DPM-Solver)得到显著改善。

目前,扩散模型已成为生成式AI领域的主流范式,特别是在文生图等条件生成任务中展现出强大能力。然而,GAN在需要实时生成的应用中(如风格迁移、实时滤镜)仍具价值。二者的融合(如将扩散模型作为GAN的生成器)也是未来的重要探索方向。理解二者的核心差异与优劣,是选择和运用生成式模型的关键。

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐