在大屏或电脑上体验更佳——动画和操作区域更宽敞。
输入

扩散模型

扩散模型学习在各噪声水平去噪,再用这些知识从随机噪声生成新样本。一次去噪估计可能平均多个合理来源,落在数据群之间;本课单次估计集中在空心区域,反复估计才让样本靠近八个群。

想象八座城镇围着湖。模糊的位置报告可能对应任一城镇,平均位置却在湖里。均值可以是合理估计,却不是合理的投递地点。这就是估计与样本的区别。

数据与解析去噪器

样本是二维点,来自八个高斯群,中心在半径 2 的圆上,每个坐标标准差 0.12。一个点就是一个完整样本;图像模型对应更长的像素或潜在向量。

这里已知精确分布,直接计算理想去噪器,不训练神经网络。这样排除训练误差,只研究理想条件均值能做什么,以及采样器如何使用它。

已知目标的加噪

取干净样本 x₀ 和标准高斯噪声 ε:

xₜ = √a(t) · x₀ + √(1 − a(t)) · ε

a(t) 是累计信号方差。系数的平方和为一,不是普通和,也不是点数比例。t = 0 为干净数据;t = 1 时 a = 0.0001,信号系数 0.01,分布接近标准高斯。

因为 ε 是自己采样的,可训练 ε̂(xₜ,t) 最小化与已知噪声的期望平方差。输入必须包含噪声水平,见 DDPM 论文。本课用精确 E[ε | xₜ,t]:与当前观测相容的噪声的条件均值。多个干净来源可能产生近似观测,最优平方误差预测不必等于这一次实际加入的噪声。

估计、移动、再估计

生成从独立新噪声 x₁ ~ Normal(0,I) 开始,没有原始干净点要恢复。由预测噪声计算:

x̂₀ = (xₜ − √(1 − a(t)) · ε̂) / √a(t)

高噪声时,这个干净估计可能平均远离的群,落在空心处。八根来源概率条表示当前单个点在当前噪声水平来自各群的可能性。条相近表示来源模糊;均值在群内和群间取期望,不是把 48 个生成点平均,也不是预先为每点指定终点。

确定性 DDIM 将它移到更低噪声水平 s:

xₛ = √a(s) · x̂₀ + √(1 − a(s)) · ε̂

然后在新的 (xₛ,s) 重新估计,直到 s = 0,此时噪声系数为零,输出等于最新干净估计。这是 η = 0 的 DDIM,初始化后不再加新随机量,与随机 DDPM 不同,见 DDIM 论文。

空心标记表示干净估计,加号是算出的下一样本,橙点移向加号。早期两种位置可差很远,即使采样位移很小。

逐步演示

默认 种子 42、32 个采样步、48 个样本。前向加噪用独立固定随机流,改变生成种子不会改变教学训练例。

先展示 t = 0.25、0.5、0.75、1 的加噪数据。各水平具有正确前向边缘分布,但复用同一噪声便于对比,不是逐步随机 DDPM 马尔可夫轨迹。

训练小窗回到 t = 0.5 的记录:干净点 (-1.835,0.278),噪声 (0.185,-2.110),观测 (-1.174,-1.287)。精确条件噪声预测为 (-0.437,-0.488),该对平方误差 3.018。条件均值最优也能在单个样本有正误差,隐藏噪声不能总被唯一恢复。

接着从新噪声生成,跟踪样本 0:

评估噪声时间当前样本干净估计下一样本
11.000000(-1.840449,-2.912688)(-0.037056,-0.058644)(-1.839170,-2.910664)
20.968750(-1.839170,-2.910664)(-0.214013,-0.338696)(-1.842158,-2.915393)

第一次估计接近中心,下一样本仍带噪。第二次用新位置和水平重新预测。每步不一定靠近最近群中心;这是采样轨迹,不是对最近中心距离做梯度下降。

第一次评估中,八群各占该点来源概率约 12–13%,动画先停留在这些权重,再展示单步输出。到第 25 次、t = 0.25,左下斜向的第 6 群约占 99.8%。输入和噪声水平变了,去噪器没有重训,换种子也可能选中别群。

第 3–32 次重复同一公式,两次来源查看只是解释已有预测。样本 0 最终为 (-1.523356,-1.695873)。48 个中 43 个距某个群中心不超过 0.24,八个邻域都有点;五个在外,高斯有尾部,不是硬边界。

单步对照用完全相同的初始噪声和去噪器,直接返回最初干净估计,0/48 进入八邻域,结果集中在群间中心。区别来自采样轨迹,不来自模型变化。

采样预算与诊断

步数改变固定噪声日程上的去噪评估次数,不改变训练时间。种子 42 时,4 步有 33/48 靠近群,32 步有 43/48。可按“只做一步 → 粗步长采样 → 逐步去噪”比较,再用“换一批噪声”换初始批次。比较预算时先固定模型和起始噪声。

靠近计数不是生成质量的充分标准。同种子下 8 步有 45 个、64 步有 42 个,不能据此说 8 步分布更好。把全部点压到一个中心也会全部“靠近”,却丢七群和群内变化。邻域占用数提供第二个检查,两项都不能独立证明分布正确。

32 步时,种子 21 有 45 个靠近、占满八群;137 也有 45 个,却只占七群。小批次存在波动。结论是这些实验中反复去噪能分出群,不是每个种子都必须占满八群。

解析混合模型生成 M 点、N 步、K 分量的时间为 O(NMK)。数值采样工作空间可为 O(MK),逐点处理还可减少;动画另存 O(NM) 快照以供回拖。图像模型的成本由网络和张量尺寸决定,不能直接套这个混合分布公式。

边界情况

  • 一步:主轨道与对照相同,均返回初始干净估计,界面说明相等。
  • 精确中心:对称性使各噪声水平的估计为零,确定性采样保留零点。连续高斯抽到精确零的概率为零,但这个边界说明均值不自动是合理样本。
  • 终端噪声有限:a(1) 很小但非零,所以标准高斯起点只是终端前向分布的近似。
  • 相同种子和步数:重放、变速、回拖均确定。非零 η 的 DDIM 和随机 DDPM 有不同随机性约定。
  • 可选范围:步数 1–64、种子 1–9999 是界面边界,不是扩散模型限制。

常见错误

  • 把生成当倒放已保存的加噪过程。生成不读取前向例的干净点或实际噪声。
  • 直接 x − ε̂,漏掉日程系数。这里组合的是下一水平的干净估计与噪声分量。
  • 把中间干净估计当当前样本。当前样本一般仍带噪,直到终点。
  • 期待条件均值等于每例隐藏噪声。平方误差最优是条件平均。
  • 从本例推出单步生成不可能。失败只针对这里的高噪声条件均值与采样器,专门训练的单步模型不在结论中。

模型范围

二维已知高斯混合、解析理想去噪器、确定性 DDIM,不训练网络、不生成图像。真实图像或潜在模型还包括学习网络、训练、条件与引导,潜在系统也可能用自编码器,采样方式各异。训练循环另讲优化,本课只隔离去噪估计怎样用于生成样本。