本文对扩散模型中涉及的随机微分方程进行详细的数学分析和证明。因为重点为理顺关键逻辑,因此使用一维的随机微分方程来进行分析。
1.维纳过程(Wiener Process) 和 布朗运动(Brownian Motion)
1.1基本性质
如果从连续时间角度看,扩散模型的加噪过程实际上就是在扩散的常微分方程基础上增加了一个布朗运动漂移的过程 布朗运动/维纳过程 $W_t$ 需要满足以下性质:
- $W_0=0$
- 独立增量: $$ \begin{align} P\left( W_{t+u}-W_t \right) =P\left( W_{t+u}-W_t|W_t \right) \end{align} $$
- 增量满足正态分布 : $$ \begin{align} \left( W_{t+u}-W_t \right) \sim \mathcal{N} \left( 0,u \right) \end{align} $$
- $W_t$ 随时间$t$几乎一定连续 (almost surely)。
有了布朗运动的性质,为了后面证明需要需要用到下面三条引理:
- 噪声微元的分布: $$ \begin{align} dW_tdW_t=\sqrt{dt}\varepsilon \sqrt{dt}\varepsilon =dt\varepsilon ^2, where\,\,\varepsilon \sim \mathcal{N} \left( 0,1 \right) \end{align} $$
- 噪声微元的二阶原点矩等于时间微元, 方差则是时间微元的无穷小量 $$ \begin{align} E\left[ dW_tdW_t \right] =dt\,\,\,\, D\left[ dW_tdW_t \right] \,\,\propto \,\,dtdt\equiv o\left( dt \right) \end{align} $$
- 由第二条引理可以推出一下性质几乎一定满足(因为期望是定值,方差满足无穷小量): $$ \begin{align} dW_tdW_t=dt \end{align} $$
1.2 三种维纳积分过程
在连续时间的随机微分方程中,积分的定义有三种不同的方式:Itô积分、Stratonovich积分和反向Itô积分。这三种积分方式在处理随机过程时有不同的数学性质。
Itô积分
Itô积分是最常用的随机积分方式,离散形式定义如下:
$$ \begin{align} \int_0^T{g\left( W_t \right) dW_t}\,\, \equiv \sum_{i=0}^{k-1}{g\left( {W_{t_i}} \right)}\left( W_{t_{i+1}}-W_{t_i} \right) \end{align} $$
其中 $0=t_0 Stratonovich积分的离散形式定义如下:
反向Itô积分的离散形式定义如下:
首先从Stratonovich积分作为中间桥梁入手,可以得到以下关系:
联系之前的引理 $dW_tdW_t=dt$并结合上式第二项可以不严谨得到积分形式有如下关系 仿照类似的思路我们可以得到另一组关系:
同样结合之前的引理可以得到如下关系:
因此我们得到三种积分的关系如下:
Itô过程是指满足以下随机微分方程的过程: 该定义分为二部分 $\mu \left( X_t,t \right)$ 是漂移系数(必须满足Lipschitz连续条件), $\sigma \left( X_t,t \right)$ 是扩散系数, $W_t$ 是布朗运动。 Itô引理是随机微分方程中的一个重要工具,它描述了一个函数 $f(X_t,t)$ 的微分形式。具体来说,如果 $X_t$ 是一个Itô过程,那么对于一个足够光滑的函数 $f$,我们有:
其中 $o$ 是高阶无穷小量。 反向 Kolmogorov 方程(也称为 Fokker-Planck 方程的伴随方程)由以下偏微分方程描述: 其中 $s \leqslant t$,$p\left( x_t,t|x_s,s \right)$ 是在时间 $s$ 状态为 $x_s$ 的条件下,在时间 $t$ 状态为 $x_t$ 的转移概率密度函数。 首先,任意给定一个具有良好性质(如光滑、紧支集)的测试函数 $f(x)$。我们定义一个关于时间 $s$ 和状态 $y$ 的新函数 $u(y,s)$,它表示从状态 $(y,s)$ 出发,未来时刻 $t$ 的函数值 $f(X_t)$ 的条件期望: 当 $s \to t$ 时,状态 $X_s$ 趋近于 $X_t$,此时的期望值即为函数值本身。因此,函数 $u(y,s)$ 满足如下终端边界条件(注意这里是 $s=t$ 时的条件): 由上面的边界条件,我们可以继续推导: 第二个等号用到了$u$的定义,这意味着,如果我们把 $u(X_\tau, \tau)$ 看作一个随时间 $\tau$ 变化的过程($s \le \tau \le t$),它在任何时刻的条件期望都等于初始值 $u(y,s)$,因此该过程是一个鞅。 设随机过程 $X_\tau$ 服从随机微分方程 $dX_\tau = \mu(X_\tau, \tau)d\tau + \sigma(X_\tau, \tau)dW_\tau$。利用 Itô 引理对函数 $u(X_\tau, \tau)$ 在 $s \le \tau \le t$ 区间上进行微分: 由于 $u(X_\tau, \tau)$ 是一个鞅,其漂移项期望为零(即 $d\tau$ 项的系数为零)。对上式两边关于给定条件 $(y,s)$ 求期望,由于 Itô 积分(扩散项)的期望为 0,我们得到: 之前的边界条件推导可以得到 $\mathbb{E}_{|y,s}\left[ u\left( X_\tau,\tau \right) \right] = u(y,s)$ 是一个常数(不随 $\tau$ 变化),所以左端关于 $\tau$ 的导数为 0。特别地,令 $\tau \to s$(即取初始时刻),此时 $X_s = y$,我们有: 为了符号统一,将变量 $\tau$ 替换回 $s$,并将状态变量 $y$ 视为通用的自变量,我们得到 $u(y,s)$ 满足的偏微分方程: 将 $u(y,s) = \int f\left( x \right) p\left( x,t|y,s \right) dx$ 代入上述方程。注意,这里的偏导数是针对变量 $y$ 和 $s$ 求的,而积分是针对 $x$ 的($x$ 与 $y,s$ 无关)。因此可以将偏导符号移入积分号内: 由于测试函数 $f(x)$ 是任意的,要使上述积分恒为零,被积函数中关于 $f(x)$ 的系数项必须恒为零: 最后,我们将变量名进行统一替换:将起始状态变量 $y$ 替换为 $x_s$,将积分变量(目标状态)$x$ 替换为 $x_t$。方程变为: 将关于 $s$ 的偏导项移至等式右侧,即得到标准的反向 Kolmogorov 方程形式: 前向 Kolmogorov 方程(也称为 Fokker-Planck 方程)由以下偏微分方程描述:
证明过程 可以用类似证明反向 Kolmogorov 方程的思路来证明前向 Kolmogorov 方程。
首先定义一个测试函数 $u(x, t)$,让这个函数满足如下边界条件:
并且当$x \rightarrow \pm \infty $ 有$u\left( x,t \right) \rightarrow 0$和$\frac{\partial}{\partial x}u\left( x,t \right) \rightarrow 0$,因此可以推导:
其中,第三个等号用到了 Itô 引理,而第五个等号用到了分部积分加之前的边界条件,因为$u$ 是是任意的(满足边界条件的基础上),且在引入$u$之前$t_1$和$t_2$也是任意设置的,因此被积函数中关于$u$的系数项必须恒为零,即得到前向 Kolmogorov 方程:
郎之万方程(Langevin equation)是描述粒子在流体中运动的随机微分方程。郎之万方程通用形式为:
其中等式左侧的物理含义是粒子的加速度,右侧第一项 $-\lambda \frac{dx}{dt}$ 是阻尼项, $\lambda$ 是阻尼系数;第二项 $\eta \left( t \right)$ 是随机力,通常被建模为白噪声;第三项 $-\frac{\partial}{\partial x}V\left( x \right)$ 是由势能函数 $V(x)$ 导出的保守力。 如果假设粒子加速度为零,且阻尼系数 $\lambda=1$,随机力为标准高斯过程,那么郎之万方程可以简化为如下形式:
如果写成全微分的形式,则可以得到如下随机微分方程:
可见上式是一种特殊的 Itô 过程。那么它对应的前向 Kolmogorov 方程(Fokker-Planck 方程)为:
我们假设当$x\rightarrow \pm \infty $ 时,概率密度函数 $p(x,t)$ 以及其一阶导数 $\frac{\partial}{\partial x}p(x,t)$ 都趋近于零,假设平稳解存在,当$t\rightarrow +\infty $ 时,概率密度函数 $p(x,t)$ 收敛于一个平稳分布 $p(x)$,此时的前向 Kolmogorov 方程可以简化为如下形式:
左侧的零表示在平稳状态下,概率密度不随时间变化。接下来求解上述方程。
根据之前的边界条件有如下关系:
因此可以得到 $C_1=0$,即:
上式是一个一阶线性常微分方程,可以通过积分因子法求解。首先计算积分因子:
将积分因子乘以原方程的两边,得到:
可以看出上式左侧是 $e^{2V\left( x \right)}p\left( x \right)$ 的导数,因此可以得到如下关系:
因此可以得到 $e^{2V\left( x \right)}p\left(x \right) =C_2$,即:
根据概率密度函数的归一化条件 $\int_{-\infty}^{+\infty}{p\left( x \right) dx}=1$ 可以得到 $C_2=\frac{1}{\int_{-\infty}^{+\infty}{e^{-2V\left( x \right)}dx}}$,因此最终的平稳分布为:
因此势能函数 $V(x)$ 和平稳分布 $p(x)$ 之间的关系为 $V\left( x \right) =-\frac{1}{2}\log p\left( x \right) +C$,其中 $C$ 是一个常数。
如果要设计一种郎之万方程让其平稳分布为 $p_0(x)$,通过上述关系可以将对应郎之万方程设计如下:
其中$\frac{\partial}{\partial x}\log p_0\left( x \right) $ 是 $p_0(x)$ 的得分函数,只要通过间接手段求出得分函数,就可以通过上述郎之万方程来采样 $p_0(x)$ 了。 得分函数的求解见论文 Generative Modeling by Estimating Gradients of the Data Distribution 和 Sliced Score Matching: A Scalable Approach to Density and Score Estimation中的得分匹配方法。 时间反演的 Itô 过程是指在时间上进行反转的随机过程。首先回忆Itô过程的定义:如果 $X_t$ 是一个 Itô 过程,那么它满足如下随机微分方程:
在实例离散采样中,有一个隐含条件,即$W_{t+u}-W_t$是独立于$X_t$的,即加入的高斯噪声是独立于当前状态的。 我们假定反向时间的过程 $\tilde{X}_t$ 满足如下随机微分方程:
因为反向采样我们的加入的噪声是也独立于当前状态的,所以要求在反向过程也要满足 $\bar{W}_{t+u}-\bar{W}_t$ 是独立于 $X_t$ 的。 抛开上述噪声项,我们构造一个新的随机变量的微分形式(用反向噪声项一样的符号,但是为了防止循环论证,暂且不把它看作噪声项只看成普通随机变量):
根据前向 Kolmogorov方程,可以写出如下两个关系:
和
第二项用到了二维的前向 Kolmogorov 方程,这里不加证明地直接使用,区别就是含有二阶偏导数以及交叉项。 注意到$\bar{w}_t$和$w_t$实际上可以任意选取坐标原点,不妨假设在某个$s > 0$时刻,它们的坐标原点重合,即$\bar{w}_{s}=w_{s}$,因此在$s$时刻有如下关系:
将$\bar{w}_t$的分布作为狄拉克函数单独分离出来, 另外针对$t > s$单独构造一种分布:
其中,$\phi \left( \bar{w}_t,t \right) =\frac{1}{\sqrt{2\pi \left( t-s \right)}}e^{-\frac{{\bar{w}_t}^2}{2\left( t-s \right)}}$,可以发现,当$t\rightarrow s^+$时这一项也是狄拉克函数,并且可以很容易证明:
对这个分布进行超长推导:
倒数第三个等号用了前向 Kolmogorov 方程,最后一个等号用了 $p_0\left( x_t,w_t,t \right) $的定义。 可以发现新构造的分布 $p_0\left( x_t,w_t,t \right) $ 也满足和$p\left( x_{t_0},\bar{w}_{t_0},t_0 \right)$一样的前向 Kolmogorov 方程,并且在起始点s边界取值相同。因此可以认为二者服从同一种分布演化,所以可以认为:
既然$\bar{w}_t$的概率可以分离并且是高斯过程的形式,因此可以认为$\bar{w}_t-\bar{w}_s$是一个独立于$x_t$的高斯噪声过程。因此我们将$\bar{w}_t$代入之前的前向过程
其中,$\hat{\mu}\left( x_t,t \right) =\mu \left( x_t,t \right) -\frac{\sigma \left( x_t,t \right)}{p\left( x_t,t \right)}\frac{\partial}{\partial x_t}\left[ p\left( x_t,t \right) \sigma \left( x_t,t \right) \right] $ 对于一个Itô过程 $dx_t\,\,=\,\,\hat{\mu}\left( x_t,t \right) dt+\sigma \left( x_t,t \right) d\bar{w}_t
\\$, 上面式子随机项来自$\bar{w}_t$, 在一个极短时间$t+\varDelta t$内令$x=f(\bar{w}_t)$并有$f'(\bar{w}_t)=\sigma \left( x_t ,t \right)$,
对它进行积分可以得到:
对上面的积分再次微分可以得到:
其中,$\bar{\mu}\left( x_t,t \right) =\mu \left( x_t,t \right) -\frac{\partial}{\partial x_t}\sigma ^2\left( x_t,t \right) -\sigma ^2\left( x_t,t \right) \frac{\partial}{\partial x_t}\left[ \log p\left( x_t,t \right) \right] $ 因此我们就得到了时间反演的 Itô 过程。它的噪声项独立于未来状态,因为反向过程加入的噪声是加在“下一个时刻”然后得到“当前时刻”的,和正向加噪过程刚好反过来,因此依赖条件也要反过来。 漂移项中有一项含时间的分数项$\frac{\partial}{\partial x_t}\left[ \log p\left( x_t,t \right) \right]$,只要求出它,即可以通过上述反向过程来采样从终点分布回到初始分布了 (例如从高斯分布回到数据分布)。分数项求解不再赘述,具体求解方式参考论文 SCORE-BASED GENERATIVE MODELING THROUGH STOCHASTIC DIFFERENTIAL EQUATIONS。
Stratonovich积分
反向Itô积分
三种积分的关系
2.Itô过程
2.1 定义
2.2 Itô引理
3.Kolmogorov 方程
3.1 反向 Kolmogorov 方程修正证明
证明过程
3.2 前向Kolmogorov方程
4.郎之万方程
5.时间反演的Itô过程

说些什么吧!