扩散模型的工作原理:从头开始的数学

深入研究扩散模型的数学和直觉。了解扩散过程是如何制定的,我们如何引导扩散,稳定扩散背后的主要原理,以及它们与基于分数的模型的联系。

来源:AI夏令营

扩散模型是一类新的最先进的生成模型,可生成各种高分辨率图像。在 OpenAI、Nvidia 和 Google 成功训练出大规模模型后,它们已经引起了广泛关注。基于扩散模型的示例架构有 GLIDE、DALLE-2、Imagen 和完整开源稳定扩散。

但是它们背后的主要原理是什么?

在这篇博文中,我们将从基本原理开始深入挖掘。已经有许多不同的基于扩散的架构。我们将重点介绍最突出的一种,即由 Sohl-Dickstein 等人初始化并由 Ho. 等人于 2020 年提出的去噪扩散概率模型 (DDPM)。将在较小程度上讨论各种其他方法,例如稳定扩散和基于分数的模型。

Sohl-Dickstein 等人 Ho. et al 2020
扩散模型与之前的所有生成方法有着根本的不同。直观地说,它们旨在将图像生成过程(采样)分解为许多小的“去噪”步骤。

扩散模型与之前的所有生成方法有着根本的不同。直观地说,它们旨在将图像生成过程(采样)分解为许多小的“去噪”步骤。

这背后的直觉是,模型可以通过这些小步骤自我修正,并逐渐产生一个好的样本。在某种程度上,这种改进表示的想法已经在 alphafold 等模型中使用过。但是,没有什么是零成本的。这个迭代过程使它们的采样速度很慢,至少与 GAN 相比是这样。

alphafold GAN

扩散过程

x0\mathbf{x}_0x0​ x0\mathbf{x}_0x0​ x0\mathbf{x}_0 x0\mathbf{x}_0 mathbf{x}_0 x0 x0 x 0 \mathbf{x}_0 x0​ x0​ x0​ x x 0​ 0​ 0​ 0 0 0 0 TTT TTT TT TT TT T T T T T T t t t t t t < T t t t< t < T 怎么做?让我们深入研究数学,让它变得一目了然。 前向扩散 变分自动编码器 (VAE) TTT TTT TT TT TT T T T T T T > 基于流的模型 x0\textbf{x}_0x0​ x0\textbf{x}_0x0​ x0 x0 x 0 x0​ x0​ t t t t t < T t t t< t < T 怎么做?让我们深入研究数学,让它变得一目了然。 前向扩散 变分自动编码器 (VAE) TTT TTT TT TT TT T T T T T T > 基于流的模型 x0\textbf{x}_0x0​ x0\textbf{x}_0x0​ x0 x0 x 0 x0​ x0​ t t t t < T t t t< t < T 怎么做?让我们深入研究数学,让它变得一目了然。 前向扩散 变分自动编码器 (VAE) TTT TTT TT TT TT T T T T T T > 基于流的模型 x0\textbf{x}_0x0​ x0\textbf{x}_0x0​ x0 x0 x 0 x0​ x0​ t t t < T t t t< t < T 怎么做?让我们深入研究数学,让它变得一目了然。 前向扩散 变分自动编码器 (VAE) TTT TTT TT TT TT T T T T T T > 基于流的模型 x0\textbf{x}_0x0​ x0\textbf{x}_0x0​ x0 x0 x 0 x0​ x0​ t t < T t t t< t < T 怎么做?让我们深入研究数学,让它变得一目了然。 前向扩散 变分自动编码器 (VAE) TTT TTT TT TT TT T T T T T T > 基于流的模型 x0\textbf{x}_0x0​ x0\textbf{x}_0x0​ x0 x0 x 0 x0​ x0​ t < T t t t< t < T 怎么做?让我们深入研究数学,让它变得一目了然。 前向扩散 变分自动编码器 (VAE) TTT TTT TT TT TT T T T T T T > 基于流的模型 x0\textbf{x}_0x0​ x0\textbf{x}_0x0​ x0 x0 x 0 x0​ x0​ < T t t t< t < T 怎么做?让我们深入研究数学,让它变得一目了然。 前向扩散 变分自动编码器 (VAE) TTT TTT TT TT TT T T T T T T > 基于流的模型 x0\textbf{x}_0x0​ x0\textbf{x}_0x0​ x0 x0 x 0 x0​ x0​ t t< t < T 怎么做?让我们深入研究数学,让它变得一目了然。 前向扩散 变分自动编码器 (VAE) TTT TTT TT TT TT T T T T T T > 基于流的模型 x0\textbf{x}_0x0​ x0\textbf{x}_0x0​ x0 x0 x 0 x0​ x0​ t< t < T 怎么做?让我们深入研究数学,让它变得一目了然。 前向扩散

变分自动编码器 (VAE)

TTT

TTT TT TT TT T T T T T T > 基于流的模型 x0\textbf{x}_0x0​ x0\textbf{x}_0x0​ x0 x0 x 0 x0​ x0​ 基于流的模型 x0\textbf{x}_0x0​ x0\textbf{x}_0x0​ x0 x0 x 0 x0​ x0​