Diffusion扩散模型梳理笔记(二):LDM (Stable Diffusion核心算法), DiT (Transformer架构)

【如果笔记对你有帮助,欢迎关注&点赞&收藏,收到正反馈会加快更新!谢谢支持!】

二、重要方法整理

2.1 【LDM】High-Resolution Image Synthesis with Latent Diffusion Models
(Stable Diffusion 核心算法)

  • 改进点:扩散在潜空间(latent space)实现【对比:DDPM是图像像素层面的扩散,效率低】
  • Pipeline:
    • VQ-VAE【编码图像 x 到离散特征 z,再解码回图像】和 Diffusion【对离散特征 z 操作】组成
    • 前向:图像【输入】→ VQVAE的编码器【得离散特征 z】→ Diffusion对z加噪 → z_T
    • 反向: z_T → U-Net去噪【每层由CNN和交叉注意力实现,并加入条件控制生成】→ z → VQVAE解码器 → 图像
  • 条件机制:
    • 先用领域编码器 \tau_{\theta}(y) 将不同条件转化为特征(比如文本用Bert,图像用CLIP)
    • 特征作为U-Net中交叉注意力的 key 和 value
  • 为什么在潜空间扩散会加速?
    • 潜空间的特征是VQVAE压缩之后的特征,比图像特征小很多

2.2 【DiT】Scalable Diffusion Models with Transformers

  • 改进点:用Transformer 架构替换 UNet 架构
  • Pipeline:
    • Image Token生成:图片 → Patchify【每个patch由 p \times p 个像素组成】→ Tokens(一个patch为一个token)
    • DiT Block(针对如何引入额外信息探索了四种策略)
      ( 举例时间步长和类别标签作为额外信息  t : timesteps token; c: class label token)
      • In-Context Conditioning:将 t 和 c 作为额外的token给序列,但不和图像 token区别对待
      • Cross-Attention:用交叉注意力实现 图像tokens和 t & c的融合
      • Adaptive layer norm (adaLN):用 t 和 c 做回归得到 LayerNorm 的缩放和移位参数(\gamma 和 \beta
      • adaLN-Zero:除了回归缩放\gamma 和移位 \beta, 还回归缩放系数 \alpha
    • 四种策略性能对比

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值