【深度生成模型】Diffusion Model 扩散模型

1.Diffusion Model 的工作方式

简单来说,两个过程,前向过程,向原图形中加噪声变为纯噪声图像;反向过程,对纯噪声图像进行去噪生成图像。
扩散模型,从一堆噪音里去除不需要的噪音,得到需要的图像。

在这里插入图片描述
其中,去噪内部的工作流程:内部首先预测图片中的噪音,在输入图像上减去产生的噪音,达到去噪的效果
在这里插入图片描述

关键在于这个内部的预测噪音怎么实现呢?人为自己加噪音进去,这个过程叫做前向过程

在这里插入图片描述

Text-to-Image

在这里插入图片描述在这里插入图片描述

2.Stable Diffusion

流程框架,基本包含三个元件:文字编码器,生成模型,解码,三个通常是分开训练再组合
在这里插入图片描述

生成评价指标FID

先有一个分类模型,计算真的图像和假的图像的距离,值越小越好。

在这里插入图片描述
其中生成模型:

在这里插入图片描述

3.数学原理

在这里插入图片描述

训练:第2行X0代表真正的图,第4行代表噪声,第5行:后面根号部分将真正的图和噪声混合,T越大,代表噪声加的越多,图形化流程如下:

在这里插入图片描述
可以看出实际上真正做的时候,噪声并不是一点一点加进去的,而是一次性的加进去了,去噪声的时候也是直接去除。为什么呢?与后面的数学原理相关。
产生图: 图形化流程如下:
在这里插入图片描述

公式推导:
在这里插入图片描述
其中分母部分:
在这里插入图片描述

其中,单个在这里插入图片描述怎么计算呢?首先定义好噪声的加入量:

在这里插入图片描述

举例计算几个:

在这里插入图片描述
把第一行的x1代入第二行,得到:

在这里插入图片描述
红框的就可以进行简化,两次加噪声就可以等同于一次加噪声,以此类推:

在这里插入图片描述

整个过程就可以化简为只做一次加噪声,一步到位。

整个过程,在这里插入图片描述
经过各种数学就可以化简为以下式子:

在这里插入图片描述在这里插入图片描述

那红框究竟怎么求极值呢,实际上,先从数据集里获得一张X0,利用公式获得Xt:

在这里插入图片描述

接下来,将Xt和当前t输入去噪模型,训练,输出结果和在这里插入图片描述
越接近越好,图片的复杂式子经过化简,得到的结果是在这里插入图片描述
,所以去噪模型的输出要和这个接近,也就是输出这个,在这个式子中,需要预测的只有在这里插入图片描述
这部分就和公式对应:
在这里插入图片描述

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小镇躺不平家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值