生成式 AI - Diffusion 模型的数学原理(5)

来自 论文《 Denoising Diffusion Probabilistic Model》(DDPM)
论文链接: https://arxiv.org/abs/2006.11239
Hung-yi Lee 课件整理

在这里插入图片描述
讲到这里还没有解决的问题是,为什么这里还要多加一个噪声。Denoise模型算出来的是高斯分布的均值,做sample的时候考虑需要加上一个噪声,代表说考虑高斯分布的方差这一项。为什么不直接取均值呢?
在这里插入图片描述
同样的问题你也可以问,为什么语言模型在产生问句的时候,一定要做sample,为什么我们先产生一个有可能的分布,再从这个分布中sample出文字呢?取概率最大的就行,有人说做sample的好处是你每次问同一个问题,chatgpt的答案都不一样,当你问某个人有没有打疫苗,chatgpt有时候会说有有时候会说没有,就可以制造很多假新闻。
为什么一定要这样呢,为什么不能固定住去概率最大的呢?让模型每次都回答概率最大的句子,为什么需要有随机性?

在这里插入图片描述
这个问题之前就有人提出来了,这篇文章发现如果取概率最大的句子和词汇,那么输出的结果会是不断重复的句子,机器就会不断地跳帧,讲重复的话,虽然做sampling机器会说一些奇怪的话,和跳帧比起来sample的结果更好,为什么呢?他做了一个分析。
在这里插入图片描述
我们来看看人写的句子吧,橙色的线代表的是人写的句子,右边是人写的一篇文章,用我们的语言模型来计算人写的每一个单词的概率,发现人写出来的文章用字遣词并不是选概率最大的词汇。
我们让机器每一步都产生概率最大的词汇,发现它一直在不断地讲重复的话。
在做生成模型的时候概率最大的结果未必是最好的结果。
这是在文字上的观察。

在这里插入图片描述
实际上在语音合成模型上也有类似的规律。
在语音合成模型的推理阶段使用dropout效果很好,这个和我们想象的不太一样,我们一般是在训练阶段过拟合的时候才加dropout。
这篇文章里写到,为了引入输出结果的多变性,在推理的某一层加了dropout。

在这里插入图片描述
diffusion 模型其实是一种自回归模型,自回归的模型是一次到位,这样通常产生的结果不够好,我们把它改成N次到位,这就是diffusion模型的概念。
所以在做Denoise的时候就好比是自回归里面的一个step,在做自回归的时候每个step我们都要加一点噪声,加一点随机性结果才会好,所以在做Denoise的时候我们要加一点随机性,这样结果才会好。
在这里插入图片描述
李教授找助教做实验验证了,如果像论文里一样加噪声会生成小女孩头像这样正常的图片,把噪声去掉就只会产生一张黄色的图片。

在这里插入图片描述
到这里就是diffusion模型的全部玄机了。
训练的时候为什么不是一次一次地加噪声,顺便讲了什么sampling的时候需要加噪声。

在这里插入图片描述
diffusion模型不是只用在图像上,在语音合成任务上也可以。
这里没有什么好讲的,和图像几乎是一样的,图像的输入是2维的,在语音上变成了1维的,从一个完全高斯的杂训一步一步做Denoise,把它变成一段声音。
其中比较知名的方法就是WavGrad
基本上和DDPM没有什么差别。
在这里插入图片描述
但是把diffusion模型直接用在文字上就很困难了,我们没办法直接在文字上加噪声,文字是描述性的,没把法在描述性的东西上加噪声让它看不出来是什么。
有一些提法是把噪声加在word embedding上,就这样。
有几篇论文这样做的,比如diffusion-LM。
在这里插入图片描述
还有这篇论文 DiffuSeq,它是一个seq2seq的模型,是在latent representation上加噪声。

在这里插入图片描述

还有这篇论文,假设加高斯噪声是不行的,能不能加其他类型的噪声加到文字上?
这篇论文里面的噪声分布全部都是 [ m a s k ] [mask] [mask],然后再慢慢把有 [ m a s k ] [mask] [mask]的地方填充回来。

写在最后
diffusion模型最大的成功是把自回归的一步到位改为了N步到位。

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

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

相关文章

【VTKExamples::PolyData】第三十八期 Outline

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 前言 本文分享VTK样例Outline,并解析接口vtkOutlineFilter,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~YO 1. Outline // Create…

Sora的潜力与影响:对视频制作、广告、娱乐等行业的深度解析

随着技术的飞速发展,OpenAI推出的Sora模型已经引起了广泛关注。作为一款强大的视频生成工具,Sora不仅改变了视频制作的传统模式,更对广告、娱乐等多个行业产生了深远影响。本文将深度解析Sora的潜力与影响,探讨其在视频制作、广告…

Python自定义logger模块(附Demo)

目录 1. 内置logger2. 自定义logger 1. 内置logger Python标准库中的logging模块提供了日志记录的功能 允许开发者通过创建日志记录器、处理程序和格式化器来控制日志的生成和输出 以下是logging模块的一些主要组件和概念: 日志记录器 (Logger):整个…

Canvas动画之豌豆射手

🌹作者主页:青花锁 🌹简介:Java领域优质创作者🏆、Java微服务架构公号作者😄 🌹简历模板、学习资料、面试题库、技术互助 🌹文末获取联系方式 📝 往期热门专栏回顾 专栏…

Fl Studio 20.9.2.2963 中文破解版2024永久版下载(含Keygen)

FL Studio20.9是一款流行的图像线软件制作和编辑音频文件。作为一款领先的创新产品,该软件能够满足在创作音乐方面的需求。有了这个产品,可以完成制作音乐的整个过程。可以使用这个软件进行写作,编辑,录音,编辑和混合和…

DP读书:《工程热力学(第二版)》(一)绪论——能量及其利用

DP读书:《工程热力学(第二版)》绪论 0.1 能量及其利用 热力学——研究对象:能量 能量 物质能量传递 普遍规律 能源:直接提供能量的物质资源 一次能源:热能占比85% 直接利用——>冶金、采暖、炊煮 …

2024Node.js零基础教程(小白友好型),nodejs新手到高手,(九)NodeJS入门——http模块

060_http模块_网页URL之绝对路径 hello,大家好,这一个小题的话我们来补充一个之前学习过的内容,就是网页当中的URL,咱们这个小题的话主要是来说一下绝对路径,有同学可能会说,这这这,不对劲&…

抽象的后端

Connection refused: no further information 出现这条代码的核心是你使用redis&#xff0c;但是本地没有开启redis服务 如何启动redis服务 第一步&#xff1a;确定你安装了对应的框架 以spring为例 <dependency><groupId>org.springframework.boot</group…

架构设计实践:熟悉架构设计方法论,并动手绘制架构设计图

文章目录 一、架构设计要素1、架构设计目标2、架构设计模式&#xff08;1&#xff09;分而治之&#xff08;2&#xff09;迭代式设计 3、架构设计的输入&#xff08;1&#xff09;概览&#xff08;2&#xff09;功能需求 - WH分析法&#xff08;3&#xff09;质量 - “怎么”分…

卡玛网● 46. 携带研究材料 ● 01背包问题,你该了解这些! 滚动数组 力扣● 416. 分割等和子集

开始背包问题&#xff0c;掌握0-1背包和完全背包即可&#xff0c;注&#xff1a;0-1背包是完全背包的基础。 0-1背包问题&#xff1a;有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i]&#xff0c;得到的价值是value[i] 。每件物品只能用一次&#xff0c;求…

Windows计划任务执行日志和文件输出路径修改

在日常工作中&#xff0c;针对需重复执行的操作&#xff0c;通常都会使用系统的任务计划程序功能&#xff1b; 1、大家可以运行中&#xff0c;执行taskschd.msc来调用任务计划程序对话窗口&#xff0c;也可以在服务器管理的-工具菜单中-选择任务计划程序来调用对话窗口。 2、…

2024022502-数据库绪论

数据库绪论 数据管理的三个阶段 人工管理阶段 文件系统阶段 数据库系统阶段 基本术语 数据&#xff08;Data&#xff09; 计算机用来描述事物的记录&#xff08;文字&#xff0e;图形&#xff0e;图像&#xff0e;声音&#xff09;数据的形式本身并不能完全表达其内容&am…

宏景eHR DisplayFiles 任意文件读取漏洞复现

0x01 产品简介 宏景eHR人力资源管理软件是一款人力资源管理与数字化应用相融合,满足动态化、协同化、流程化、战略化需求的软件。 0x02 漏洞概述 宏景eHR DisplayFiles接口处存在任意文件读取漏洞,未经身份验证攻击者可通过该漏洞读取系统重要文件(如数据库配置文件、系统…

【PX4学习笔记】11.PX4飞行日志分析

目录 文章目录 目录日志分析的软件类型日志获取的方式官方网站PX4使用者官网推荐分析软件&#xff1a; 使用FIGHTPLOT软件分析日志FlightPlot软件的下载与安装使用flightplot软件进行简单的使用介绍log messagesFields List常用的数据姿态的四元数期望的姿态数据只看某一个数据…

Tomcat 学习之 Filter 过滤器

目录 1 Filter 介绍 2 Filter 的生命周期 3 Filter 和 FilterChain 4 Filter 拦截过程 5 FilterConfig 6 Filter 使用 1 Filter 介绍 在 Tomcat 中&#xff0c;Filter 是一种用于拦截请求和过滤响应的组件&#xff0c;可以在请求到达 Servlet 之前或响应离开 Servlet 之后…

C语言-程序环境和预处理

1.程序的翻译环境和执行环境 1.1翻译环境 1.2执行环境 2.预处理详解 2.1预定义符号 2.2#define 2.2.1#define定义标识符 2.2.2#define是否需要加上; 2.2.3#define定义宏 2.2.4#define替换 2.2.5#以及##的使用 2.2.6 带有副作用的宏定义 2.2.7宏定义与函数的比较 1.…

Three.js 基础属性

三维坐标系 辅助观察坐标系 THREE.AxesHelper()的参数表示坐标系坐标轴线段尺寸大小&#xff0c;你可以根据需要改变尺寸。 // AxesHelper&#xff1a;辅助观察的坐标系 const axesHelper new THREE.AxesHelper(150); scene.add(axesHelper);材质半透明设置 设置材质半透明…

【牛牛送书 | 第四期】《高效使用Redis:一书学透数据存储与高可用集群》带你快速学习使用Redis

前言&#xff1a; 当今互联网技术日新月异&#xff0c;随着数据量的爆炸式增长&#xff0c;如何高效地存储和管理数据成为了每个公司都必须面对的挑战。与此同时&#xff0c;用户对于应用程序的响应速度和稳定性要求也越来越高。在这个背景下&#xff0c;Redis 作为一个…

打包Docker镜像时候,ARG标签如何使用?

FROM registry.cn-qingdao.aliyuncs.com/dataease/fabric8-java-alpine-openjdk8-jre:edge-chromium-11这里这个标签如何使用 ARG IMAGE_TAGRUN mkdir -p /opt/apps /opt/dataease/data/feature/full /opt/dataease/drivers /opt/dataease/plugins/defaultADD core/mapFiles/fu…

Python炒股自动化(2):获取股票实时数据和历史数据

如果你是一位大佬&#xff0c;看我前面的分享即可&#xff0c;相信你有自己的思路&#xff0c;或者已经有了成熟的策略&#xff0c;你需要的只是API接口来实现你的想法&#xff0c;前面的分享是你需要的&#xff0c;这些是给刚开始接触程序交易的朋友分享的。 前面发了股票程序…