昇思25天学习打卡营第十九天|Diffusion扩散模型(上)

        由于本章内容较多,所以分为上下两篇。

       关于扩散模型有很多种理解,本文介绍的是在基于PyTorch框架的重现的基础上(而他本身又基于TensorFlow实现),迁移到mind spore AI框架上实现的。

       实验中我们采用离散时间(潜在变量模型)的观点,另外,读者也可以查看有关于扩散模型的其他几个观点。实验开始前请确保安装并导入所需的库。

 31d76b90caf54becb99c8ab9c12d057c.png

6ef020e2add945a1beab4aae8ee1fd1f.png 

        如果将Diffusion与其他生成模型进行比较,它并没有那么复杂。它们都将噪声从一些简单分布转换为数据样本,Diffusion也是从纯噪声开始通过一个精神网络学习逐步去噪,最终得到一个实际图像。其对图像的处理包括以下两个过程:一是选择固定正向扩散过程q,二是一个学习的反向去噪的扩散过程p。

       下面我们逐步构建Diffusion模型。首先,我们定义了一些帮助函数和类,这些函数和类将在实现神经网络时使用。

5b86926cf4b2473bada98017661d52f4.png

9857bd8c860a48f3890d0c49ea8bc56e.jpg 

dca45f3efa6846bdaeaeefd198c5dfa2.png 

648287d164a24e0fb576bec67042f9f6.png 

84cae697a26243b89cd4f7fa84814892.jpg 

04e91ad87c8a4c419fbf5b0f5bd269c9.png 

f78f7eb650b241f9b260c93e28db0820.png 

3d96069f9e644841b8e79e25cfe2dff1.jpg 

95353ac0a4e3412486bc05881bdf2eff.png 

   3f61a4e2052d4197a93c8341e5158030.png

76c36dacba8f4789b3a37ec8b7d90b39.jpg 

3fdaa3d68d604cef924e48b533014da7.jpg 

8158a0dd4b4c4e36b4702bdb0aa98a7d.jpg 

c98c31fc15634d16bc729c7b53ade835.jpg 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值