生成扩散模型 (Diffusion Models)

Contents

  • 理解 DDPM 的三种视角
    • DDPM = 拆楼 + 建楼
    • DDPM = 自回归式 VAE
    • DDPM = 贝叶斯 + 去噪
  • DDPM 实践经验
  • DDPM 综合评价
    • 优点
    • 缺点
  • References

理解 DDPM 的三种视角

DDPM = 拆楼 + 建楼

  • blog: DDPM = 拆楼 + 建楼

DDPM = 自回归式 VAE

  • blog: DDPM = 自回归式 VAE

DDPM = 贝叶斯 + 去噪

  • blog: DDPM = 贝叶斯 + 去噪

DDPM 实践经验

  • (1) 损失函数不能用 MSE,而必须用欧氏距离,两者的差别是 MSE 在欧氏距离基础上除以图片的宽 × × × × × × 通道数,这会导致损失值过小,部分参数的梯度可能会被忽略为0,从而导致训练过程先收敛后发散
  • (2) 归一化方式可以用 Instance Norm、Layer Norm、Group Norm 等,但不要用 Batch Norm,因为 Batch Norm 存在训练和推理不一致的问题,可能出现训练效果特别好,预测效果特别差的问题
  • (3) 网络结构没有必要照搬原论文,原论文是为了刷 SOTA 发论文,照搬的话肯定是又大又慢的,只需要按照 U-Net 的思路设计自编码器 (e.g. 特征拼接改为相加、去掉了Attention…),就基本上可以训练出个大概效果了,因为就相当于是个纯粹的回归问题,还是很好训练的
  • (4) 关于参数 t t t 的传入,原论文用了 Sinusoidal 位置编码,直接换为可训练的 Embedding,效果也差不多

DDPM 综合评价

优点

  • 容易训练,并且生成的图片也清晰。这个容易训练是相对 GAN 而言的,GAN 是一个 min-max 过程,训练中的不确定性很大,容易崩溃,而 DDPM 就纯粹是一个回归的损失函数,只需要纯粹的最小化,因此训练过程非常平稳

缺点

  • 首先最突出的就是采样速度太慢,需要执行模型 T T T (原论文 T = 1000 T=1000 T=1000 才能完成采样)
  • 其次,在 GAN 中,从随机噪声到生成样本的训练是一个确定性的变换,随机噪声是生成结果的一个解耦的隐变量,我们可以进行插值生成,或者对之编辑以实现控制生成等,但是 DDPM 中生成过程是一个完全随机的过程,两者没有确定性的关系,这种编辑生成就不存在了。DDPM 原论文虽然也演示了插值生成效果,但那只是在原始图片上进行插值的,然后通过噪声来模糊图片,让模型重新 “脑补” 出新的图片,这种插值很难做到语义上的融合

References

  • 苏剑林. (Jun. 13, 2022). 《生成扩散模型漫谈(一):DDPM = 拆楼 + 建楼 》[Blog post]. Retrieved from https://kexue.fm/archives/9119
  • 苏剑林. (Jul. 06, 2022). 《生成扩散模型漫谈(二):DDPM = 自回归式 VAE 》[Blog post]. Retrieved from https://kexue.fm/archives/9152
  • 苏剑林. (Jul. 19, 2022). 《生成扩散模型漫谈(三):DDPM = 贝叶斯 + 去噪 》[Blog post]. Retrieved from https://kexue.fm/archives/9164
  • DDPM: Ho, Jonathan, Ajay Jain, and Pieter Abbeel. “Denoising diffusion probabilistic models.” Advances in Neural Information Processing Systems 33 (2020): 6840-6851.
  • OpenAI, DALL·E 2: Ramesh, Aditya, et al. “Hierarchical text-conditional image generation with clip latents.” arXiv preprint arXiv:2204.06125 (2022).
  • Google, Imagen: Saharia, Chitwan, et al. “Photorealistic Text-to-Image Diffusion Models with Deep Language Understanding.” arXiv preprint arXiv:2205.11487 (2022).

你可能感兴趣的:(#,Generative,Models,diffusion,model)