前置

1. 分数学习目标

设 是前向扩散在时刻 的边缘密度,分数为

训练网络 的理想加权 Fisher divergence 为

这里:

  • 是明确指定的训练时间分布,不必是均匀分布;
  • 是损失权重;
  • 连续时间高斯扰动在 常有 ,条件分数奇异,因此实践中通常取
    支持于 ,;
  • 是数据边界分布, 是终端边缘,只有日程设计充分时才近似所选先验 。

真实边缘分数通常不可计算,因为

2. 去噪分数匹配

若扰动核 的条件分数可解,则去噪分数匹配
(DSM)(Vincent, 2011) 目标为

该目标只需从数据和已知扰动核采样。

3. DSM 等价性证明

固定 。在可将梯度移入积分、且所有期望有限的正则条件下,

除以 得 Fisher identity:

因此对任意 ,

展开两个平方目标:

前两项逐一相同,最后一项都与 无关。因此

且 与 无关;二者具有相同的参数梯度和最优解。这个证明不声称两个目标的数值相等。

若改用经典 Hyvärinen score matching,把目标化为

还需额外假设边界通量
在无穷远消失,才能合法分部积分。

4. 线性高斯核下的参数化

设

则

且条件分数为

4.1 score 参数化

网络直接输出

DSM 单样本损失为

4.2 epsilon 参数化

定义

则

所以“不加权 epsilon MSE”对应的是分数 DSM 权重

而不是所有权重选择都自动等价于同一个无权 epsilon 目标。

4.3 参数化

若网络预测 ,则

因此 score、epsilon 和 参数化在 时可相互转换,但损失权重会随转换改变。

5. 引导目标的 epsilon 形式

若希望在无条件分数上加入一个给定向量场

则目标分数是

采用 时,

例如启发式 loss guidance 取
,则 epsilon 目标为

该代数关系本身是精确的,但 是否真是条件似然分数取决于引导方法的近似;详见
条件扩散。

6. 训练伪代码

算法:无条件扩散模型训练

  1. 选定时间分布 、权重 和扰动核
    。
  2. 重复直到收敛:
    1. 采样 ;
    2. 采样 ;连续时间通常限制 ;
    3. 采样 ;
    4. 构造
      ;
    5. 计算 或其等价的正确加权 epsilon 形式;
    6. 反向传播并更新 。

7. 逆向 SDE 采样伪代码

在网格

上,从终端向起点积分。令

算法:Euler—Maruyama 逆向采样

  1. 采样 。这里应使用实际终端先验;只有模型定义如此时才写成
    。
  2. 对 :
    1. 计算逆向漂移
    2. 采样
    3. 更新
  3. 返回 。

若使用 probability-flow ODE,则删除随机增量,并把分数项系数从 改为 。两种采样器只共享边缘路径,不共享单条轨迹。

Vincent, P. (2011). A Connection Between Score Matching and Denoising Autoencoders. Neural Computation, 23(7), 1661–1674.