扩散模型是概率生成模型,定义了一个随机扩散过程来建模数据分布。
前向过程 \( q \) 是一个马尔可夫过程,逐步向数据添加高斯噪声:
\[ q(\mathbf{x}_t|\mathbf{x}_{t-1}) = \mathcal{N}(\mathbf{x}_t; \sqrt{1-\beta_t}\mathbf{x}_{t-1}, \beta_t \mathbf{I}) \]
其中 \( \beta_t \) 是控制噪声程度的小方差参数。
后向过程由一个神经网络 \( p_\theta \) 近似,该网络学习去除噪声,从而生成数据分布:
\[ p_\theta(\mathbf{x}_{t-1}|\mathbf{x}_t) = \mathcal{N}(\mathbf{x}_{t-1}; \boldsymbol{\mu}_\theta(\mathbf{x}_t, t), \Sigma_\theta(\mathbf{x}_t, t)) \]
训练通过一种类似去噪分数匹配的损失函数最小化证据下界(ELBO)的变体。
扩散模型在训练时表现出稳定性和生成数据的高质量,但计算成本较高。
定义:
“扩散模型是概率生成模型,通过一个带有逐步噪声函数的随机前向过程和一个训练好的逆向过程去噪来建模数据。”
来源:
Ho, J., Jain, A., & Abbeel, P. (2020). Denoising Diffusion Probabilistic Models. Advances in Neural Information Processing Systems (NeurIPS).