从直觉到证明3Blue1Brown 中文导学教材
3.10 扩散模型:从噪声中逐步恢复

3.10 扩散模型:从噪声中逐步恢复

区分已知噪声时的代数反演与实际模型估计噪声的统计任务。

例题练习Lean 对照原课

一步一步建立直观

先预测,再点“演示本步”核对右图。每一步都重设到指定情形,随后可以自由修改参数。

01先明确加噪是怎样生成观测的

右图用一个标量替代整幅图像,按照 xt=αx0+1−αϵx_t=\sqrt{\alpha}x_0+\sqrt{1-\alpha}\,\epsilon 混合信号与噪声。改变保留比例,就能看出同一个观测可能主要由信号或噪声主导。这一步是已知的前向过程,还没有涉及学习如何生成图像。

02去噪依赖估计,不能凭空恢复

若噪声估计准确,可由代数关系解出原信号;若估计偏差为 Δϵ\Delta\epsilon,恢复误差会乘以与噪声强度有关的倍率。第二步故意用错误估计,让你比较真值与恢复值。真实模型并不知道当次噪声,需要依据训练获得的统计规律进行估计。

03为什么强噪声阶段更依赖统计结构

当保留比例很小,恢复公式里的信号系数也很小,噪声估计误差因此被放大。图中可精确比较误差,但不代表高维去噪能唯一找回原图。扩散生成通过多步反向演化利用分布信息;这里验证的是单步代数关系,不能替代完整采样器。

3.10.1 先构造一个容易的破坏过程

直接生成复杂图像很难,但给图像加噪很容易。扩散方法规定一系列噪声水平,把数据逐渐混入随机噪声;训练时知道原图、噪声和阶段,就能构造监督任务,让模型估计噪声或干净信号。反向生成尝试从噪声出发,逐步执行学习到的更新。

正向公式中的两个系数分别控制信号和噪声强度。它描述的是已知阶段的边际采样,不等于完整算法的所有步骤。模型还需要时间或噪声水平信息,因为同一个观测在不同噪声强度下应有不同解释。

3.10.2 代数可逆与统计可恢复不同

在标量玩具模型 xt=ax0+bεx_t=ax_0+b\varepsilon 中,若知道真噪声且 a≠0a\ne0,减掉噪声再除以 aa 就能恢复原信号。这里的代数完全确定,正是 Lean 校验的内容。但实际只看到 xtx_t,真噪声未知,多组信号噪声都可能产生同一观测。

若估计噪声误差为 δ\delta,重建信号误差是 −(b/a)δ-(b/a)\delta。当信号系数很小,同样噪声误差会被显著放大。这解释了为什么不能把一次代数反演当成真实生成过程的完整答案。

文本条件影响模型更倾向恢复哪类结构,逐步采样则涉及随机性与具体更新规则。本节建立“容易加噪、学习条件恢复”的思想;训练有效性、生成质量和完整随机过程需要额外分析,不能由一条恢复恒等式推出。

定义 3.10.1 单步信号与噪声混合

取 0<α<10<\alpha<1,设 xt=αx0+1−αϵx_t=\sqrt{\alpha}x_0+\sqrt{1-\alpha}\epsilon。给定噪声估计 ϵ̂\widehat\epsilon,按此等式解出重建值 x̂0\widehat x_0。

命题 3.10.1 噪声估计误差的传播

重建误差满足 x̂0−x0=−(1−α)/α(ϵ̂−ϵ)\widehat x_0-x_0=-\sqrt{(1-\alpha)/\alpha}\,(\widehat\epsilon-\epsilon)。

证明 · 展开纸笔推导

将观测的定义代入 x̂0=(xt−1−αϵ̂)/α\widehat x_0=(x_t-\sqrt{1-\alpha}\widehat\epsilon)/\sqrt{\alpha},原信号项直接留下 x0x_0,剩余两项合并即可。

分母合法来自 α>0\alpha>0。当 α\alpha 很小时,误差倍率很大;即使代数恒等式正确,也不能由它推出噪声估计足够准确或整套生成过程收敛。

□

数学表述 3.10.1

正向过程逐渐给数据加噪,反向模型学习在噪声水平及条件信息已知时估计噪声或干净数据。文本条件可通过联合表示和注意力影响生成。

常见正向边际为 xt=α‾tx0+1−α‾tε,ε∼𝒩(0,I).x_t=\sqrt{\bar\alpha_t}\,x_0+\sqrt{1-\bar\alpha_t}\,\varepsilon, \qquad\varepsilon\sim\mathcal N(0,I). 当 α‾t>0\bar\alpha_t>0,若噪声估计为 ε̂\hat\varepsilon,可构造 x̂0=(xt−1−α‾tε̂)/α‾t\hat x_0=(x_t-\sqrt{1-\bar\alpha_t}\hat\varepsilon)/\sqrt{\bar\alpha_t}。

例 3.10.1 把概念用于具体计算

用简化标量系数 a=0.8,b=0.6,x0=2,ε=−1a=0.8,b=0.6,x_0=2,\varepsilon=-1,得到 xt=1x_t=1;已知真噪声时 (1−0.6(−1))/0.8=2(1-0.6(-1))/0.8=2。

练习 3.10.1

若噪声估计多了 δ\delta,恢复误差是什么?

展开解答与检查

−(b/a)δ-(b/a)\delta,说明 aa 很小时误差会被放大。

Lean 对照 3.10.1 命题、证明与适用边界

完整验证非零信号系数下的代数恢复式;未形式化随机扩散过程、训练有效性或生成质量。客座原课署名 Stephen Welch。

NeuralNetworks.denoising_reconstruction

theorem denoising_reconstruction (a b x ε z : ℝ) (ha : a ≠ 0)
    (hz : z=a*x+b*ε) : (z-b*ε)/a=x := by
  rw [hz]
  field_simp

查看完整定义与上下文 ↗ · 全书证明范围

原课对照 观课问题、视频与图示

区分已知噪声时的代数反演与实际模型估计噪声的统计任务。

官方课程与图示 ↗ · 原视频 ↗

点击后连接 YouTube;播放器不可用时可通过上方原链接观看。