# Diffusion
Introduced by Ho et al. in Denoising Diffusion Probabilistic Models https://arxiv.org/pdf/2006.11239v2
![Alt text](imgs/DiffusionTasks.png)
![img.png](imgs/DiffusionUsages.png)
![img.png](imgs/DiffusionMethods.png)
## 1.Description
扩散模型（Diffusion Model）是一类用于生成数据的深度学习模型，近年来在人工智能领域，尤其是在图像生成任务中，得到了广泛的关注和应用。它们的基本思想是通过一系列逐步添加噪声的反向过程，生成高质量的图像或其他数据。以下是对扩散模型的详细介绍：

### 1) **扩散模型的基本原理**
扩散模型的核心理念基于两个过程：
- **正向扩散过程（Forward Diffusion Process）：** 从数据（例如图像）开始，逐步向数据中添加噪声，直到数据完全变成纯噪声。这个过程通常是多个时间步长的马尔科夫链。
- **逆扩散过程（Reverse Diffusion Process）：** 从纯噪声开始，逐步去除噪声，最终重建原始数据。扩散模型的目标是学习如何通过逆向过程将噪声转化为高质量的数据样本。

在正向扩散过程中，数据逐渐丧失其结构，最终变成无意义的高斯噪声，而逆扩散过程则是尝试一步步恢复这些结构，使得模型能够从随机噪声中生成逼真的数据。

### 2) **扩散模型的训练过程**
训练扩散模型的目标是学习如何从噪声恢复数据。这通常通过最小化数据分布和模型分布之间的差异来实现。例如，可以通过最大化模型生成的数据与真实数据之间的对数似然（log-likelihood）。以下是训练的主要步骤：
- **正向扩散：** 通过一系列随机步骤向数据中添加噪声，生成不同噪声水平的样本。
- **训练模型：** 模型学习如何从不同噪声水平的样本中恢复原始数据。这个过程通常采用变分推断或其他基于似然的优化技术。

### 3) **扩散模型的应用**
扩散模型近年来在生成式任务中表现出了卓越的效果，尤其是在图像生成领域，扩散模型已经成为了生成对抗网络（GAN）的有力竞争者。它们被应用于：
- **图像生成**：扩散模型生成的图像往往比GAN生成的图像更加清晰、细致，并且训练更稳定。DALL·E 2、Stable Diffusion等模型都采用了扩散模型的技术。
- **音频生成**：扩散模型也被用来生成高质量的音频片段，如语音合成、音乐生成等。
- **文本生成**：尽管目前扩散模型主要在视觉和音频领域中广泛应用，但它们也有潜力用于生成文本或其他类型的数据。
- **其他生成任务**：如图像修复、超分辨率重建等。

### 4) **扩散模型的优点与挑战**
#### 优点：
- **稳定的训练过程**：相比于GAN，扩散模型在训练过程中更加稳定，不容易出现模式崩塌的问题。
- **生成质量高**：扩散模型生成的图像质量极高，特别是在复杂的细节恢复方面表现出色。
- **生成多样性好**：扩散模型生成的数据样本多样性更好。

#### 挑战：
- **计算复杂度高**：扩散模型的生成过程通常需要多个步骤，导致计算开销较大，推理速度慢。
- **模型复杂性**：扩散模型的结构和训练过程相对复杂，需要大量的计算资源和时间来进行有效训练。

### 5) **代表性模型**
- **Denoising Diffusion Probabilistic Models (DDPM)**：DDPM 是扩散模型的经典版本，它使用高斯噪声并基于概率论方法来学习如何从噪声恢复数据。
- **Latent Diffusion Model (LDM)**：LDM 是一种将扩散模型应用于潜在空间的方法，极大地减少了生成过程的计算开销，被用于诸如 Stable Diffusion 这样的大型模型。

### 总结
扩散模型是一种非常强大的生成模型，近年来在图像生成领域得到了极大的关注。与GAN相比，扩散模型具有训练更稳定、生成质量更高等优点，尽管它们面临计算复杂度较高的挑战，但随着技术的不断进步，它们在生成任务中的应用前景非常广阔。


## 2.Background
各式各样的深度生成模型最近都表现出了高质量样本数据模式：生成对抗网络GANs、自回归模型、流和变分自编码器VAE已经合成出了图像和样本

扩散模型通过一个特殊的退化过程，逐步地恢复图像，它采用了一个前向马尔可夫链和反向马尔可夫链。在扩散模型中，正向过程涉及一个马尔可夫链，它将数据逐步转化为噪声。

## 3.Papers & Methods

## 4.Networks


## 5.Comparision

## 1.Denoising

## 2.Image Generation

## 3.Image Reconstruction

## 4.Inpainting

## 5.Video Generation
