扩散模型Diffusion Model 【质量提升2.0】【扩散模型】

扩散模型Diffusion Model 【质量提升2.0】【扩散模型】

文章目录

  • 扩散模型Diffusion Model 【质量提升2.0】【扩散模型】
  • 一.扩散模型简介
  • 二.前向扩散简介
  • 三.逆向扩散简介
  • 四.目标函数


一.扩散模型简介

  1. 其最早出现在2015年,是生成模型的一种,目前占据主流的扩散模型多基于2020年提出的DDPM。
  2. 其主要由正向扩散、逆向扩散两个过程组成的。
  3. 其基本工作流程是,扩散模型在正向扩散阶段对数据(图像)逐步施加噪声,直至数据(图像)被完全破坏成高斯噪声, 然后在逆向扩散阶段学习从高斯噪声还原为原始数据(图像)。
  4. 在训练过程中,每次添加的噪声是已知的,即 q (x( t) | x(t−1)) 是已知的,而且具有马尔科夫性质,因此q(x(t) | x(0))也是已知的,扩散过程最主要的就是 q (x(t) | x(0))和 q(x(t) |x(t-1))的推导,推导细节见下文的扩散过程简介。
  5. 逆向过程是在噪声中复原出原图的过程,即在给定条件下根据x(t)得到x(t-1)的过程 q (x(t-1) | x(t)) ,但由于数据集不是全数据集,因此我们是不能获得准确的逆向过程,因此训练一个网络p(θ;x(t-1) | x(t))来近似这一过程。而有趣的是,尽管不知道 q (x(t-1) | x(t)) ,但是 q(x(t-1) | x(t),x(0))却是可以用 q (x(t) | x(t-1)) 和q(x(t) | x(0))表示的,即 q(x(t-1) | x(t),x(0))是可知的,因此我们可以用 q(x(t-1) | x(t),x(0))来指导p(θ;x(t-1) | x(t))的训练。因此,逆扩散过程最主要的就是 q(x(t-1) | x(t),x(0))的推导,推导细节见下文的逆扩散过程。

二.前向扩散简介

  1. 前向扩散过程,是一步步给输入的数据(图像)中加入高斯噪声的过程,随着每次噪声的加入数据(图像)就会损失部分信息,在执行足够多的加噪操作后,图像会收敛于噪声的分布,即高斯分布。
    扩散模型Diffusion Model 【质量提升2.0】【扩散模型】_第1张图片

  2. 假定 x 表示数据样本(图像),下标 t 表示时间步。x0即为原始图像,t越大对应的数据中包含的噪声越多。

  3. 如何为图像加噪声?

  • 每一步都要添加高斯噪声,对于x(t-1)到x(t)的过程,对x(t-1)添加方差为β(t)的正态分布的噪声,从而得到x(t)。
    其中β(t)在[0,1]区间取值,且它是人为设定的超参数序列,一般在刚开始加入一点噪声就会有较为明显的效果,但随着时间的推移,所需噪声就越来越多,因此β(t)的值一般是慢慢增大的。
    扩散模型Diffusion Model 【质量提升2.0】【扩散模型】_第2张图片
  • 与其将加噪声的过程理解成: x(t-1)通过q函数变成x(t),不如理解成q是个分布,它由x(t-1)确定,而x(t)是q的一次随机采样的结果。
  1. 不难发现前向扩散的过程中,添加噪声(即x(t))只由x(t-1)和β(t)决定,这是固定的而非学习的过程 ,且生成x(t)时不依赖除x(t-1)以外的其他时间步的数据,因此前向扩散是一个马氏链过程,因此只要有x(0)与[β(t)],就可以直接算出最终的x(T)(见上图的后验概率)。
  2. 重参数化技巧:因为加噪声的过程是在分布中随机采样的过程,所以也会遇到VAE中类似的困难(即“采样操作“不能求导),所以还是要引入重参数化技巧。
  3. 前向扩散的推导过程
    扩散模型Diffusion Model 【质量提升2.0】【扩散模型】_第3张图片
  4. 扩散模型的前向过程定义了一种把数据分布映射到标准高斯分布的方法,使得生成器可以直接拟合每一小步的逆过程。

三.逆向扩散简介

  1. 逆向扩散过程,是反过来去噪的过程,从白噪声开始,一步步去除数据(图像)中的噪声,来生成数据,知道得到清晰的图像。
    扩散模型Diffusion Model 【质量提升2.0】【扩散模型】_第4张图片

  2. 与正向相反,逆向过程是从x(t)推导x(t-1)进而得到x(0)的过程。

  3. 在β(t)足够小的时候逆向过程也是近似高斯分布的,但因为数据集不是全数据集,因此x(t)到x(t-1)的分布不得而知,这就不得不依靠神经网络训练一个p(θ;x(t-1)|x(t))来近似逆向扩散过程。

  4. 由前面的内容不难知,逆扩散过程最主要的就是 q(x(t-1) | x(t),x(0))的推导,推导细节见下图。

扩散模型Diffusion Model 【质量提升2.0】【扩散模型】_第5张图片
扩散模型Diffusion Model 【质量提升2.0】【扩散模型】_第6张图片

四.目标函数

待续

你可能感兴趣的:(【质量提升2.0】【扩散模型】,计算机视觉,人工智能,深度学习)