上期回顾
我们在第 1 期中介绍了 正向扩散过程(Forward Process),并用 CIFAR-10 图像演示了加噪过程:

正向过程是固定的,无需训练,但我们感兴趣的是:如何从纯噪声一步步"还原"出真实图像?
这就引出了今天的重点:
一、逆向扩散过程(Reverse Process)
正向扩散会将图像逐步变为噪声:

我们想做的是逆过程:
这个逆向过程也被建模成一个马尔可夫链:

目标:用神经网络 θ学习出这个高斯分布的参数.
二、逆向过程的难点
相比于前向过程,逆过程存在两个挑战:
-
真实的 p(x_t−1∣xt)无法直接获得
因为我们没有真实的 x_t−1 分布,只知道正向过程中加了噪声。
-
训练目标不好设计
我们不能直接监督学习目标分布,只能间接构造损失。
三、DDPM 的关键设计:噪声预测损失
作者提出了一个巧妙的思路:
既然我们知道在正向过程中,x_t 是通过在 x_0上添加噪声得到的:

那么我们可以训练神经网络 ϵ_θ(x_t,t) 去预测加进去的噪声 ϵ!
四、训练损失函数
使用 L2 loss 去预测噪声:

含义:
-
随机采样一个时间步 t
-
加噪得到 x_t
-
训练网络 ϵ_θ 尽可能预测正确的噪声
📌 神奇之处:这个损失等价于对变分下界的优化(DDPM 论文中严格推导)