论文导读:[NeurIPS2020]Denoising Diffusion Probabilistic Models

 

预备知识:Markov Chain

核心思想:描述状态转移的函数,当前步骤的Transmittion Matrix只依赖于上一步的状态

Algorithm

参考:https://www.bilibili.com/video/BV14c411J7f2/?spm_id_from=333.337.search-card.all.click&vd_source=14728bbd15d8b77a712e34c0e81c1d86

Training过程:训练模型,得到估计的噪音\epsilon_\theta

  1. 在数据集中采样(一个batch是4张图),得到X0,其服从分布q(X0)

  2. t在1到T内随机取数(轮数不固定)

  3. 找严格服从正态分布的噪声ε

  4. 梯度下降更新参数θ,输入的是\sqrt{\bar{\alpha_t}}x_0+\sqrt{1-\bar{\alpha_t}}\epsilon = x_t(即为一张Noisy图片)和轮次t(即为位置编码,需要用sin&cos进行time embedding,能否用其他embedding方法?

即为真实值与预测值之间的差,作为loss function

这当中\epsilon_\theta是一个模型,是训练所得到的结果,输出结果时,每个位置都要生成一个噪音点

UNet:训练过程中所用的网络

常规UNet结构见:UNet OnePage(WIP)

  • UNet网络结构较简单,或许是一个可以优化的点,可否设计更精妙的Network?

Sampling过程:逆向过程,由XT得到X0

  

  1. XT是最终生成的噪音,其符合标准正态分布

  2. 从T往前回溯到1

  3. 最后一步(t=1)的时候,不添加噪音点,z=0

  4. 第t-1步的图像X_{t-1}只与XX_T和噪音有关

训练过程:

随机选择一个训练样本->从1-T随机抽样一个t->随机产生噪声-破坏后的原图->输入网络预测噪声->计算产生的噪声和预测的噪声的L2损失->计算梯度并更新网络

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值