自己建购物网站,在线制作网站 如何禁止蜘蛛收录网站,开发工具控件属性怎么打开,深圳网站建设领先扩散模型#xff08;Diffusion Model#xff09;是⼀类⼗分先进的基于物理热⼒学中的扩散思想的深度学习⽣成模型#xff0c;主要包括前向扩散和反向扩散两个过程。⽣成模型除了扩散模型之外#xff0c;还有出现较早的VAE#xff08;Variational Auto-Encoder#xff0c;… 扩散模型Diffusion Model是⼀类⼗分先进的基于物理热⼒学中的扩散思想的深度学习⽣成模型主要包括前向扩散和反向扩散两个过程。⽣成模型除了扩散模型之外还有出现较早的VAEVariational Auto-Encoder变分⾃编码器和GANGenerative Adversarial Net⽣成对抗⽹络等。
生成模型 在深度学习中⽣成模型的⽬标是根据给定的样本训练数据⽣成新样本。⾸先给定⼀批训练数据X假设其服从某种复杂的真实分布p(x)则给定的训练数据可视为从该分布中采样的观测样本x。如果能够从这些观测样本中估计出训练数据的真实分布不就可以从该分布中源源不断地采样出新的样本了吗⽣成模型实际上就是这么做的它的作⽤是估计训练数据的真实分布并将其假定为q(x)。在深度学习中这个过程称为拟合⽹络。 那么问题来了怎么才能知道估计的分布q(x)和真实分布p(x)的差距⼤不⼤呢⼀种简单的思路是要求所有的训练数据样本采样⾃q(x)的概率最⼤。这种思路实际上来⾃统计学中的最⼤似然估计思想它也是⽣成模型的基本思想之⼀因此⽣成模型的学习⽬标就是对训练数据的分布进⾏建模。
扩散过程 最⼤似然估计思想已经在⼀些模型如VAE上应⽤并取得了不错的效果。扩散模型可看作⼀个更深层次的VAE。扩散模型的表达能⼒更加丰富⽽且其核⼼在于扩散过程。 扩散的思想来⾃物理学中的⾮平衡热⼒学分⽀。⾮平衡热⼒学专⻔研究某些不处于热⼒学平衡中的物理系统其中最为典型的研究案例是⼀滴墨⽔在⽔中扩散的过程。在扩散开始之前这滴墨⽔会在⽔中的某个地⽅形成⼀个⼤的斑点我们可以认为这是这滴墨⽔的初始状态但要描述该初始状态的概率分布则很困难因为这个概率分布⾮常复杂。随着扩散过程的进⾏这滴墨⽔随着时间的推移逐步扩散到⽔中⽔的颜⾊也逐渐变成这滴墨⽔的颜⾊如图1-1所示。此时墨⽔分⼦的概率分布将变得更加简单和均匀这样我们就可以很轻松地⽤数学公式来描述其中的概率分布了。 在这种情况下⾮平衡热⼒学就派上⽤场了它可以描述这滴墨⽔随时间推移的扩散过程中每⼀个“时间步”旨在将连续的时间过程离散化状态的概率分布。若能够想到办法把这个过程反过来就可以从简单的分布中逐步推断出复杂的分布。 公认最早的扩散模型DDPMDenoising Diffusion Probabilistic Model的扩散原理就由此⽽来不过仅有上述条件依然很难从简单的分布倒推出复杂的分布。DDPM还做了⼀些假设例如假设扩散过程是⻢尔可夫过程 即每⼀个时间步状态的概率分布仅由上⼀个时间步状态的概率分布加上当前时间步的⾼斯噪声得到以及假设扩散过程的逆过程是⾼斯分布等。 图1-1 一滴墨水在水中扩散分布的示意图 DDPM的扩散过程如图1-2和1-3所示具体分为前向过程和反向过程两部分。扩散模型是一种潜变量模型它使用固定的马尔可夫链映射到潜在空间。该链逐步向数据中添加噪声以获得近似后验值其中为与x0具有相同维数的潜变量。在下面的图中我们可以看到这样一个马尔可夫链。 图1-2 前向过程 最后图像逐渐变为纯高斯噪声。训练扩散模型的目标是学习逆向过程即训练。通过沿着这条链向后遍历我们可以生成新的数据。 图1-3 反向过程
1前向过程 前向过程是给数据添加噪声的过程。假设给定一批训练数据数据分布为其中0表示初始即还没有开始扩散。如前所述将前向加噪过程分为离散的多个时间步 T 在每一个时间步 t 给上一个时间步t-1的数据添加高斯噪声从而生成带有噪声简称带噪的数据同时数据 也会被送入下个时间步 t 1以继续添加噪声。其中噪声的方差是由一个位于区间0,1的固定值确定的均值则由固定值和当前时刻带噪的数据分布确定。在反复迭代和加噪即添加噪声 T 次之后只要 T 足够大根据马尔可夫链的性质最终就可以得到纯随机噪声分布的数据即类似稳定墨水系统的状态。 接下来我们用简单的公式描述一下上述过程。从时间步 t -1到时间步 t 的单步扩散加噪过程的数学表达式如下 最终的噪声分布数学表达式如下 2反向过程 前向过程是将数据噪声化的过程反向过程则是去噪的过程即从随机噪声中迭代恢复出清晰数据的过程。 要从采样自高斯噪声的一个随机噪声中恢复出原始数据就需要道反向过程中每一步的图像分布状态转移。类似地 DDPM 也将反向过程定义为一个马尔可夫链只不过这个马尔可夫链是由一系列用神经网络参数化的高斯分布组成的也就是需要训练的扩散模型。 从时间步 t 到时间步 t -1的单步反向去噪过程的数学表达式如下 由于反向过程的每一步都是参数化的高斯分布因此可以分别求高斯分布的均值和方贝叶斯公式推导的过程最终得到时间步 t -1的高斯分布 的均值和方差的数学公式如下 可以看出方差是一个定量(扩散过程参数固定)而均值是一个依赖于 和的函数因此需要使用扩散模型来优化参数。
3优化目标 扩散模型预测的是噪声残差即要求后向过程中预测的噪声分布与前向过程中噪声分布的“距离”最小。 下面我们从另一个角度来看看扩散模型。如果把中间产生的变量看成隐变量的话那么扩散模型其实是一种包含 T 个隐变量的模型因此可以看成更深层次的 VAE 而 VAE 的损失函数可以使用变分推断来得到变分下界 variational lower bound )。 扩散模型的最终优化目标的数学表达式如下 可以看出在训练 DDPM 时只要用一个简单的 MSE ( Mean Squared Error 均方误差损失来最小化时向过程施加的噪声分布和后向过程预测的噪声分布就能实现最终的优化目标。