DDPM与扩散模型

很早之前就新建了一个专栏从0开始弃坑扩散模型
,但发了一篇文章就没有继续这一系列,在这个AIGC的时代,于是我准备重启这个专栏。
整个专栏的学习顺序可以见这篇汇总文章

这是本专栏的第一章

目录

  • 引言
  • 生成模型的发展历程

引言

扩散模型( Diffusion Models,DM ) 最早是在2015年由斯坦福大学的Jascha Sohl-Dickstein等人提出的,全称是概率扩散模型(diffusion probabilistic model,DPM)。他们是怎么提出的呢?这里就要讲讲在之前的故事了。

生成模型的发展历程

很久以前,在一片广阔的大陆中,数据科学家们长期以来一直在探寻一种方法,希望能让机器不仅能学会理解复杂的数据,还能创造出全新的、前所未见的图像。他们希望通过这样的方式让机器拥有一点点“创造力”。这个愿望听起来很遥远,直到有一天,两个强大的法师——生成对抗网络(GAN)和变分自编码器(VAE)改变了这个世界。
VAE法师利用概率生成模型的力量,通过将图像数据映射到一个隐含的、更低维的空间(称为隐空间)来捕捉数据的本质特征。然后,VAE法师通过隐空间中的点(这并不是前面转换的点,而是在一定分布中随机抽样出来的新点)重构数据,生成新的样本。VAE中,把图像变成向量的网络叫做编码器,把向量转换回图像的网络叫做解码器。模型会在训练时候,不断学习某一类图像的标准正态分布,这样随机出来的分布也能与训练集生成相似的图像。在VAE中,生成图像的质量通常是通过它们与真实图像的相似度来评价的,这就导致了一个问题:虽然VAE生成的图像在像素级别上与原始图像可能非常相似,但它们往往缺乏锐利度和细节,看起来可能模糊不清,不够逼真。此外,VAE的另一个限制在于其假设潜在空间遵循一个简单的、通常是高斯分布的先验,这限制了它能够生成的样本类型,特别是在捕捉更复杂或多模态分布时可能会受到限制。
紧随其后,生成对抗网络(GAN)法师登场了。GAN法师带来了一场真正的革命,他不仅能够生成数据,还精心设计了一个判别器来评价数据的真实性。在他的法术下,生成器和判别器开始了一场激烈的对抗游戏。生成器像艺术家一样创作新的作品,而判别器则像艺术评论家一样对作品进行评判。通过不断的竞争,生成器学会了创造出越来越逼真的数据样本,而判别器则变得越来越擅长于分辨真伪。GAN法师成功地解决了如何评价生成图像的难题,使得生成的图像在质量上得到了显著的提升,它们变得几乎与真实图像无法区分。
在VAE和GAN两位法师展示他们的魔法之后,机器学习的领域已经大为震撼。但是,故事并没有结束。在他们的故事传开之后不久,一个新的法师扩散模型(Diffusion Model)从知识的迷雾中走了出来,带着一种新的魔法——他可以在数据的原始形态和一片纯净无噪的空白状态之间来回穿梭。
扩散模型法师的魔法与VAE法师有着密切的血缘关系,但又带有独特的力量。他的能力不在于对数据进行简单的编码和解码,而是在于逐步地、有策略地引入噪声,将数据模糊化,直至变成纯粹的随机噪声,就像是用一层层的绘画颜料将一个精致的画作覆盖,直到所有的细节都不再可见。
然而,扩散模型法师最引人注目的魔法是他的逆过程。他能够从那一片噪声的汪洋中,逐步地移除噪声,让数据重现其原有面貌。这一过程仿佛是在逆转时间,使混乱渐渐回归秩序。随着每一步噪声的去除,数据的结构开始逐渐显露,最终揭示出清晰的形象。
扩散模型法师的这种能力在处理高维数据时尤为强大,他能够生成具有非常高质量和复杂性的样本,这些样本不仅在视觉上逼真,而且在统计特性上也与真实数据几乎无法区分。这一点,即便是GAN法师也不得不承认。
这样,扩散模型法师不仅加入了VAE和GAN的行列,还将机器学习的艺术提升到了一个新的高度。他证明了即使在这些强大的法师们所创造的宏大叙事之后,还有新的故事等待被讲述,还有新的魔法等待被探索。而这个领域的探索者们仍然在往更深远的未知中迈进,寻找着将理论和实践结合起来的新的方法,以期达到更为完美的创造力。
(说了这么多,实际上这里就看着乐,我也放松一下,只要记得扩散模型只是VAE的变种就好了。)
然而DPM在图像生成质量和采样速度上存在许多不足,并未受到广泛关注。直至2020年,伯克利大学的Jonathan Ho等人提出了去噪扩散概率模型(DDPM)。DDPM改善了DPM的缺点,并在图像合成效果上超越了先前的生成模型,如生GAN、VAE、基于流的模型(Flow-based Models)和基于能量的模型(EBM)。
我们下面所讲的也是DDPM。

在这里插入图片描述

DDPM分为正向过程和反向过程两个阶段。如上图所示,正向过程和反向过程对应VAE中的编码和解码。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/8447.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

52页 | 2024大型语言模型行业图谱研究报告(免费下载)

【1】关注本公众号,转发当前文章到微信朋友圈 【2】私信发送 【2024大型语言模型行业图谱研究报告】 【3】获取本方案PDF下载链接,直接下载即可。 如需下载本方案PPT原格式,请加入微信扫描以下方案驿站知识星球,获取上万份PPT解…

STC8增强型单片机开发——库函数

一、使用库函数点灯 导入库函数。 下载STC8H的库函数:📎STC8G-STC8H-LIB-DEMO-CODE_2023.07.17_优化版.zip 来到库函数的目录下,拷贝以下文件: Config.hType_def.hGPIO.hGPIO.c 新建项目,将拷贝的4个文件放到项目目录…

WEB基础--JDBC操作数据库

使用JDBC操作数据库 使用JDBC查询数据 五部曲:建立驱动,建立连接,获取SQL语句,执行SQL语句,释放资源 建立驱动 //1.加载驱动Class.forName("com.mysql.cj.jdbc.Driver"); 建立连接 //2.连接数据库 Stri…

【Android】Room数据库的简单使用方法

Room数据库的使用方法 目录 1、添加Room数据库的依赖2、Entity——定义实体类 2.1 定义主键——PrimaryKey2.2 字段注解——ColumnInfo 3、Dao——定义数据访问对象4、Database——数据库 4.1 通过回调观察数据库是否创建成功 5、使用时注意点6、编写异步 DAO 查询 6.1 写异步…

【CSS】认识CSS选择器及各选择器对应的用法

目录 一、什么是CSS? 二、CSS 选择器 1. 标签选择器 2. 类选择器 3. ID选择器 4. 通配符选择器 5. 复合选择器 一、什么是CSS? CSS(Cascading Style Sheet),层叠样式表。它与 HTML(超文本标记语言)一起使用&am…

Django-新冠疫情数据分析系统-67684

目 录 摘要 1 绪论 1.1 研究背景 1.2论文结构与章节安排 2 新冠疫情数据分析系统系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据增加流程 2.2.2 数据修改流程 2.2.3 数据删除流程 2.3 系统功能分析 2.3.1 功能性分析 2.3.2 非功能性分析 2.4 系统用例分析…

2024.5.8 2.二叉树的最大深度 (简单)

给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:3 示例 2: 输入:root [1,null,2] 输…

批量图片重命名及汇总

又一堆图片文件需要处理... 源文件分布: 有N个文件夹,每个文件夹下又有M个子文件夹,每个子文件夹下有X张图片。 例如文件夹A下有子文件夹A1,A2,A3,子文件夹A1下有图片a-1,a-2,a-3...... 处理目标: 1、将所有图片汇…

五月最新流行音乐网,整点干货(10个网站)听歌就要自由!

随着互联网的迅猛发展,音乐产业也迎来了前所未有的变革。如今,我们无需再依赖传统的唱片店或电台,就能轻松接触到来自世界各地的音乐。而“最新流行音乐网”正是这一变革的产物,为广大音乐爱好者提供了一个探索音乐潮流的新天地。…

将大概的流程具体还是看源码

之前看源码的时候呢没有文字整理,想来还是写一个大概的流程吧,具体是无法用文字描述 spring源码真的yyds,数据结构 反射 父子类 接口…玩得溜到飞起 博大精深呐 后期不断喜欢ing! springApplication.run方法 获取了一个Configu…

无刷电机和有刷电机的区别

无刷电机和有刷电机的区别 无刷电机的定子上绕着线圈,线圈通常是成对出现的,通过控制电路为每一对线圈按照一定顺序输入电流,就可以产生旋转的磁场 它还有一个永磁体转子,现在多采用高磁能级的稀土铷铁硼材料,体积更小…

DBdoctor产品介绍

基本信息 DBdoctor是聚好看科技股份有限公司自主研发的一款数据库内核级性能诊断工具,首次将eBPF技术聚焦在了数据库领域,一分钟内定位数据库性能问题并给出优化建议,实现数据库性能诊断百倍提效。 免费下载 请在PC端打开以下链接&#x…

ps5电玩计时收费系统软件教程,电玩店适合的计时器,电脑定时语音提醒

ps5电玩计时收费系统软件教程,电玩店适合的计时器,电脑定时语音提醒 一、前言 以下软件操作教程以,佳易王电玩计时计费管理软件为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 1、计时计费功能:只…

【日志革新】在ThinkPHP5中实现高效TraceId集成,打造可靠的日志追踪系统

问题背景 最近接手了一个骨灰级的项目,然而在项目中遇到了一个普遍的挑战:由于公司采用 ELK(Elasticsearch、Logstash、Kibana)作为日志收集和分析工具,追踪生产问题成为了一大难题。尽管 ELK 提供了强大的日志分析功…

Spring:OAuth2.0

文章目录 一、认证与授权二、OAuth2.0介绍 一、认证与授权 认证(Authentication)与授权(Authorization)在网络安全和系统管理中是两个重要的概念,它们各自有不同的作用和目标。 认证是验证确认身份以授予对系统的访问…

RAG解决方案:解决LLM大模型私域数据缺失问题

目前LLM大模型是一种预训练模型(训练完成后 信息就会截止),那么在获取最新数据和私域数据时候,LLM会有无法给出相关回答的问题。 那么RAG方案可以一定程度上解决这个问题。 用户搜索后,会先在检索系统中检索,然后再把问题和私域数…

夏天一到,手机越用越烫?怎样降低持久使用手机时的温度?

夏季来临,手机的温度也随着使用环境的温度升高变得更容易发热。 虽说属于正常的物理现象,但手机过热用起来还是不太舒服,还容易出现过热提醒,导致除“拨号”和“联系人”外,无法使用其它应用。 分享几个减少功耗的小技…

JAVA版本的ATM编程问题记录

前段时间用C语言写了个银行ATM系统,还写了一篇文章记录了一些,C语言的ATM文章。后来又用IDEA写了一个JAVA版本的银行ATM。有人就会问为啥浪费这个时间写ATM呢?🧐其实是我本科代码没学好,所以现在想利用比较熟悉的ATM系…

Spring Web MVC 快速入门

🎥 个人主页:Dikz12🔥个人专栏:Spring学习之路📕格言:吾愚多不敏,而愿加学欢迎大家👍点赞✍评论⭐收藏 目录 什么是Spring MVC? MVC模式介绍 ​编辑学习Spring MVC…

node.js对数据库mysql的连接与操作(增、删、改、查、五种SQL语法)

前提:先在vscode终端下载安装mysql:npm install mysql -save 步骤总结: (1)建立与数据库的连接 (2)做出请求: 实际上就是操作mysql里的数据。增删改查 insert、delete、updata、select (3)通过回调函数获取结果 一、什么是SQ…