扩散模型于2022年前后取代生成对抗网络(GANs),成为主流的图像生成技术。它们能够生成更多样化且可控的输出,如今几乎所有图像和视频AI工具的核心都是扩散模型。
核心思想看似简单。取一张真实图像,逐步添加高斯噪声,直到它变成纯粹的静态,然后训练一个神经网络来逆转每一步。在生成时,你从随机噪声开始,运行学习到的去噪过程。模型不会一次性从零生成图像——它通过数十或数百次迭代优化步骤,逐步将噪声接近某种连贯的东西。这种迭代特性既是方法的优势,也是其弱点:它能产生非常高质量的输出,但每张图像都需要多次网络前向传递,相比单次传递架构,生成速度较慢。
实际上,现代扩散模型并不直接在像素空间中工作。潜在扩散(Stable Diffusion 中的“Stable”)使用预训练的自编码器将图像压缩成更小的潜在表示,然后在该空间中运行扩散过程。这使得高分辨率生成成为可能——在像素空间中扩散 512x512 图像需要每步处理 786,432 个值,而潜在空间可能将其压缩为 64x64x4,即约 16,384 个值。自编码器在最后处理像素映射。DALL-E 3、Midjourney、Flux 以及今天几乎所有竞争图像生成器都使用某种形式的潜在扩散。
条件控制是引导输出的方式。文本到图像模型使用文本编码器(通常是 CLIP 或 T5)对你的提示进行编码,然后通过交叉注意力在每一步将这些嵌入注入去噪网络。无分类器引导(CFG)是使这一方法有效工作的关键——在训练过程中,模型偶尔会丢弃条件信号,从而也学习无条件生成。在推理时,你计算有条件和无条件的预测,然后从无条件预测中进行外推。更高的 CFG 缩放值意味着模型更字面地遵循你的提示,但过度推远会导致图像过度饱和且充满伪影。这就是你在每个扩散 UI 中看到的“引导比例”滑块。
去噪网络本身的架构发展迅速。最初的 U-Net 主干网络(从医学图像分割中借用的卷积架构)在 Stable Diffusion 1.x 和 2.x 中占据主导地位。但该领域正稳步转向基于 Transformer 的去噪器——扩散变换器(DiT)。Sora、Stable Diffusion 3 和 Flux 都使用 DiT 变体。这种转变是有道理的:Transformer 可以处理可变长度序列,并且计算资源的扩展更可预测。对于视频生成,序列只需变成一系列帧,注意力可以直接建模时间一致性。
一个常见的误解是扩散模型“存储”或“检索”训练图像。它们不会。模型学习的是统计去噪函数——技术上是数据分布的梯度。在训练数据高度重复时可能会发生记忆,但这是一种故障模式,而非机制。另一个实用陷阱是去噪步骤的数量对质量和速度有巨大影响。DDIM 和 DPM-Solver 等技术将所需步骤从数千次减少到 20-50 次,而蒸馏方法(如 SDXL Turbo、潜在一致性模型)进一步将其推进到 1-4 步,尽管质量有所妥协。这正是当前的前沿——在不牺牲最初使扩散模型主导的高质量的前提下,使其足够快以实现实时和交互式使用。