DDPM的流程可以分为{正向加噪+训练}过程以及去噪(采样/推理)过程,前者指的是DDPM的训练和正向加噪一起进行。 对于正向加噪过程,为了实现从一个随机的高斯噪声生成一张图,DDPM的作者将未知的原始的数据分布通过一步步迭代不断加噪声加以破坏,最终形成几乎纯粹的高斯噪声。与此同时,DDPM首先将这个加噪的过程建模
从非常HIGH LEVEL的层面我们已经知道,DDPM 的扩散过程操作的是把原有数据分布进行了确定性的多次扩散,这样就构造了一个一步一步的依赖过程,就是每一步的扩散仅仅依赖于上一步的数据分布状态。 通过确定性的扩散过程构造出了每一步扩散的数据和相应的噪声,其实就是为重建过程提供了训练数据,然后通过训练神经网络,让...
前向过程 🛤️DDPM的前向过程相对简单,这里就不详细推导了。简单来说,前向过程就是通过一系列步骤将数据逐步“扩散”到一个高斯分布。 逆向过程 🔄逆向过程是DDPM的核心部分,主要通过贝叶斯公式来求解前向过程的逆向分布。这里的关键在于加入先验条件,通常是x0,也就是真实数据分布。通过配凑的方式,最终得到逆向...
通过数学推导,VAE的代码实现相对简单,但可能受限于数据分布的假设。为了引入条件控制,CVAE(条件变分自编码器)引入了额外的控制条件,使得模型能生成特定条件下的数据。接下来,DDPM的灵感来源于物理中的扩散过程,通过前向加噪和反向去噪两个阶段,DDPM克服了VAE的假设限制,生成的图像更具细节。DDPM的...
AIGC基础:从VAE到DDPM原理、代码详解 ©作者 |王建周 单位|来也科技AI团队负责人 研究方向 |分布式系统、CV、NLP 前言 AIGC 目前是一个非常火热的方向,DALLE-2,ImageGen,Stable Diffusion 的图像在以假乱真的前提下,又有着脑洞大开的艺术性,以下是用开源的 Stable Diffusion 生成的一些图片。
AIGC基础:从VAE到DDPM原理、代码详解 ©作者 |王建周 单位|来也科技AI团队负责人 研究方向 |分布式系统、CV、NLP 前言 AIGC 目前是一个非常火热的方向,DALLE-2,ImageGen,Stable Diffusion 的图像在以假乱真的前提下,又有着脑洞大开的艺术性,以下是用开源的 Stable Diffusion 生成的一些图片。
从VAE的原理可以看到,我们做了假设 p(z|x) \sim \mathcal N(\mu,\sigma^2) ,但是在大多数场景,这个假设过于严苛,很难保证数据特征符合基本的正态分布(严格意义上也做不到,严格分布的话说明特征就是高斯噪声了),因为这个缺陷,所以基本的VAE生成的图像细节不够,边缘偏模糊,为了解决这些问题,又出现DDPM(Denois...