前言

MIT6.S184: Generative AI with Stochastic Differential Equations 最新 2026 年课程笔记 An Introduction to Flow Matching and Diffusion Models 翻译,本篇文章翻译附录 A、B、C 相关内容🤗。

Course Noteshttps://diffusion.csail.mit.edu/2026/docs/lecture_notes.pdf

Course Websitehttps://diffusion.csail.mit.edu/2026/index.html

A. A Reminder on Probability Theory

我们简要回顾概率论中的一些基本概念。本节部分内容取自 [26]

A.1 Random vectors

考虑 d d d 维欧氏空间中的数据 x = ( x 1 , … , x d ) ∈ R d x=(x^1,\ldots,x^d)\in\mathbb{R}^d x=(x1,,xd)Rd ,其标准欧氏内积定义为 ⟨ x , y ⟩ = ∑ i = 1 d x i y i \langle x,y\rangle = \sum_{i=1}^{d}x^iy^i x,y=i=1dxiyi ,范数定义为 ∥ x ∥ = ⟨ x , x ⟩ \|x\| = \sqrt{\langle x,x\rangle} x=x,x

我们考虑连续随机变量(RVs) X ∈ R d X\in\mathbb{R}^d XRd ,其概率密度函数(PDF)定义为连续函数 p X : R d → R ≥ 0 p_X:\mathbb{R}^d\to\mathbb{R}_{\ge0} pX:RdR0 使得事件 A A A 的概率为:

P ( X ∈ A ) = ∫ A p X ( x )   d x , (96) \mathbb{P}(X\in A) = \int_A p_X(x)\,dx, \tag{96} P(XA)=ApX(x)dx,(96)

其中 ∫ p X ( x )   d x = 1 \int p_X(x)\,dx = 1 pX(x)dx=1 。按照惯例,当积分覆盖整个空间时,我们省略积分区间(即 ∫ = ∫ R d \int=\int_{\mathbb{R}^d} =Rd)。为了简化记号,我们将随机变量 X t X_t Xt 对应的 PDF p X t p_{X_t} pXt 简单记作 p t p_t pt 。我们使用 X ∼ p X\sim p Xp 或者 X ∼ p ( X ) X\sim p(X) Xp(X) 表示随机变量 X X X 服从分布 p p p

生成建模中一个常见的 PDF 是 d d d 维各向同性高斯分布:

N ( x ; μ , σ 2 I ) = ( 2 π σ 2 ) − d / 2 exp ⁡ ( − ∥ x − μ ∥ 2 2 2 σ 2 ) , (97) \mathcal{N}(x;\mu,\sigma^2 I) = (2\pi\sigma^2)^{-d/2} \exp\left( -\frac{\|x-\mu\|_2^2}{2\sigma^2} \right), \tag{97} N(x;μ,σ2I)=(2πσ2)d/2exp(2σ2xμ22),(97)

其中, μ ∈ R d \mu\in\mathbb{R}^d μRd 以及 σ ∈ R > 0 \sigma\in\mathbb{R}_{>0} σR>0 分别表示分布的均值与标准差。

随机变量(RV)的期望是在最小二乘意义下最接近 X X X 的常数向量:

E [ X ] = arg ⁡ min ⁡ z ∈ R d ∫ ∥ x − z ∥ 2 p X ( x )   d x = ∫ x p X ( x )   d x . (98) \mathbb{E}[X] = \arg\min_{z\in\mathbb{R}^d} \int \|x-z\|^2 p_X(x)\,dx = \int x p_X(x)\,dx. \tag{98} E[X]=argzRdminxz2pX(x)dx=xpX(x)dx.(98)

计算随机变量函数期望的一个有用工具是 law of the unconscious statistician

E [ f ( X ) ] = ∫ f ( x ) p X ( x )   d x . (99) \mathbb{E}[f(X)] = \int f(x)p_X(x)\,dx. \tag{99} E[f(X)]=f(x)pX(x)dx.(99)

必要时,我们会将期望中的随机变量显式写为 E X f ( X ) \mathbb{E}_X f(X) EXf(X)

A.2 Conditional densities and expectations

给定两个随机变量 X , Y ∈ R d X,Y\in\mathbb{R}^d X,YRd ,它们的联合 PDF p X , Y ( x , y ) p_{X,Y}(x,y) pX,Y(x,y) 具有如下边缘分布:

∫ p X , Y ( x , y )   d y = p X ( x ) and ∫ p X , Y ( x , y )   d x = p Y ( y ) . (100) \int p_{X,Y}(x,y)\,dy = p_X(x) \quad \text{and} \quad \int p_{X,Y}(x,y)\,dx = p_Y(y). \tag{100} pX,Y(x,y)dy=pX(x)andpX,Y(x,y)dx=pY(y).(100)

Figure 21 展示了 R \mathbb{R} R 中( d = 1 d=1 d=1)两个随机变量联合 PDF 的示意图。

条件 PDF p X ∣ Y p_{X|Y} pXY 描述了在事件 Y = y Y=y Y=y 条件下随机变量 X X X 的 PDF,其中要求 p Y ( y ) > 0 p_Y(y)>0 pY(y)>0 。其定义为:

p X ∣ Y ( x ∣ y ) : = p X , Y ( x , y ) p Y ( y ) , (101) p_{X|Y}(x|y) := \frac{p_{X,Y}(x,y)}{p_Y(y)}, \tag{101} pXY(xy):=pY(y)pX,Y(x,y),(101)

类似地,也可以定义条件 PDF p Y ∣ X p_{Y|X} pYX 。贝叶斯公式将 p Y ∣ X p_{Y|X} pYX p X ∣ Y p_{X|Y} pXY 联系起来:

p Y ∣ X ( y ∣ x ) = p X ∣ Y ( x ∣ y ) p Y ( y ) p X ( x ) , (102) p_{Y|X}(y|x) = \frac{p_{X|Y}(x|y)p_Y(y)}{p_X(x)}, \tag{102} pYX(yx)=pX(x)pXY(xy)pY(y),(102)

其中要求 p X ( x ) > 0 p_X(x)>0 pX(x)>0

条件期望 E [ X ∣ Y ] \mathbb{E}[X|Y] E[XY] 是在最小二乘意义下,对 X X X 的最佳逼近函数 g ∗ ( Y ) g_*(Y) g(Y) 即:

g ∗ : = arg ⁡ min ⁡ g : R d → R d E [ ∥ X − g ( Y ) ∥ 2 ] = arg ⁡ min ⁡ g : R d → R d ∫ ∥ x − g ( y ) ∥ 2 p X , Y ( x , y )   d x d y = arg ⁡ min ⁡ g : R d → R d ∫ [ ∫ ∥ x − g ( y ) ∥ 2 p X ∣ Y ( x ∣ y )   d x ] p Y ( y )   d y . (103) \begin{aligned} g_* := &\arg\min_{g:\mathbb{R}^d\to\mathbb{R}^d} \mathbb{E} \left[ \|X-g(Y)\|^2 \right] = \arg\min_{g:\mathbb{R}^d\to\mathbb{R}^d} \int \|x-g(y)\|^2 p_{X,Y}(x,y)\,dxdy \\[8pt] = &\arg\min_{g:\mathbb{R}^d\to\mathbb{R}^d} \int \left[ \int \|x-g(y)\|^2 p_{X|Y}(x|y)\,dx \right] p_Y(y)\,dy. \tag{103} \end{aligned} g:==argg:RdRdminE[Xg(Y)2]=argg:RdRdminxg(y)2pX,Y(x,y)dxdyargg:RdRdmin[xg(y)2pXY(xy)dx]pY(y)dy.(103)

因此,对于满足 p Y ( y ) > 0 p_Y(y)>0 pY(y)>0 y ∈ R d y\in\mathbb{R}^d yRd ,条件期望函数为:

E [ X ∣ Y = y ] : = g ∗ ( y ) = ∫ x p X ∣ Y ( x ∣ y )   d x , (104) \mathbb{E}[X|Y=y] := g_*(y) = \int x p_{X|Y}(x|y)\,dx, \tag{104} E[XY=y]:=g(y)=xpXY(xy)dx,(104)

其中第二个等号来自于对 公式 (103) 中的内部括号在 Y = y Y=y Y=y 时取最小值,这与 公式 (98) 类似。将 g ∗ g_* g与随机变量 Y Y Y 组合,得到:

E [ X ∣ Y ] : = g ∗ ( Y ) , (105) \mathbb{E}[X|Y] := g_*(Y), \tag{105} E[XY]:=g(Y),(105)

它本身是一个 R d \mathbb{R}^d Rd 中的随机变量。容易混淆的是 E [ X ∣ Y = y ] \mathbb{E}[X|Y=y] E[XY=y] 以及 E [ X ∣ Y ] \mathbb{E}[X|Y] E[XY] 通常都会被称作条件期望,但它们实际上是不同对象。具体而言, E [ X ∣ Y = y ] \mathbb{E}[X|Y=y] E[XY=y] 是一个函数 R d → R d \mathbb{R}^d\to\mathbb{R}^d RdRd ,而 E [ X ∣ Y ] \mathbb{E}[X|Y] E[XY] 则是一个随机变量,其取值位于 R d \mathbb{R}^d Rd。为了避免混淆,后续讨论将采用这里引入的记号。

tower property 是一个非常有用的性质,它能够帮助我们简化涉及两个随机变量 X X X Y Y Y 的条件期望推导:

E [ E [ X ∣ Y ] ] = E [ X ] (106) \mathbb{E} \left[ \mathbb{E}[X|Y] \right] = \mathbb{E}[X] \tag{106} E[E[XY]]=E[X](106)

由于 E [ X ∣ Y ] \mathbb{E}[X|Y] E[XY] 本身是一个随机变量,即随机变量 Y Y Y 的函数,因此外层期望实际上是在计算 E [ X ∣ Y ] \mathbb{E}[X|Y] E[XY] 的期望值。利用前面的定义,可以验证 tower property:

E [ E [ X ∣ Y ] ] = ∫ ( ∫ x p X ∣ Y ( x ∣ y )   d x ) p Y ( y )   d y = ( 101 ) ∫ ∫ x p X , Y ( x , y )   d x d y = ( 100 ) ∫ x p X ( x )   d x = E [ X ] . \begin{align*} \mathbb{E} \left[ \mathbb{E}[X|Y] \right] &= \int \left( \int x p_{X|Y}(x|y)\,dx \right) p_Y(y)\,dy \\[8pt] &\overset{(101)}{=} \int \int x p_{X,Y}(x,y)\,dxdy \\[8pt] &\overset{(100)}{=} \int x p_X(x)\,dx = \mathbb{E}[X]. \end{align*} E[E[XY]]=(xpXY(xy)dx)pY(y)dy=(101)∫∫xpX,Y(x,y)dxdy=(100)xpX(x)dx=E[X].

最后,考虑一个涉及两个随机变量 f ( X , Y ) f(X,Y) f(X,Y) 以及 Y Y Y 的有用性质,其中 X X X Y Y Y 是任意随机变量。利用 Law of the Unconscious Statistician 以及 公式 (104),我们可以得到:

E [ f ( X , Y ) ∣ Y = y ] = ∫ f ( x , y ) p X ∣ Y ( x ∣ y )   d x . (107) \mathbb{E}[f(X,Y)|Y=y] = \int f(x,y)p_{X|Y}(x|y)\,dx. \tag{107} E[f(X,Y)Y=y]=f(x,y)pXY(xy)dx.(107)

B. A Proof of the Fokker-Planck equation

本节给出一个自包含的 Fokker-Planck equation 证明,其中连续性方程作为特殊情况包含在内(Theorem 11)。我们强调:本节内容并不是理解本文其余部分所必须的,并且在数学上更加高级。如果你希望理解 Fokker-Planck equation 是如何得到的,那么这一节适合你。


Theorem 41 (Fokker-Planck Equation)

p t p_t pt 为一个概率路径,满足 p 0 = p i n i t p_0=p_{\mathrm{init}} p0=pinit ,并考虑如下 SDE:

X 0 ∼ p i n i t , d X t = u t ( X t ) d t + σ t d W t . X_0\sim p_{\mathrm{init}}, \quad dX_t=u_t(X_t)dt+\sigma_t dW_t. X0pinit,dXt=ut(Xt)dt+σtdWt.

那么,对于所有 0 ≤ t ≤ 1 0\le t\le 1 0t1 ,随机变量 X t X_t Xt 具有分布 p t p_t pt 当且仅当 Fokker-Planck equation 成立:

∂ t p t ( x ) = − div ⁡ ( p t u t ) ( x ) + σ t 2 2 Δ p t ( x ) for all  x ∈ R d ,   0 ≤ t ≤ 1 , (108) \partial_t p_t(x) = -\operatorname{div}(p_tu_t)(x) + \frac{\sigma_t^2}{2}\Delta p_t(x) \qquad \text{for all } x\in\mathbb{R}^d,\ 0\le t\le1, \tag{108} tpt(x)=div(ptut)(x)+2σt2Δpt(x)for all xRd, 0t1,(108)


我们首先证明 Fokker-Planck equation 是一个必要条件,即如果 X t ∼ p t X_t\sim p_t Xtpt ,那么 Fokker-Planck equation 成立。证明的技巧是使用 test functions f f f ,即满足 f : R d → R f:\mathbb{R}^d\to\mathbb{R} f:RdR 且无限可微,并且只在有界区域内非零的函数。

我们将使用如下事实:对于任意可积函数 g 1 , g 2 : R d → R g_1,g_2:\mathbb{R}^d\to\mathbb{R} g1,g2:RdR ,成立:

g 1 ( x ) = g 2 ( x ) for all  x ∈ R d ⇔ ∫ f ( x ) g 1 ( x )   d x = ∫ f ( x ) g 2 ( x )   d x for all test functions  f (109) g_1(x)=g_2(x) \quad \text{for all } x\in\mathbb{R}^d \quad \Leftrightarrow \quad \int f(x)g_1(x)\,dx = \int f(x)g_2(x)\,dx \quad \text{for all test functions } f \tag{109} g1(x)=g2(x)for all xRdf(x)g1(x)dx=f(x)g2(x)dxfor all test functions f(109)

换句话说,我们可以把逐点相等表示成积分意义下的相等。test functions 的一个有用性质在于它们是平滑的,因此我们可以对它们求梯度以及更高阶导数。特别地,对于任意 test functions f 1 , f 2 f_1,f_2 f1,f2 ,我们可以使用 integration by parts

∫ f 1 ( x ) ∂ ∂ x i f 2 ( x )   d x = − ∫ f 2 ( x ) ∂ ∂ x i f 1 ( x )   d x (110) \int f_1(x) \frac{\partial}{\partial x_i} f_2(x)\,dx = - \int f_2(x) \frac{\partial}{\partial x_i} f_1(x)\,dx \tag{110} f1(x)xif2(x)dx=f2(x)xif1(x)dx(110)

其中要求 f 1 , f 2 , f 1 ⋅ f 2 f_1, \quad f_2, \quad f_1 \cdot f_2 f1,f2,f1f2 均可积。结合发散与拉普拉斯的定义(见 公式 (22)),我们得到如下恒等式:

∫ ∇ f 1 T ( x )   f 2 ( x )   d x = − ∫ f 1 ( x )   div ⁡ ( f 2 ) ( x )   d x ( f 1 : R d → R ,   f 2 : R d → R d ) ∫ f 1 ( x )   Δ f 2 ( x )   d x = ∫ f 2 ( x )   Δ f 1 ( x )   d x ( f 1 : R d → R ,   f 2 : R d → R ) \begin{align*} \int \nabla f_1^T(x)\,f_2(x)\,dx &= - \int f_1(x)\, \operatorname{div}(f_2)(x)\,dx \qquad (f_1:\mathbb{R}^d\to\mathbb{R}, \ f_2:\mathbb{R}^d\to\mathbb{R}^d) \tag{111} \\[8pt] \int f_1(x)\,\Delta f_2(x)\,dx &= \int f_2(x)\,\Delta f_1(x)\,dx \qquad (f_1:\mathbb{R}^d\to\mathbb{R}, \ f_2:\mathbb{R}^d\to\mathbb{R}) \tag{112} \end{align*} f1T(x)f2(x)dxf1(x)Δf2(x)dx=f1(x)div(f2)(x)dx(f1:RdR, f2:RdRd)=f2(x)Δf1(x)dx(f1:RdR, f2:RdR)(111)(112)

现在进入证明。我们使用 公式 (6) 中 SDE 轨迹的随机更新形式:

X t + h = X t + h u t ( X t ) + σ t ( W t + h − W t ) + h R t ( h ) ≈ X t + h u t ( X t ) + σ t ( W t + h − W t ) \begin{align*} X_{t+h} &= X_t + hu_t(X_t) + \sigma_t(W_{t+h}-W_t) + hR_t(h) \tag{113} \\[8pt] &\approx X_t + hu_t(X_t) + \sigma_t(W_{t+h}-W_t) \tag{114} \end{align*} Xt+h=Xt+hut(Xt)+σt(Wt+hWt)+hRt(h)Xt+hut(Xt)+σt(Wt+hWt)(113)(114)

其中,为了可读性,我们暂时忽略误差项 R t ( h ) R_t(h) Rt(h) ,因为最终我们会令 h → 0 h \to 0 h0 ,于是可以进行如下计算:

f ( X t + h ) − f ( X t ) = ( 114 ) f  ⁣ ( X t + h u t ( X t ) + σ t ( W t + h − W t ) ) − f ( X t ) = ( i ) ∇ f ( X t ) T ( h u t ( X t ) + σ t ( W t + h − W t ) ) + 1 2 ( h u t ( X t ) + σ t ( W t + h − W t ) ) T ∇ 2 f ( X t ) ( h u t ( X t ) + σ t ( W t + h − W t ) ) = ( i i ) h ∇ f ( X t ) T u t ( X t ) + σ t ∇ f ( X t ) T ( W t + h − W t ) + 1 2 h 2 u t ( X t ) T ∇ 2 f ( X t ) u t ( X t ) + h σ t u t ( X t ) T ∇ 2 f ( X t ) ( W t + h − W t ) + 1 2 σ t 2 ( W t + h − W t ) T ∇ 2 f ( X t ) ( W t + h − W t ) \begin{aligned} f(X_{t+h})-f(X_t) \overset{(114)}{=} &f\!\left( X_t + hu_t(X_t) + \sigma_t(W_{t+h}-W_t) \right) - f(X_t) \\[10pt] \overset{(i)}{=} &\nabla f(X_t)^T \left( hu_t(X_t) + \sigma_t(W_{t+h}-W_t) \right) \\ &+ \frac{1}{2} \left( hu_t(X_t) + \sigma_t(W_{t+h}-W_t) \right)^T \nabla^2 f(X_t) \left( hu_t(X_t) + \sigma_t(W_{t+h}-W_t) \right) \\[10pt] \overset{(ii)}{=} &h\nabla f(X_t)^Tu_t(X_t) + \sigma_t\nabla f(X_t)^T(W_{t+h}-W_t) \\ &+ \frac{1}{2}h^2 u_t(X_t)^T \nabla^2 f(X_t) u_t(X_t) + h\sigma_t u_t(X_t)^T \nabla^2 f(X_t) (W_{t+h}-W_t) \\ &+ \frac{1}{2}\sigma_t^2 (W_{t+h}-W_t)^T \nabla^2 f(X_t) (W_{t+h}-W_t) \end{aligned} f(Xt+h)f(Xt)=(114)=(i)=(ii)f(Xt+hut(Xt)+σt(Wt+hWt))f(Xt)f(Xt)T(hut(Xt)+σt(Wt+hWt))+21(hut(Xt)+σt(Wt+hWt))T2f(Xt)(hut(Xt)+σt(Wt+hWt))hf(Xt)Tut(Xt)+σtf(Xt)T(Wt+hWt)+21h2ut(Xt)T2f(Xt)ut(Xt)+hσtut(Xt)T2f(Xt)(Wt+hWt)+21σt2(Wt+hWt)T2f(Xt)(Wt+hWt)

其中:

  • ( i ) (i) (i) 中,我们对 f f f X t X_t Xt 附近使用了二阶泰勒近似;
  • ( i i ) (ii) (ii) 中,我们使用了 Hessian ∇ 2 f \nabla^2 f 2f 是对称矩阵这一事实。

注意 E [ W t + h − W t ∣ X t ] = 0 \mathbb{E}[W_{t+h}-W_t|X_t]=0 E[Wt+hWtXt]=0 ,并且 W t + h − W t ∣ X t ∼ N ( 0 , h I d ) W_{t+h}-W_t|X_t \sim \mathcal{N}(0,hI_d) Wt+hWtXtN(0,hId) 。因此:

E [ f ( X t + h ) − f ( X t ) ∣ X t ] = h ∇ f ( X t ) T u t ( X t ) + 1 2 h 2 u t ( X t ) T ∇ 2 f ( X t ) u t ( X t ) + h 2 σ t 2 E ϵ t ∼ N ( 0 , I d ) [ ϵ t T ∇ 2 f ( X t ) ϵ t ] = ( i ) h ∇ f ( X t ) T u t ( X t ) + 1 2 h 2 u t ( X t ) T ∇ 2 f ( X t ) u t ( X t ) + h 2 σ t 2 trace ⁡ ( ∇ 2 f ( X t ) ) = ( i i ) h ∇ f ( X t ) T u t ( X t ) + 1 2 h 2 u t ( X t ) T ∇ 2 f ( X t ) u t ( X t ) + h 2 σ t 2 Δ f ( X t ) . \begin{align*} &\mathbb{E} \left[ f(X_{t+h})-f(X_t)|X_t \right] \\[8pt] = &h\nabla f(X_t)^T u_t(X_t) + \frac12 h^2 u_t(X_t)^T\nabla^2 f(X_t)u_t(X_t) + \frac h2\sigma_t^2 \mathbb{E}_{\epsilon_t\sim\mathcal{N}(0,I_d)} \left[ \epsilon_t^T\nabla^2 f(X_t)\epsilon_t \right] \\[8pt] \overset{(i)}{=} &h\nabla f(X_t)^T u_t(X_t) + \frac12 h^2 u_t(X_t)^T\nabla^2 f(X_t)u_t(X_t) + \frac h2\sigma_t^2 \operatorname{trace}(\nabla^2 f(X_t)) \\[8pt] \overset{(ii)}{=} &h\nabla f(X_t)^T u_t(X_t) + \frac12 h^2 u_t(X_t)^T\nabla^2 f(X_t)u_t(X_t) + \frac h2\sigma_t^2\Delta f(X_t). \end{align*} ==(i)=(ii)E[f(Xt+h)f(Xt)Xt]hf(Xt)Tut(Xt)+21h2ut(Xt)T2f(Xt)ut(Xt)+2hσt2EϵtN(0,Id)[ϵtT2f(Xt)ϵt]hf(Xt)Tut(Xt)+21h2ut(Xt)T2f(Xt)ut(Xt)+2hσt2trace(2f(Xt))hf(Xt)Tut(Xt)+21h2ut(Xt)T2f(Xt)ut(Xt)+2hσt2Δf(Xt).

其中,在 ( i ) (i) (i) 中,我们使用了事实 E ϵ t ∼ N ( 0 , I d ) [ ϵ t T A ϵ t ] = trace ⁡ ( A ) \mathbb{E}_{\epsilon_t\sim\mathcal{N}(0,I_d)} \left[ \epsilon_t^T A\epsilon_t \right] = \operatorname{trace}(A) EϵtN(0,Id)[ϵtTAϵt]=trace(A) ;在 ( i i ) (ii) (ii) 中,我们使用了 Laplacian 与 Hessian matrix 的定义。由此得到:

∂ t E [ f ( X t ) ] = lim ⁡ h → 0 1 h E [ f ( X t + h ) − f ( X t ) ] = lim ⁡ h → 0 1 h E [ E [ f ( X t + h ) − f ( X t ) ∣ X t ] ] = E [ lim ⁡ h → 0 1 h ( h ∇ f ( X t ) T u t ( X t ) + 1 2 h 2 u t ( X t ) T ∇ 2 f ( X t ) u t ( X t ) + h 2 σ t 2 Δ f ( X t ) ) ] = E [ ∇ f ( X t ) T u t ( X t ) + 1 2 σ t 2 Δ f ( X t ) ] = ( i ) ∫ ∇ f ( x ) T u t ( x ) p t ( x )   d x + ∫ 1 2 σ t 2 Δ f ( x ) p t ( x )   d x = ( i i ) − ∫ f ( x ) div ⁡ ( u t p t ) ( x )   d x + ∫ 1 2 σ t 2 f ( x ) Δ p t ( x )   d x = ∫ f ( x ) ( − div ⁡ ( u t p t ) ( x ) + 1 2 σ t 2 Δ p t ( x ) ) d x \begin{align*} &\partial_t\mathbb{E}[f(X_t)] \\[8pt] =& \lim_{h\to0} \frac1h \mathbb{E} \left[ f(X_{t+h})-f(X_t) \right] \\[8pt] =& \lim_{h\to0} \frac1h \mathbb{E} \left[ \mathbb{E} \left[ f(X_{t+h})-f(X_t)\mid X_t \right] \right] \\[8pt] =& \mathbb{E} \left[ \lim_{h\to0} \frac1h \left( h\nabla f(X_t)^T u_t(X_t) + \frac12h^2u_t(X_t)^T\nabla^2f(X_t)u_t(X_t) + \frac h2\sigma_t^2\Delta f(X_t) \right) \right] \\[8pt] =& \mathbb{E} \left[ \nabla f(X_t)^T u_t(X_t) + \frac12\sigma_t^2\Delta f(X_t) \right] \\[8pt] \overset{(i)}{=} & \int \nabla f(x)^T u_t(x)p_t(x)\,dx + \int \frac12\sigma_t^2\Delta f(x)p_t(x)\,dx \\[8pt] \overset{(ii)}{=} & - \int f(x)\operatorname{div}(u_tp_t)(x)\,dx + \int \frac12\sigma_t^2 f(x)\Delta p_t(x)\,dx \\[8pt] =& \int f(x) \left( -\operatorname{div}(u_tp_t)(x) + \frac12\sigma_t^2\Delta p_t(x) \right) dx \end{align*} =====(i)=(ii)=tE[f(Xt)]h0limh1E[f(Xt+h)f(Xt)]h0limh1E[E[f(Xt+h)f(Xt)Xt]]E[h0limh1(hf(Xt)Tut(Xt)+21h2ut(Xt)T2f(Xt)ut(Xt)+2hσt2Δf(Xt))]E[f(Xt)Tut(Xt)+21σt2Δf(Xt)]f(x)Tut(x)pt(x)dx+21σt2Δf(x)pt(x)dxf(x)div(utpt)(x)dx+21σt2f(x)Δpt(x)dxf(x)(div(utpt)(x)+21σt2Δpt(x))dx

其中,在 ( i ) (i) (i) 中,我们使用了假设 p t p_t pt X t X_t Xt 的分布;在 ( i i ) (ii) (ii) 中,我们使用了 公式 (111)公式 (112)。注意,为了使用这一点,我们要求乘积 p t ( x ) u t ( x ) p_t(x)u_t(x) pt(x)ut(x) 可积,即:

∫ p t ( x ) ∥ u t ( x ) ∥   d x < ∞ \int p_t(x)\|u_t(x)\|\,dx<\infty pt(x)ut(x)dx<

注意,这个条件在机器学习中几乎总是成立(由于数值精度限制,数据与函数都是有界的)。因此有:

∂ t E [ f ( X t ) ] = ∫ f ( x ) ( − div ⁡ ( p t u t ) ( x ) + σ t 2 2 Δ p t ( x ) )   d x ( for all  f  and  0 ≤ t ≤ 1 ) ⇔ ( i ) ∂ t ∫ f ( x ) p t ( x )   d x = ∫ f ( x ) ( − div ⁡ ( p t u t ) ( x ) + σ t 2 2 Δ p t ( x ) )   d x ( for all  f  and  0 ≤ t ≤ 1 ) ⇔ ( i i ) ∫ f ( x )   ∂ t p t ( x )   d x = ∫ f ( x ) ( − div ⁡ ( p t u t ) ( x ) + σ t 2 2 Δ p t ( x ) )   d x ( for all  f  and  0 ≤ t ≤ 1 ) ⇔ ( i i i ) ∂ t p t ( x ) = − div ⁡ ( p t u t ) ( x ) + σ t 2 2 Δ p t ( x ) ( for all  x ∈ R d ,   0 ≤ t ≤ 1 ) \begin{align*} \partial_t\mathbb{E}[f(X_t)] &= \int f(x) \left( -\operatorname{div}(p_tu_t)(x) + \frac{\sigma_t^2}{2}\Delta p_t(x) \right)\,dx \qquad (\text{for all } f \text{ and } 0\le t\le1) \tag{115} \\[16pt] \overset{(i)}{\Leftrightarrow}\qquad \partial_t \int f(x)p_t(x)\,dx &= \int f(x) \left( -\operatorname{div}(p_tu_t)(x) + \frac{\sigma_t^2}{2}\Delta p_t(x) \right)\,dx \qquad (\text{for all } f \text{ and } 0\le t\le1) \tag{116} \\[16pt] \overset{(ii)}{\Leftrightarrow}\qquad \int f(x)\,\partial_t p_t(x)\,dx &= \int f(x) \left( -\operatorname{div}(p_tu_t)(x) + \frac{\sigma_t^2}{2}\Delta p_t(x) \right)\,dx \qquad (\text{for all } f \text{ and } 0\le t\le1) \tag{117} \\[16pt] \overset{(iii)}{\Leftrightarrow}\qquad \partial_t p_t(x) &= -\operatorname{div}(p_tu_t)(x) + \frac{\sigma_t^2}{2}\Delta p_t(x) \qquad (\text{for all } x\in\mathbb{R}^d,\ 0\le t\le1) \tag{118} \end{align*} tE[f(Xt)](i)tf(x)pt(x)dx(ii)f(x)tpt(x)dx(iii)tpt(x)=f(x)(div(ptut)(x)+2σt2Δpt(x))dx(for all f and 0t1)=f(x)(div(ptut)(x)+2σt2Δpt(x))dx(for all f and 0t1)=f(x)(div(ptut)(x)+2σt2Δpt(x))dx(for all f and 0t1)=div(ptut)(x)+2σt2Δpt(x)(for all xRd, 0t1)(115)(116)(117)(118)

其中:

  • ( i ) (i) (i) 中,我们使用了假设 X t ∼ p t X_t\sim p_t Xtpt
  • ( i i ) (ii) (ii) 中,我们交换了导数与积分;
  • ( i i i ) (iii) (iii) 中,我们使用了 公式 (109)

这就完成了 Fokker-Planck equation 是必要条件的证明。

最后,我们解释为什么它也是充分条件。Fokker-Planck equation 是一个偏微分方程(partial differential equation, PDE)。更具体地说,它是所谓的抛物线型偏微分方程。与 Theorem 3 类似,在给定初始条件的情况下,这类微分方程具有唯一解(例如见 [[15], Chapter 7])。

现在,如果 公式 (108) p t p_t pt 成立,我们刚刚在上面已经证明:它也必须对 X t X_t Xt 的真实分布 q t q_t qt 成立(即 X t ∼ q t X_t\sim q_t Xtqt)。换句话说, p t p_t pt q t q_t qt 都是该抛物线型偏微分方程的解。

进一步地,我们知道二者的初始条件相同,即 p 0 = q 0 = p i n i t p_0=q_0=p_{\mathrm{init}} p0=q0=pinit ,这是由插值概率路径的构造得到的。因此,根据该微分方程解的唯一性,我们知道 p t = q t   for all  0 ≤ t ≤ 1 p_t=q_t \, \text{for all }0\le t \le 1 pt=qtfor all 0t1 。这意味着 X t ∼ q t = p t X_t\sim q_t=p_t Xtqt=pt ,这正是我们想要证明的结论。

C. Existence and Uniqueness of Continuous-time Markov chains

本节中,我们来证明 Theorem 33

Proof. Uniqueness: 我们需要证明满足 公式 (87) 的 transition kernel p t ′ ∣ t ( X t ′ = y ∣ X t = x ) p_{t'|t}(X_{t'}=y|X_t=x) ptt(Xt=yXt=x) 只能有一个。作为第一步,我们注意到 公式 (87) 意味着:

d d t ′ p t ′ ∣ t ( X t ′ = y ∣ X t = x ) = d d h p t ′ + h ∣ t ( X t ′ + h = y ∣ X t = x ) ∣ h = 0 = d d h [ ∑ z ∈ S p t ′ + h ∣ t ′ ( X t ′ + h = y ∣ X t ′ = z ) p t ′ ∣ t ( X t ′ = z ∣ X t = x ) ] ∣ h = 0 = ∑ z ∈ S Q t ′ ( y ∣ z ) p t ′ ∣ t ( X t ′ = z ∣ X t = x ) . \begin{align*} &\frac{d}{dt'} p_{t'|t}(X_{t'}=y|X_t=x) \tag{119} \\[8pt] =& \left. \frac{d}{dh} p_{t'+h|t}(X_{t'+h}=y|X_t=x) \right|_{h=0} \tag{120} \\[8pt] =& \left. \frac{d}{dh} \left[ \sum_{z\in S} p_{t'+h|t'}(X_{t'+h}=y|X_{t'}=z) p_{t'|t}(X_{t'}=z|X_t=x) \right] \right|_{h=0} \tag{121} \\[8pt] =& \sum_{z\in S} Q_{t'}(y|z) p_{t'|t}(X_{t'}=z|X_t=x). \tag{122} \end{align*} ===dtdptt(Xt=yXt=x)dhdpt+ht(Xt+h=yXt=x) h=0dhd[zSpt+ht(Xt+h=yXt=z)ptt(Xt=zXt=x)] h=0zSQt(yz)ptt(Xt=zXt=x).(119)(120)(121)(122)

对于固定的 x , t x,t x,t ,我们可以将 t ′ ↦ p t ′ ∣ t ( X t ′ = y ∣ X t = x ) t'\mapsto p_{t'|t}(X_{t'}=y|X_t=x) tptt(Xt=yXt=x) 看作一个向量值函数,而上式就是该函数的一个线性常微分方程(事实上就是 Kolmogorov forward equation,见 Proposition 2),并且具有已知初始条件 p t ∣ t ( X t = y ∣ X t = x ) = δ y ( x ) p_{t|t}(X_t=y|X_t=x)=\delta_y(x) ptt(Xt=yXt=x)=δy(x) 。正如我们所知,每个线性常微分方程都有唯一解(见 Theorem 3),因此 p t ′ ∣ t ( X t ′ = y ∣ X t = x ) p_{t'|t}(X_{t'}=y|X_t=x) ptt(Xt=yXt=x) 也必须是唯一的。

Existence: 反过来,任何线性常微分方程都有解。也就是说,我们知道对于任意 x , t x,t x,t 都存在 p t ′ ∣ t ( X t ′ = y ∣ X t = x ) p_{t'|t}(X_{t'}=y|X_t=x) ptt(Xt=yXt=x) 满足:

p t ∣ t ( X t = y ∣ X t = x ) = δ y ( x ) d d t ′ p t ′ ∣ t ( X t ′ = y ∣ X t = x ) = ∑ z ∈ S Q t ′ ( y ∣ z ) p t ′ ∣ t ( X t ′ = z ∣ X t = x ) \begin{align*} p_{t|t}(X_t=y|X_t=x)&=\delta_y(x) \tag{123} \\[8pt] \frac{d}{dt'} p_{t'|t}(X_{t'}=y|X_t=x) &= \sum_{z\in S} Q_{t'}(y|z) p_{t'|t}(X_{t'}=z|X_t=x) \tag{124} \end{align*} ptt(Xt=yXt=x)dtdptt(Xt=yXt=x)=δy(x)=zSQt(yz)ptt(Xt=zXt=x)(123)(124)

对于 t ′ = t t'=t t=t ,这尤其意味着 公式 (87)

接下来,我们需要证明在这种情况下 p t ′ ∣ t ( X t ′ = y ∣ X t = x ) p_{t'|t}(X_{t'}=y|X_t=x) ptt(Xt=yXt=x) 确实是一个合法的 transition kernel。也就是说,下面 3 个性质必须成立:

∑ y ∈ S p t ′ ∣ t ( X t ′ = y ∣ X t = x ) = 1 p t ′ ∣ t ( X t ′ = y ∣ X t = x ) ≥ 0 ∑ z ∈ S p t 2 ∣ t 1 ( X t 2 = y ∣ X t 1 = z ) p t 1 ∣ t 0 ( X t 1 = z ∣ X t 0 = x ) = p t 2 ∣ t 0 ( y ∣ x ) \begin{align*} \sum_{y\in S} p_{t'|t}(X_{t'}=y|X_t=x) &=1 \tag{125} \\[8pt] p_{t'|t}(X_{t'}=y|X_t=x) & \ge 0 \tag{126} \\[8pt] \sum_{z\in S} p_{t_2|t_1}(X_{t_2}=y|X_{t_1}=z) p_{t_1|t_0}(X_{t_1}=z|X_{t_0}=x) &= p_{t_2|t_0}(y|x) \tag{127} \end{align*} ySptt(Xt=yXt=x)ptt(Xt=yXt=x)zSpt2t1(Xt2=yXt1=z)pt1t0(Xt1=zXt0=x)=10=pt2t0(yx)(125)(126)(127)

对于第一个性质,我们可以观察到它在 t ′ = t t'=t t=t 时由 公式 (123) 成立,并且:

d d t ′ ∑ y ∈ S p t ′ ∣ t ( X t ′ = y ∣ X t = x ) = ∑ y ∈ S d d t ′ p t ′ ∣ t ( X t ′ = y ∣ X t = x ) = ∑ z ∈ S [ ∑ y ∈ S Q t ′ ( y ∣ z ) ] p t ′ ∣ t ( X t ′ = z ∣ X t = x ) = 0. \begin{align*} &\frac{d}{dt'} \sum_{y\in S} p_{t'|t}(X_{t'}=y|X_t=x) \tag{128} \\[8pt] =& \sum_{y\in S} \frac{d}{dt'} p_{t'|t}(X_{t'}=y|X_t=x) \tag{129} \\[8pt] =& \sum_{z\in S} \left[ \sum_{y\in S} Q_{t'}(y|z) \right] p_{t'|t}(X_{t'}=z|X_t=x) \tag{130} \\[8pt] =&0. \tag{131} \end{align*} ===dtdySptt(Xt=yXt=x)ySdtdptt(Xt=yXt=x)zS ySQt(yz) ptt(Xt=zXt=x)0.(128)(129)(130)(131)

其中,我们使用了 rate matrix 的每一列求和为 0。

为了证明第二个性质,注意它在时间 t ′ = t t'=t t=t 时成立。进一步地,只要 p t ′ ∣ t ( X t ′ = y ∣ X t = x ) = 0 p_{t'|t}(X_{t'}=y|X_t=x)=0 ptt(Xt=yXt=x)=0 就必须有:

d d t ′ p t ′ ∣ t ( X t ′ = y ∣ X t = x ) = ∑ z ≠ y Q t ′ ( y ∣ z ) ⏟ ≥ 0 p t ′ ∣ t ( X t ′ = z ∣ X t = x ) ≥ 0 \begin{aligned} \frac{d}{dt'}p_{t'\mid t}(X_{t'}=y\mid X_t=x) &= \sum_{z\ne y} \underbrace{Q_{t'}(y\mid z)}_{\ge 0} p_{t'\mid t}(X_{t'}=z\mid X_t=x) \\[12pt] &\ge 0 \end{aligned} dtdptt(Xt=yXt=x)=z=y0 Qt(yz)ptt(Xt=zXt=x)0

因此,当 p t ′ ∣ t ( X t ′ = y ∣ X t = x ) = 0 p_{t'|t}(X_{t'}=y|X_t=x)=0 ptt(Xt=yXt=x)=0 时,它只能增加。所以 p t ′ ∣ t ( X t ′ = y ∣ X t = x ) p_{t'|t}(X_{t'}=y|X_t=x) ptt(Xt=yXt=x) 永远不会变成负数。

为了证明第三个性质,定义 q t 2 ∣ t 0 ( y ∣ x ) q_{t_2|t_0}(y|x) qt2t0(yx) 为:

q t 2 ∣ t 0 ( y ∣ x ) = ∑ z ∈ S p t 2 ∣ t 1 ( X t 2 = y ∣ X t 1 = z ) p t 1 ∣ t 0 ( X t 1 = z ∣ X t 0 = x ) q_{t_2|t_0}(y|x) = \sum_{z\in S} p_{t_2|t_1}(X_{t_2}=y|X_{t_1}=z) p_{t_1|t_0}(X_{t_1}=z|X_{t_0}=x) qt2t0(yx)=zSpt2t1(Xt2=yXt1=z)pt1t0(Xt1=zXt0=x)

那么我们知道:

q t 2 = t 1 ∣ t 0 ( y ∣ x ) = ∑ z ∈ S δ y ( z ) p t 1 ∣ t 0 ( X t 1 = z ∣ X t 0 = x ) = p t 1 ∣ t 0 ( X t 1 = y ∣ X t 0 = x ) q_{t_2=t_1|t_0}(y|x) = \sum_{z\in S} \delta_y(z) p_{t_1|t_0}(X_{t_1}=z|X_{t_0}=x) = p_{t_1|t_0}(X_{t_1}=y|X_{t_0}=x) qt2=t1t0(yx)=zSδy(z)pt1t0(Xt1=zXt0=x)=pt1t0(Xt1=yXt0=x)

并且:

d d t 2 q t 2 ∣ t 0 ( y ∣ x ) = ∑ z ∈ S d d t 2 p t 2 ∣ t 1 ( X t 2 = y ∣ X t 1 = z ) p t 1 ∣ t 0 ( X t 1 = z ∣ X t 0 = x ) = ∑ z ∈ S ∑ z ~ ∈ S Q t 2 ( y ∣ z ~ ) p t 2 ∣ t 1 ( X t 2 = z ~ ∣ X t 1 = z ) p t 1 ∣ t 0 ( X t 1 = z ∣ X t 0 = x ) = ∑ z ~ ∈ S Q t 2 ( y ∣ z ~ ) [ ∑ z ∈ S p t 2 ∣ t 1 ( X t 2 = z ~ ∣ X t 1 = z ) p t 1 ∣ t 0 ( X t 1 = z ∣ X t 0 = x ) ] = ∑ z ~ ∈ S Q t 2 ( y ∣ z ~ ) q t 2 ∣ t 0 ( z ~ ∣ x ) \begin{align*} \frac{d}{dt_2} q_{t_2|t_0}(y|x) &= \sum_{z\in S} \frac{d}{dt_2} p_{t_2|t_1}(X_{t_2}=y|X_{t_1}=z) p_{t_1|t_0}(X_{t_1}=z|X_{t_0}=x) \\[8pt] &= \sum_{z\in S} \sum_{\tilde z\in S} Q_{t_2}(y|\tilde z) p_{t_2|t_1}(X_{t_2}=\tilde z|X_{t_1}=z) p_{t_1|t_0}(X_{t_1}=z|X_{t_0}=x) \\[8pt] &= \sum_{\tilde z\in S} Q_{t_2}(y|\tilde z) \left[ \sum_{z\in S} p_{t_2|t_1}(X_{t_2}=\tilde z|X_{t_1}=z) p_{t_1|t_0}(X_{t_1}=z|X_{t_0}=x) \right] \\[8pt] &= \sum_{\tilde z\in S} Q_{t_2}(y|\tilde z) q_{t_2|t_0}(\tilde z|x) \end{align*} dt2dqt2t0(yx)=zSdt2dpt2t1(Xt2=yXt1=z)pt1t0(Xt1=zXt0=x)=zSz~SQt2(yz~)pt2t1(Xt2=z~Xt1=z)pt1t0(Xt1=zXt0=x)=z~SQt2(yz~)[zSpt2t1(Xt2=z~Xt1=z)pt1t0(Xt1=zXt0=x)]=z~SQt2(yz~)qt2t0(z~x)

这说明 p t 2 ∣ t 0 ( z ∣ x ) p_{t_2|t_0}(z|x) pt2t0(zx) q t 2 ∣ t 0 ( z ∣ x ) q_{t_2|t_0}(z|x) qt2t0(zx) 满足相同的常微分方程。因此,必须有:

∑ z ∈ S p t 2 ∣ t 1 ( X t 2 = y ∣ X t 1 = z ) p t 1 ∣ t 0 ( X t 1 = z ∣ X t 0 = x ) = q t 2 ∣ t 0 ( y ∣ x ) = p t 2 ∣ t 0 ( y ∣ x ) \sum_{z\in S} p_{t_2|t_1}(X_{t_2}=y|X_{t_1}=z) p_{t_1|t_0}(X_{t_1}=z|X_{t_0}=x) = q_{t_2|t_0}(y|x) = p_{t_2|t_0}(y|x) zSpt2t1(Xt2=yXt1=z)pt1t0(Xt1=zXt0=x)=qt2t0(yx)=pt2t0(yx)

这就证明了第三个性质。

因此 p t ′ ∣ t ( y ∣ x ) p_{t'|t}(y|x) ptt(yx) 确实是满足 公式 (87) 的 transition kernel。证明完成。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐