扩散模型,又称基于扩散的生成模型或基于分数的生成模型,是一类机器学习中的潜变量生成模型。它们由两个主要部分组成:一个前向扩散过程,逐步向数据添加噪声;以及一个反向采样过程,学习去噪。目标是针对给定数据集学习一个扩散过程,使得能够生成与原始数据分布相似的新元素。训练好的扩散模型可以通过多种方式采样,在效率和质量之间有不同的权衡。
扩散模型于2015年引入,借鉴了非平衡热力学技术。核心思想是将数据分布建模为高维空间中的“云”。通过反复添加噪声,这朵云向外扩散,直到几乎与高斯分布无法区分。一个经过训练以近似逆转此扩散过程的模型,可以通过从随机噪声开始并迭代去噪,从原始分布生成新样本。
形式化与训练
扩散模型有几种等价的形式化方法,包括马尔可夫链、去噪扩散概率模型(DDPM)、噪声条件分数网络和随机微分方程。它们通常使用变分推断进行训练。负责去噪的模型称为“骨干”,可以是任何架构,但通常是U-Net或Transformer。2020年的DDPM论文通过将变分推断应用于扩散过程,改进了早期方法。
计算机视觉中的应用
截至2024年,扩散模型主要用于计算机视觉任务,包括图像去噪、修复、超分辨率、图像生成和视频生成。这些任务通常涉及训练神经网络,以顺序去噪被高斯噪声模糊的图像。训练收敛后,模型可以通过从随机噪声开始并迭代应用网络去除噪声来生成图像。基于扩散的图像生成器已引起广泛的商业兴趣,著名例子包括Stable Diffusion和DALL-E。这些系统通常将扩散模型与文本编码器和交叉注意力模块结合,以实现文本条件生成。
其他领域
除了计算机视觉,扩散模型在自然语言处理中也有应用,如文本生成和摘要,以及声音生成和强化学习。它们的多功能性使其成为生成式人工智能研究的关键领域。
与其他生成模型的关系
扩散模型是更广泛的生成模型景观的一部分,其中还包括大型语言模型和其他方法。虽然大型语言模型通常依赖自回归或基于Transformer的架构,但扩散模型提供了一种替代范式,特别适用于图像和音频等连续数据。骨干的选择,无论是U-Net还是Transformer,使扩散模型能够利用深度学习和神经网络研究的进展。
未来方向
研究继续提高扩散模型的效率和质量,探索新的采样方法、骨干架构和应用。扩散模型与其他AI系统的集成,如OpenAI、Google DeepMind和Anthropic开发的系统,可能会推动人工智能的进一步创新。