AI 图像生成的进化之路:从“左右互搏”的 GAN 到“精雕细琢”的扩散模型
在过去的几年里,人工智能领域最具视觉冲击力的突破莫过于 AI 图像生成。从粗糙的模糊色块,到逼真的摄影级照片,再到令人惊叹的 Midjourney、Stable Diffusion 和 Sora,AI 生成技术的演进速度堪称魔幻。
当我们惊叹于 AI 能够根据一段文字凭空创造出绚丽画卷时,你是否好奇过这背后的技术引擎经历了怎样的迭代?
今天,我们将深入探讨 AI 图像生成的进化之路,从曾经统治该领域的生成对抗网络(GAN),走到如今如日中天的扩散模型。这不仅仅是一次算法的更替,更是深度学习在概率建模、数学优化和工程落地上的全面进化。
一、 曾经的王者:生成对抗网络(GAN)
2014 年,Ian Goodfellow 提出了生成对抗网络(GAN, Generative Adversarial Networks),这被公认为计算机视觉领域的里程碑事件。GAN 的核心思想非常优雅:“左右互搏”。
1. 核心原理:伪造者与鉴别师的游戏
GAN 由两个神经网络组成:
- 生成器: 可以理解为“伪造者”。它负责从随机噪声(Latent Noise)中生成图像。
- 判别器: 可以理解为“鉴别师”。它负责判断输入的图像是真实的(来自训练集)还是伪造的(来自生成器)。
两者在训练过程中进行零和博弈:生成器拼命生成更逼真的图像来欺骗判别器,而判别器则不断提升自己识别假图的能力。最终,当判别器无法分辨真假时(准确率为 50%),生成器就出师了。
2. GAN 的辉煌与瓶颈
GAN 凭借其出色的能力,衍生出了 StyleGAN、CycleGAN 等经典模型,并在人脸生成(如 ThisPersonDoesNotExist)、图像风格转换、超分辨率重建等领域大放异彩。
但是,GAN 存在几个致命的硬伤:
- 模式崩溃: 生成器可能会发现生成某一种特定的图像(比如全是笑脸)就能轻易骗过判别器,于是它就不再生成其他样式的图像,导致多样性极差。
- 训练不稳定: 判别器和生成器的能力必须保持微妙的平衡。如果判别器太强,生成器会梯度消失,彻底躺平;如果判别器太弱,生成器就会胡乱生成。
- 缺乏多样性: GAN 本质上是隐式建模,它倾向于生成单一的最优解图像,很难覆盖数据分布的所有长尾情况。
二、 承上启下:VAE 与流模型的探索
为了解决 GAN 不稳定和难以控制的问题,研究人员探索了显式的概率模型,其中最具代表性的是变分自编码器(VAE)和流模型。
1. VAE(变分自编码器)
VAE 引入了“编码器-解码器”架构。它不再像 GAN 那样只管生成,而是先将真实图像压缩成一个潜在的分布(高斯分布),然后再从分布中采样并还原图像。VAE 极大地提高了生成的稳定性,但由于其优化目标是最大化变分下界(ELBO),这往往会导致生成的图像边缘模糊,缺乏高频细节。
2. Flow(流模型)
流模型通过一系列可逆的数学变换,将复杂的图像分布映射为简单的高斯分布。因为它具有精确的数学可逆性,训练非常稳定。然而,为了满足可逆条件,流模型的网络通常极其庞大且计算代价高昂,未能成为主流。
三、 当今的霸主:扩散模型
就在 GAN 陷入瓶颈、VAE 表现平平之际,扩散模型异军突起。2020 年,Jonathan Ho 等人提出的 DDPM(Denoising Diffusion Probabilistic Models)彻底改变了图像生成的格局。
如果说 GAN 是瞬间成型的“3D打印”,那么扩散模型就是“从混沌中雕刻”的过程。
1. 核心原理:破坏与重建
扩散模型受到非平衡热力学的启发,主要分为两个过程:
- 前向扩散过程: 给一张真实的清晰照片,每次向其中添加一点点高斯噪声。经过 步之后,这张图片变成了一张纯粹的、毫无意义的随机噪点图。这个过程是确定的,不需要训练。
- 逆向去噪过程: 这是核心所在。我们训练一个神经网络(通常是 U-Net),让它学习如何从这堆随机噪点中,一步步地把噪声剥离出去,最终还原出一张清晰的图像。
在推理生成时,我们完全不需要真实的图片。只需要给模型一堆纯粹的随机噪声,模型就能一步步“精雕细琢”,最终凭空创造出一幅全新的图像。
2. 为什么 Diffusion 能打败 GAN?
- 极度稳定: 扩散模型的损失函数非常简单,本质上就是比较模型预测的噪声和真实添加的噪声之间的均方误差(MSE)。没有对抗网络那种艰难的平衡游戏。
- 极高的多样性: 因为它是从概率分布的角度去拟合整个数据集,而不是像 GAN 那样寻找单一最优解,所以它几乎不会发生模式崩溃,能生成千变万化的图像。
- 数学基础扎实: 易于引入条件控制,这是后续 ControlNet 和文本提示词(CLIP)能够大放异彩的基础。
3. 数学直觉与技术细节 (DDPM)
在前向过程中,给定初始图像 ,在第 步的图像 可以通过重参数化技巧直接计算:
其中 是纯高斯噪声。
在训练时,模型并不需要预测 ,而是预测那个噪声 。其简化的损失函数为:
这里的 就是具有时间感知能力的 U-Net。
四、 爆发的前夜:潜在扩散模型(LDM)与 Stable Diffusion
原教旨主义的 DDPM 虽然效果好,但存在一个致命缺点:太慢、太吃显存。
因为扩散过程是在像素空间进行的。一张 的 RGB 图像有近 80 万个维度,要在这么大的张量上反复运行 U-Net 进行几十步甚至上千步的去噪,这在消费级显卡上是不可想象的。
2021 年,慕尼黑大学的 Robin Rombach 等人提出了 潜在扩散模型。这直接催生了后来引爆全球的 Stable Diffusion。
1. 核心创新:从“像素空间”降维到“潜在空间”
LDM 聪明地结合了 VAE 和 Diffusion:
- 压缩: 首先,训练一个强大的 Autoencoder(自编码器)。它的编码器将 的高清图像压缩成一个 的潜在特征图。维度缩小了 48 倍!
- 扩散: 接下来,不再对像素做扩散,而是对这个 的特征图做扩散和去噪。
- 解压: 去噪完成后,用自编码器的解码器将特征图放大还原成像素图像。
这一创举直接将计算复杂度降低了几个数量级,让原本需要集群算力的扩散模型,能够在普通的家用游戏显卡(如 RTX 3060)上流畅运行。
2. 文本控制:CLIP 模型的注入
光能生成图像还不够,我们需要“言出法随”。Stable Diffusion 引入了 CLIP(Contrastive Language-Image Pre-training)模型。
CLIP 将用户的自然语言提示词(Prompt,如“一只戴着墨镜的赛博朋克猫”)编码成文本特征向量。这些向量通过 交叉注意力机制 注入到 U-Net 的去噪网络中,在每一次去除噪声时,都提醒模型:“别忘了你要画的是猫,不是狗”。
五、 动手实践:用 PyTorch 编写一个极简的扩散模型
为了帮助大家更好地理解,我们用 PyTorch 写一个最基础的扩散模型(U-Net 结构简化版)的核心代码片段。
1 | import torch |
代码解析: 可以看到,训练扩散模型的过程出乎意料的简单。它不需要复杂的对抗损失,核心就是加噪和预测噪声(MSE Loss)。真正的复杂性在于 U-Net 结构的深度和时间步的数学处理。
六、 进阶技术与未来展望
从 GAN 到 Diffusion,并不是终点。当前 AI 视觉领域正在向更高的维度和更强的控制力发展:
1. CFG (Classifier-Free Guidance)
早期的扩散模型生成结果经常“跑题”。CFG 技术巧妙地在推理阶段混合有条件生成(有文本提示)和无条件生成的梯度,极大地增强了模型对提示词的遵循度,让生成的图像更加符合预期。
2. ControlNet:结构控制的革命
如果说提示词控制了“画什么”,ControlNet 则解决了“怎么画”的问题。通过提取输入图像的边缘、深度图、人体姿态等特征,并冻结原始 Stable Diffusion 模型的权重,额外训练一个 ControlNet 网络分支,从而实现了对生成图像空间结构的像素级完美控制。
3. GAN 与 Diffusion 的融合
天下大势,合久必分,分久必合。尽管 Diffusion 成为了主流,但它的推理速度慢(需要多步迭代)一直是个痛点。
目前最前沿的趋势是 Adversarial Diffusion(对抗式扩散),如 SDXL Turbo 和 LCM (Latent Consistency Models)。研究人员将 GAN 的对抗损失重新引入到扩散模型的蒸馏过程中,实现了只需 1 到 4 步就能生成高质量图像的惊人速度。
七、 总结
回顾 AI 图像生成的进化史:
- GAN 的时代(2014-2020): 凭借“左右互搏”的对抗思想打破了生成的门槛,生成图像锐利,但训练困难、容易崩溃、多样性不足。
- VAE/Flow 的探索(2013-2019): 提供了基于概率和似然的思路,虽然稳定性提升,但在图像质量上未达极致。
- Diffusion 的崛起(2020-至今): 借用物理学的扩散思想,通过“破坏-重建”的循环,以扎实的数学基础和极高的稳定性,实现了对 GAN 的降维打击。
- LDM 与 Stable Diffusion(2022-至今): 聪明地将计算从像素空间转移到潜在空间,引爆了 AIGC 产业革命,并结合 CLIP 实现了“言出法随”。
技术的演进从来没有终点。未来,无论是结合大语言模型(LLM)的通用多模态能力,还是向着视频生成(如 Sora)的时空维度拓展,底层的生成引擎依然在不断进化。但有一点是确定的:从 GAN 到扩散模型的这一步跨越,已经彻底重塑了计算机视觉的未来。