扩散模型的理解

  • 先看看它干了啥,然后如果能应用到我的研究领域就好了。
  • 生成,确实很火热的话题啊。还是转到这个方向好的哟。

http://t.csdnimg.cn/tQjQn这篇介绍挺好的

现在的几个问题:

(1)逆扩散为什么是未知的?

在原本p(x_{t-1}|x_t)中,计算过程用到了x0,但是x0是未知的(本身就是模型要求解生成的),用这个公式逆向就得到了x0的值,但是这个结果并不准确(是一个估计值。。。这里只能这样解释吧),但是其实这个噪声是可以保存的呀,不是分布,而是采样结果,那为什么又说不行?

它这段话固然解释了一些,但是问题是,那你直接用扩散过程的那个噪声就行啊,这个结果是可以保存下来的呀,不对,扩散过程的噪声是不知道的,因为是直接从x0一步到位x_t,但你现在推的是x_t到x_{t-1}。

那就是李宏毅老师的讲法了,逆过程求噪声之所以有效,是把1步转成了N步,不断迭代修正的。

(2)这个计算到底怎么实现的?

解释:它的意思是从x0得到了x_t(带根号的那串),然后我模型直接预测这个过程的噪声是多少。因为加了多少噪声是已知的(第4步)。推导公式的时候考虑的是要得到谁,但是算法和代码实现是一步到位的。

必须承认,这里我不会的根源还是在于,损失函数是怎么得来的。那一大串的KL散度推导实在是把我整蒙了,完全没明白。。。再说吧,还是得搞懂的,但暂时先往前推进吧

(3)在我看来,它就是预测了一个均值,为什么能得到一张图像的分布呢?难道每个像素点都是独立同分布的高斯吗?

(4)如果训练过程的开始,是一张随机初始化的噪声(图片),那么它为什么不直接搞前向传播出来的那张图作为初始呢?

解释1:就是前向传播出来的那张图作为初始的呀,是你理解错了算法1吧。它把原图加t步噪声的结果以及步长t作为模型的输入,输出是预测加的噪声长什么样。

解释2:但是推理的时候,是没有真实图片(让你前向加噪的),所以只能是一张随机噪声了。即算法2里面的x_t从标准高斯分布采样。

(5)测试过程(算法2)的解读?

【扩散模型 - Diffusion Model【李宏毅2023】】 https://www.bilibili.com/video/BV14c411J7f2/?p=3&share_source=copy_web&vd_source=297ebe5cc5e73d20786e36a6e64792b6

  • 12
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值