1.背景
为了寻求一个更统一、更强大、更灵活的框架来解释和扩展已有的DDPM、Score-Based Model(下文简称SBM), stochastic differential equation (SDE)模型被提出,通过统一离散的DDPM和SBM,为扩散模型建立更一般化、更严谨的连续数学基础。
SDE成功地将领域从离散的、经验的“技巧”提升到了连续的、有坚实数学基础的范畴,同时解决了离散模型采样慢、步骤固定、灵活性差的问题,实现更快的采样、可控的图像编辑与插值。
具体来说,SDE涉及到维纳过程、伊藤过程与福克-普朗克方程,下文分别介绍。
2.维纳过程与伊藤过程
2.1 维纳过程
维纳过程Wiener process,又称标准布朗运动,是数学中最基本的随机过程之一,在数学、物理学、工程学等领域有着广泛的应用。该过程以诺伯特·维纳(Norbert Wiener)的名字命名,他在 20 世纪 20 年代严谨地提出了这一过程,为连续时间随机现象的建模提供了一个数学框架。
维纳过程是一个连续时间随机过程𝑊(𝑡),满足以下条件:
- 初始条件:𝑊(0) = 0.
- 独立增量:对于任意增量
都是独立随机变量。
- 平稳增量:∆W =𝑊(𝑡 + ∆t) − 𝑊(𝑡) 的分布仅取决于 ∆t,而不取决于 𝑡。
- 正态分布:增量∆W= 𝑊(𝑡 + ∆t) − 𝑊(𝑡) 遵循正态分布,即 𝑊(𝑡 +∆t) − 𝑊(𝑡) ∼ 𝑁(0, ∆t)
- 连续性:
在时间上关于t几乎肯定是连续的。
简化上述维纳过程表述形式,
则:
当,可得到连续时间的随机过程,表示为如下连续时间随机微分方程:
2.2 广义维纳过程
广义维纳过程是一种均值与方差可不为 0 和 1 的维纳过程,其形式可表示为:
其中表示均值随时间保持线性变化,
则是经过尺度变换的维纳过程。
换言之,广义维纳过程可类比维纳过程的形式进行理解,这意味着在任意时间跨度
内,相应的
变化量
满足:
通过对上述维纳过程添加均值与标准差参数,即可实现广义维纳过程的抽样模拟。
2.3 伊藤过程
伊藤过程(Ito process)可看作更为一般化的维纳过程,它直接把广义维纳过程的系数表示为变量
的函数形式,其随机微分方程的表示如下:
也可以表示为:
它对应的逆过程(Anderson公式)可以描述为:
具体推导过程,可参考 Deriving Reverse-Time Stochastic Differential Equations (SDEs)
2.4Fokker–Planck 方程
其中,表示 变量
的概率密度。
Fokker–Planck 方程作为扩散方程的一个推广,描述了概率分布如何随时间变化。福克-普朗克方程的意义在于,概率密度随时间的变化可以完全用坐标
的导数来表示。
该方程的演变由来及其与扩散模型的关联与泛化,可参考 Fokker-Planck_Equations 与The-Fokker-Planck-Equation-and-Diffusion-Models 。
3.SDE引入
噪声尺度对于基于分数的生成模型(SBM)的成功至关重要。通过将噪声尺度的数量推广到无穷大,不仅获得了更高质量的样本,而且还获得了精确的对数似然计算和可控的逆问题求解生成。
当噪声尺度数量趋近于无穷时,我们实际上是在用连续增强的噪声水平扰动数据分布。在这种情况下,噪声扰动过程可表示为连续时间随机过程,如下所示。
这里可以将有限噪声尺度的概念扩展至无限连续噪声尺度,通过将该过程建模为扩散过程来实现。这一过程可形式化为随机微分方程(SDE),其表达式形如伊藤过程,如下所示:
此处,表示漂移系数,用于建模随机微分方程(SDE)的确定性部分,决定了过程
随时间变化的平均预期速率。
称为扩散系数,代表SDE的随机部分,决定了加噪过程随时间变化的强度。最后,
是布朗运动,也就是上述的维纳过程。因此
表示加噪过程。
希望设计的扩散过程满足:为原始数据分布,
为与
独立的高斯噪声分布。由于每个SDE都存在对应的逆向SDE,我们可以从最终噪声分布出发,通过运行以下逆向时间SDE来恢复
的样本,该过程由以下方程描述(Anderson公式),具体推导可参考 ReverseTimeAnderson:
注意:表示从终止时刻 T反向流动至初始时刻 0 的逆向布朗运动(维纳过程),标记上标是为了说明这个维纳过程不同于正向流动从0到T时刻的维纳过程,部分文献表示为
,dt为无穷小的负时间步长。
此时,基于随机微分方程的分数匹配目标函数可表述为:
4. 扩散模型的SDE形式
( Song等人,2021)研究了两类基于分数的生成模型,它们采用随机微分方程(SDE)进行生成建模。一种称为基于朗之万动力学的分数匹配(SMLD),该方法通过在不同噪声尺度下进行分数估计,随后采用噪声尺度递减的朗之万动力学进行采样,另一种是去噪扩散概率模型(DDPM)。
(Ho等人,2020),它使用参数化的马尔可夫链,通过证据下界(ELBO)的加权变体进行训练——这属于变分推断的范畴。该马尔可夫链被训练用于逆转噪声扩散过程,从而可以通过标准马尔可夫链蒙特卡罗方法从链中采样。
( Song等人,2021)揭示了SMLD和DDPM实际上分别对应方差爆炸(VE)和方差保持(VP)两类随机微分方程的离散化形式,这将是接下来两节的重点内容。我们认为对此展开阐述将具有启发性,因为它能凸显随机微分方程与实际应用中离散化方法之间的内在联系。
汇总的离散形式如下表所示,具体内容后面章节详细展开。
4.1 SMLD的SDE形式
通过采用几何级数形式的噪声尺度,参数N为噪声的尺度,将其叠加到数据分布上。定义
,可以看成是
的离散随机过程,逐级添加噪声,可以递归地定义每个噪声尺度对应的扰动数据分布:
且满足,
其中,
此时,有:
进一步将式(4)改写成 SDE 的形式 (即令):
当(即
),有:
此时噪声尺度视为随时间连续变化的过程,得到方差爆炸型随机微分方程 VE-SDE(Variance Exploding SDE):
(该过程)得名于其几何级数增长特性:当时,会使
的方差趋向无穷大,此时的方差不会像DDPM模型稳定在一个合理的区间内,故而得名。
由SDE的模版伊藤公式:
此时,
逆向的SDE形式如下:
类似于DDPM,根据欧拉-丸山法写出SMLD的逆扩散方程离散化的迭代形式:
4.2 概率视角下的SDE
根据上述等式(1)表示SDE前向过程离散化形式如下:
用条件概率表示为:
利用bayes定理:
对于上式中对数项进行Taylor展开得到:
注意:实际上是“
时刻随机变量等于
的概率密度”,而
实际上是“
时刻随机变量等于
的概率密度”,,也就是说
实际上同时是
和
的函数,所以要多一项
的偏导数(标记红色)。
将式(12)带入式(11),配方得到(详细推导见附录二):
当时
不起作用,由此得到:
取的极限,那么就此得到反向过程的SDE:
即近似一个均值为
、协方差为
的正态分布,取
的极限,那么对应于SDE:
4.3 DDPM的SDE形式
类似地,DDPM的扰动 kernel 对应的马尔可夫链由以下公式给出(因本部分的变量有自己的含义,故而将DDPM的
改成
,都是表示第
步的意思):
将递归的变量进行替换:
则上述式(16)改写为:
进一步得到:
当,有:
其中第二项由一阶泰勒近似可以得到,第二项和 SMLD 中的推理是类似的。
最后, 可以总结为如下的 Wiener process,即取极限就得到了方差保持型随机微分方程VP-SDE(Variance Preserving SDE):
DDPM 的 ancestral采样(bayes后验)匹配其反向扩散对象(反向SDE),当时,对于所有
,存在:
相应地,逆向SDE方程如下:
离散化的DDPM采样形式如下:
![]()
附录一
可视化表示整个维纳过程如下:
附录二
对式(12)移项得:
取的极限时,
所以:
带入到式(11),得到:
其中,
式(26)改写为:
式(27)平方项展开得:
舍弃,这一项是高阶小,属于
,由此得:
由此,指数项内部变为:
结合前两项,配方可得:
回到式(26),可得:
与式(13)一致.
参考资料
https://royalsocietypublishing.org/doi/full/10.1098/rsta.2024.0503
https://jmtomczak.github.io/blog/17/17_sbgms.html
https://antarina.tech/posts/notes/articles/%E7%AC%94%E8%AE%B0sde.html#_6-4-sampling-with-predictor-corrector-methods
https://andrewcharlesjones.github.io/journal/stochastic-processes.html