从 U-Net 文章结尾的一个问题说起 # 上一篇结尾我写:DDPM 里的 U-Net 和 2015 年原版 U-Net 有几处关键扩展,第一个就是 Timestep Embedding——通过 sinusoidal embedding 将时间步 \(t\) 编码成向量,注入到每个 residual block 中。
DDPM 的噪声预测网络到底是什么 # 前两篇文章在推导 DDPM 的前向扩散和反向去噪时,一直在用一个符号 \(\epsilon_\theta(x_t, t)\) 来表示噪声预测网络——给一张带噪图片和当前 timestep,输出对噪声的预测。
接着上一篇的问题 # 上一篇搞清楚了一件事:DDPM 的前向扩散虽然定义成一步一步加噪的马尔可夫链,但因为高斯分布在线性组合下的封闭性,任意时刻的 \(x_t\) 都可以一步算出来:
起因 # 最近在看 DDPM(Denoising Diffusion Probabilistic Models)。前向扩散的定义写得很清楚:从原始图片出发,每一步往上面加一点噪声,一步一步把图片变成纯噪声。