Denoising Diffusion Probabilistic Models 全过程概述 + 论文总结

标题:Denoising(🌟去噪)Diffusion Probabilistic Models(扩散概率模型)

论文(NeurIPS会议 CCF A 类):Denoising Diffusion Probabilistic Models

源码:hojonathanho/diffusion: Denoising Diffusion Probabilistic Models (github.com)

推荐课程:大白话AI | 图像生成模型DDPM | 扩散模型 | 生成模型 | 概率扩散去噪生成模型_哔哩哔哩_bilibili

论文铺垫:

1、高斯正态分布函数(正态分布)

如下图所示,为正态分布的概率密度曲线,俗称 "钟形曲线" : 

其中, f(x) 为概率密度(无实际含义),x 为随机变量。e 和 π 为常量(就是那两个值)。μ 为随机变量的平均值,名为期望,是钟形曲线的 "对称轴"。σ 为为随机变量的标准差,名为方差。μ 和 σ 决定了钟形曲线的位置和形状,因此只需要确定μ 和 σ 就可以确定正态分布函数的概率密度函数。所以,正态分布函数也常表示为 N(\mu, \sigma^2) ,N表示 Normal(正态)。概率密度曲线和x轴之间合围的面积区域表示随机变量区间内发生的概率

2. 高斯噪声

期望 μ 为0,方差 σ 为1的正态分布,为标准正态分布 N(0,1) 。从一个标准正态分布中 "随机抽取" 样本,生成一组符合该分布的随机变量值,这样一组变量就叫做 "标准正态分布随机变量" ,在用于制造向数据中添加的噪声时,也叫做 "高斯噪声"。这样一组随机变量值,即是 "高斯噪声值"。

3. 扩散现象和扩散模型 

当一滴墨水滴入水中时,随着时间的推移,由于分子之间的碰撞和热运动,墨水分子开始向周围扩散。

扩散模型受到这种现象的启发,通过逐步向图片中添加高斯噪声来模拟这种现象(最终图像会变成一张符合N(0,1) 的纯噪声),并通过逆向过程逐步从噪声中生成图像(通过模型学习去噪过程)。

这样做的好处在于,一个训练好的完备的模型可以通过逆向过程从任意的符合 N(0,1) 的纯噪声中生成图像,使得生成样本具有较高的质量和多样性。

4. 扩散模型的前向过程(加噪过程)

那么,扩散模型 的具体加噪过程,应该怎么实现呢?

首先,为加噪图片创造出一张等大小的高斯噪声图片。

通过以下公式实现高斯噪声图片与输入图像的混合:

其中,x 为输入图像,ϵ 为等大小的高斯噪声图片 ,β 为产生 x 和 ϵ 系数的参数值(β 仅仅只是一个参数值,用于调和高斯噪声和输入图像的混合比例)。

如上图所示,加噪的过程是一个连续的,具有稳定时间步数的过程,且每一步加噪结果仅依赖于上一步的样本,这便是一个马尔可夫链。(  简述马尔可夫链【通俗易懂】)

以上图为例,可以得到一个🌟新的公式,如下所示:

其中,加噪所使用的噪声 \epsilon _t 是基于标准正态分布 \epsilon_t\sim N(0,1) 随机采样得来的。\beta_t \in (1,0) 并且随着步数逐渐增大,因为扩散速度是越来越快的。

5. 高斯函数叠加 和 重参数化技巧(扩散模型的前向过程的继续推导)

在得出上述公式之后,我们仅需要知道高斯函数叠加公式( \epsilon _t 符合标准高斯分布 \epsilon_t\sim N(0,1) ),就能知道最终加噪结果。

简单来讲,🌟给定两个高斯分布 X\sim N(\mu_{1} , \sigma_{1} ^{2}) 和 Y\sim N(\mu_{2} , \sigma_{2} ^{2}) 进行叠加,则它们叠加后的分布 aX+bY 满足:


那么继续 扩散模型的前向过程 的推导,首先,为了方便计算,令 β =1 - α :

代入 X_{t-1} : 

已知 \epsilon_t\sim N(0,1) ,根据高斯函数叠加公式:

🌟重参数化,得

(没错,这便是重参数化,在数学中仅仅只是一个将高斯函数简式表示重整为等式的方法。但是在梯度传播过程中,由于 \epsilon _t 是随机采样得来的,那么与之对应的加噪样本 X_{t} 也是随机生成的,这样的样本在 前向过程 的每个阶段都存在,导致梯度无法传播。通过重参数化,随机采样的噪声 \epsilon _t 被压缩到只有一个 \epsilon ,这样一个随机噪声生成之后不会再变,与之对应的加噪样本也不会再变,对梯度传播不会产生影响 

重复上述过程可得: 

其中a_t a_{t-1} a_{t-2}...a1很长,为了方便表达,用 \bar{\alpha }_t 代替:

最后,我们得到了最终加噪结果。

不难看出,最终加噪结果 xt 是由 x0 直接得出而来的(重参数化)。这是"迫于"随机采样导致梯度无法传播而做的选择。(也不好说,这种做法,说不定效果更优呢)。

 6. 贝叶斯公式和反向过程

贝叶斯公式,如下: 

其中,A、B 表示随机事件A和随机事件B。P(A) 和 P(B) 表示事件A和事件B发生的概率。P(B|A) 表示A事件发生的情况下B事件发生的概率。P(A|B) 表示B事件发生的情况下A事件发生的概率。贝叶斯公式强调 “已知结果找原因”。P(A) 是先验概率,P(A|B) 是后验概率。

(🌟同样,贝叶斯是可以求取后验概率分布,因为某一类的概率和某一类的概率分布只是定义上不同,本质上都是概率对不同事件的划分)


反向过程推导 

🌟由于在前向过程中从前一时刻向后一时刻加入的是根据正态分布随机采样的噪声,所以从 X_t 到 X_{t-1}也应该是一个随机过程,我们无法简单地预测 X_t 到 X_{t-1}的样本和具体的噪声值,但是我们可以通过贝叶斯公式大致地推测出给定 X_t 条件下 X_{t-1} 噪声的概率分布。(注意,这里已知的X_t 条件,是指最终加噪结果X_t 的噪声的概率分布 \epsilon \sim N(0,1 - \bar{\alpha} ) )

由贝叶斯公式得:

表示为由x0原图 “得到” 作为条件,得:

其中,P(x_{t-1}| x_t,x_0) 表示在给定Xt的情况下得到X_{t-1}的概率(反向过程中),P(x_t| x_{t-1},x_0) 表示在给定X_{t-1}的情况下得到Xt的概率(正向过程中),P(x_t|x_0) 从X0原图得到Xt的概率,P(x_{t-1}| x_0) 从X0原图得到X_{t-1}的概率。(这里概率都指的得到对应概率分布的概率)。

由正向过程给出的推断式可得,P(x_t| x_{t-1},x_0)P(x_t|x_0)P(x_{t-1}| x_0) 对应正态分布表达式分别如下所示:

代入 高斯正态分布函数 可得:

代回贝叶斯公式,得

这样,我们就可以推测出给定 X_t 条件下 X_{t-1} 噪声的概率分布。其中 X_t 是正向过程中最终得加噪结果,\bar{\alpha } 和 \beta 是无实际含义的参数,\epsilon 是从一个标准正态分布中 "随机抽取" 的噪声样本。🌟而 \epsilon 是图像去噪的关键,只有找到与正向过程一致或接近的随机采样噪声值(噪声的概率分布已推测出)才能顺利还原图像,🌟 \epsilon 由神经网络模型进行学习输出(只学习这个值)。

不断重复上述过程,最终得到原输入 X0 。如下图所示(该图只是一个大概过程,并不符合事实):

在推测出每个阶段的噪声的概率分布后,神经网络模型不断地学习优化 \epsilon 。 

一、摘要

研究动机:本文提出使用扩散概率模型得到高质量图像的合成结果,这是一类受非平衡热力学考虑启发的潜在变量模型。

主要工作:本文的最佳结果是通过在 加权变分界 上进行训练获得的,该变分界是根据 扩散概率模型 和与Langevin动力学匹配的 去噪分数 之间的新联系设计的,并且本文的模型自然地允许 渐进有损解压缩方案 ,可以解释为自回归解码的推广。(目标函数:变分推断,KL散度 + 模型:扩散概率模型和去噪分数 + 采样方式:渐进式编码和渐进式解码

实验结果:在CIFAR10数据集上,本文方法获得了9.46的Inception分数和3.17的最新FID分数。在256x256 LSUN上,本文方法获得了类似ProgressiveGAN的样品质量。

二、引言

相关工作概述( 生成对抗网络(gan)、自回归模型、流和变分自编码器(VAEs) ) —> 扩散概率模型概述( “扩散模型”是一个参数化的马尔可夫链,使用变分推理进行训练 + 正向过程概述 + 反向过程概述 )—> 模型效果概述+ 扩散模型某些参数化设计 +采样方式概述

三、主要方法

扩散模型是形式为 p_\theta (x_0):= \int p_\theta (x_{0:T}) dx_{1:T} 的隐变量模型,其中x1,…,xT是与数据x0 ~ q(x0)相同维数的潜变量。

反向过程定义(逆扩散过程)联合分布 p_\theta (x_{0:T}) 被称为反向过程,它被定义为一个马尔可夫链,其中学习高斯转移从 p(x_T) = N(x_T;0, I) 开始:

p_\theta 表示噪声的概率分布。这里左半部分 p_\theta (x_{0:T}) 是 的简化,是 x0,…,xT 的联合密度函数,表示给定xT ,…, x1条件下x0 噪声的概率分布(这是一个逆向推断的过程,推理到x0时,xT ,…, x1的噪声的概率分布已全部给定)。右半部分 p_\theta (x_{t-1}|x_t):= N(x_{t-1};\mu _\theta (x_t, t),\Sigma _\theta(x_T,T)) 表示给定 X_t 条件下 X_{t-1} 噪声的概率分布

前向过程定义(扩散过程):扩散模型与其他类型的隐变量模型的区别在于,近似后验 q(x_{1:T}|x_0) ,称为前向过程或扩散过程,固定在一个马尔可夫链中,逐渐向数据中添加高斯噪声根据方差 β1, . . ., βT:

 β 表示原图与噪声的混合比例(详情看论文铺垫部分)。

优化函数:在训练过程中使用负对数似然的变分界限进行优化:

 对𝑝𝜃(𝑥0) 的最大似然估计进行优化。

任意时刻的 xt 可以由 x0 和 β 表示:正向过程的一个显著特性是,它允许在任意时间步长 t 上以闭合形式对 xt 进行采样:使用符号 \alpha _t:= 1-\beta_t 和 \bar{\alpha }_t:=\sum^t _{s=1} \alpha _s ,有

 对应论文铺垫前向过程中最后一部分。由重参数化实现。

四、实验

实验细节:为所有实验设置T = 1000,以便采样期间所需的神经网络评估数量与之前的工作相匹配。将正向过程方差设置为常数,从\beta_1 = 10^{-4}到 \beta_T = 10^{-4} 线性增加。在实验中 L_T = D_{KL}(q(x_T|x_0) || N(0, I)) \approx 10^5  。为了表示反向过程,使用类似于未掩码的PixelCNN+的U-Net骨干,并始终进行group normalization。参数是跨时间共享的,使用Transformer正弦位置嵌入对网络进行指定。在16 × 16特征图分辨率上使用自注意力。

4.1 图片生成质量

在 CIFAR10 数据集上, 在训练集上,无条件模型 FID 分数达到 3.17;在测试集上 FID 分数为5.24,图片质量超过其他模型。

4.2 损失函数比较

简化损失函数的影响,结果如下表:

五、结论

1. 主要工作:本文发现了扩散模型和变分推断之间的联系,用于训练马尔可夫链、去噪分数匹配、自回归模型和渐进损耗压缩。

2. 实验效果:在 CIFAR10 数据集上, 在训练集上,无条件模型 FID 分数达到 3.17。在测试集上 FID 分数为5.24,图片质量超过其他模型。

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

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

相关文章

卡特兰数-

是组合数学中一种常出现于各种计数问题中的数列。 一、简单介绍 卡特兰数是一个数列,其前几项为(从第零项开始) : 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, 129644790, 47763…

澳大利亚.德国-新闻媒体投放通稿:发表新闻稿需要留意哪些地方-大舍传媒

概述 当我们想要发布新闻稿时,了解目标媒体的特点和要求是至关重要的。本文将介绍澳大利亚和德国的新闻媒体,以及在撰写和投放新闻稿时需要注意的要点,以帮助您更好地与目标受众沟通。 澳大利亚媒体 澳大利亚是一个多元化的国家&#xff0…

Android ListView鼠标模式下ListView回滚问题

概述 在 Android 应用程序中,ListView 是一种常用的控件,用于显示可滚动列表数据。然而,当在鼠标操作模式下使用 ListView 时,可能会遇到一个问题:点击列表项时,列表会回滚到指定位置,这可能会导…

【ML Olympiad】预测地震破坏——根据建筑物位置和施工情况预测地震对建筑物造成的破坏程度

文章目录 Overview 概述Goal 目标Evaluation 评估标准 Dataset Description 数据集说明Dataset Source 数据集来源Dataset Fields 数据集字段 Data Analysis and Visualization 数据分析与可视化Correlation 相关性Hierarchial Clustering 分层聚类Adversarial Validation 对抗…

OFDM通信中的部分内容

纠错编码:在无线通信过程中由于传输过程存在噪声等各种非理想因素,在接收端接收到的信息往往相对于发射信息存在误码,通过纠错编码方式可以对少数非连续的误码进行判断和纠正。举个简单的例子,发射端可能发射的信息为00,01,10,11,…

二叉搜索树的后序遍历序列

二叉搜索树的后序遍历序列 背景题目描述题解 背景 每次重复刷到这题都没有思路,看答案也总需要理解一会,但是下次又忘了,哈哈哈,因此记录一下思路. 题目描述 牛客地址: https://www.nowcoder.com/practice/a861533d45854474ac791d90e447bafd 描述 输入一个整数数…

网络应用层之(1)DHCPv6协议

网络应用层之(1)DHCPv6协议 Author: Once Day Date: 2024年5月26日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 全系列文章可参考专栏: 通信网络技术_Once-Day的博客-C…

如何从头搭建一个自己的java库并上传到maven官方仓库

创建代码 在代码库根目录执行maven命令,用于快速生成一个基础的Maven项目 mvn archetype:generate \-DgroupIdcom.mycompany \-DartifactIdmy-maven-project \-Dversion1.0.0 \-DarchetypeArtifactIdmaven-archetype-quickstart \-DinteractiveModefalse 这个命令…

分享一个用AI降本的思路,不懂代码也能上手

如何用AI解决实际的业务问题? 生财圈友我来利用ChatGPT做算法建模,每年为公司省下6万元。 今天他将分享通过ChatGPT进行数据分析的思路,从最开始定义问题到最终数据论证。 上手的实操过程门槛并不高,但可以实现把官方电商平台的…

c++ 虚函数常见问题

1 虚函数,虚表基础 虚函数,虚表基础 2 虚函数表保存在哪里 ? 虚函数表在编译的时候确定。在 linux 下,保存在只读数据段的重定位段,这个段的名字是 .data.rel.ro。 如下代码,编译之后,使用 readelf -t a…

仿《Q极速体育》NBACBA体育直播吧足球直播综合体育直播源码

码名称:仿《Q极速体育》NBACBA体育直播吧足球直播综合体育直播源码 开发环境:帝国cms7.5 空间支持:phpmysql 仿《Q极速体育》NBACBA体育直播吧足球直播综合体育直播源码自动采集 - 我爱模板网源码名称:仿《Q极速体育》NBACBA体育直…

网络攻防概述(基础概念)

文章目录 APTAPT概念APT攻击过程 网络空间与网络空间安全网络空间(Cyberspace)网络空间安全(Cyberspace Security) 网络安全属性机密性(Confidentiality或Security)完整性(Integrity)可用性(Availability)不可否认性(Non-repudiation&#xf…

如何学习计算机网络(超详细,方法论)

分享一下学习计算机网络的方法论 首先是看视频: 这里我推荐中科大郑烇、杨坚全套《计算机网络(自顶向下方法 第7版》课程 课程目标_哔哩哔哩_bilibili 教材采用神书《计算机网络(自顶向下方法)》,授课风格更偏向实…

企业如何正确地利用LLM大模型?

大型语言模型 (LLM) 不值得信任。就是这样。 考虑到它们先进的 AI 能力以及当今强大的基础模型的普遍知识,这似乎是一件令人惊讶的事情。然而,问题的关键在于 LLM 无法解释其输出。你不能信任 LLM 的结果,不是因为它不准确,而是因…

无畏并发: Rust Mutex的基本使用

并发是很多编程语言避不开的一块主要内容,主打一个无畏并发的Rust自然也面临这样的挑战。Rust中的Mutex提供了强大的同步原语,确保共享数据的线程安全,这篇文章中,我们会探讨Mutex的使用,从基础的用法到一些高阶内容。…

2024电工杯B题平衡膳食食谱的优化设计及评价原创论文分享

大家好,从昨天肝到现在,终于完成了2024电工杯数学建模B题的完整论文啦。 实在精力有限,具体的讲解大家可以去讲解视频: 给大家看一下目录吧: 目录 摘 要: 10 一、问题重述 14 二.问题分析 …

Python学习---基于HTTP的服务端基础框架搭建案例

整体功能: 1 创建框架构建相关的文件夹 2 创建app,模块文件 3 在 app模块文件中创建application函数(用于处理请求) 4 将request_handler()中的处理逻辑交由app模块的application函数完成 5 app模块的 application函数返回响应报文 6 在application 文件夹中创建一个…

淘工厂订单导出自动化工具

目录 下载安装与运行 主要目的 其他工具的弊端 本工具的优势 视频演示 下载新版后的注意事项 支持的导出项 什么叫一单多拍 常见问题 如何实现快捷登录 导出卡住时如何操作 如何精确导出 下载安装与运行 下载、安装与运行 语雀 主要目的 导出订单信息&#xf…

知识分享:隔多久查询一次网贷大数据信用报告比较好?

随着互联网金融的快速发展,越来越多的人开始接触和使用网络贷款。而在这个过程中,网贷大数据信用报告成为了评估借款人信用状况的重要依据。那么,隔多久查询一次网贷大数据信用报告比较好呢?接下来随小易大数据平台小编去看看吧。 首先&…

某钢铁企业数字化转型规划案例(114页PPT)

案例介绍: 该钢铁企业的数字化转型案例表明,数字化转型是钢铁企业应对市场竞争、提高生产效率、降低成本、优化资源配置和降低能耗排放的重要手段。通过引入先进的技术和管理理念,加强员工培训和人才引进,企业可以成功实现数字化…