当前位置: 首页 > news >正文

【论文阅读笔记】Tackling the Generative Learning Trilemma with Denoising Diffusion GANs

【论文阅读笔记】Tackling the Generative Learning Trilemma with Denoising Diffusion GANs

  • Introduction
      • 方法
    • 使用传统GANS建模去噪分布
    • 理解模式覆盖率

Paper:https://arxiv.org/abs/2112.07804
Code:https://github.com/NVlabs/denoising-diffusion-gan
Authors:Nvlabs, Zhisheng Xiao, Karsten Kreis, Arash Vahdat

Introduction

在这里插入图片描述
主流生成模型(Generative Models)的优缺点以及它们在三个关键目标上的表现:高质量样本生成、模式覆盖和多样性、快速采样。

在本文中,我们通过重新制定去噪扩散模型来解决生成学习三引理,专门用于快速采样,同时保持强大的模式覆盖率和样本质量。

  1. 扩散模型通常假设去噪分布可以近似为高斯分布。然而,众所周知,高斯假设仅在小去噪步骤的无穷小极限中成立,这导致在反向过程中需要大量的步骤。
  2. 当反向过程使用更大的步长(即去噪步骤更少)时,需要一个非高斯多模态分布来建模去噪分布。直观地说,在图像合成中,多模态分布源于多个似是而非的干净图像可能对应于相同的噪声图像这一事实。

受这一观察的启发,我们建议使用富有表现力的多模态分布参数化去噪分布,以实现大步骤的去噪。特别是,我们引入了一种新的生成模型,称为去噪扩散 GAN,其中去噪分布用条件 GAN 建模

在图像生成中,我们观察到我们的模型获得了与扩散模型竞争的样本质量和模式覆盖率,同时只需要两个去噪步骤,与Song等人(2021c)在CIFAR-10上的预测器校正器采样相比,采样速度提高了约2000倍。与传统的GANs相比,我们表明我们的模型在样本多样性方面明显优于最先进的GANs,同时在样本保真度方面具有竞争力

总之,我们做出了以下贡献:

  1. 我们将扩散模型的缓慢采样归因于去噪分布中的高斯假设,并提出采用复杂的多模态去噪分布。
  2. 我们提出了去噪扩散 GAN,这是一种扩散模型,其反向过程由条件 GAN 参数化。
  3. 通过仔细评估,我们证明了去噪扩散 GAN 与当前的图像生成和编辑扩散模型相比实现了几个数量级的加速。我们表明,我们的模型在很大程度上克服了深度学习三引理,使得扩散模型首次以较低的计算成本适用于交互式的现实世界应用程序。

方法

扩散模型文献中的一个常见假设是用高斯分布近似 q ( x t − 1 ∣ x t ) q(x_{t−1}|x_t) q(xt1xt)。在这里,我们质疑这种近似何时是准确的
LSGM尝试使用 VAE 将数据编码到高斯分布,但仍然需要数百或数十步,而且数据分布压缩到高斯分布是十分困难的。

在本文中,我们认为当不满足任何条件时,即当去噪步长较大且数据分布为非高斯时,不能保证去噪分布的高斯假设成立。为了说明这一点,在图 2 中,我们可视化了多模态数据分布的不同去噪步长的真实去噪分布。我们看到,随着去噪步骤变大,真正的去噪分布变得更加复杂和多模态。
在这里插入图片描述
上图:一维数据分布 q(x0) 通过扩散过程的演变。底部:以固定的x5为条件的不同步长的真实去噪分布的可视化。**小步长(即q(x4|x5 = X))的真实去噪分布接近于高斯分布。**然而,随着步长的增加,它变得更加复杂和多模态。

使用传统GANS建模去噪分布

我们的目标是减少扩散模型反向过程中所需的去噪扩散步骤T的数量。受上述观察的启发,我们建议对去噪分布进行建模具有表现力的多模态分布。由于条件 GAN 已被证明可以对图像域的复杂条件分布进行建模(Mirza & Osindero,2014;Ledig 等人,2017;Isola 等人,2017),我们采用它们来近似真实去噪分布 q(xt−1|xt)。

具体来说,我们的正向扩散的设置类似于Eq. 1中的扩散模型,主要假设T很小(T≤8),每个扩散步长βt较大。我们的训练是通过使用对抗性损失匹配条件 GAN 生成器 pθ (xt−1|xt) 和 q(xt−1|xt) 来制定的,该对抗性损失最小化每个去噪步骤的散度 Dadv:

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

简而言之:
给定x0,前向加噪过程为 xt-1 到 xt;在扩散模型 xt 的基础上预测 x’0,随后将其加噪成 x’t-1;然后以 xt、xt-1(或 x’t-1)和 t 为条件输入到判别器网络中进行对抗性训练。

我们模型的一个自然问题是,为什么不仅仅是训练一个 GAN,它可以使用传统的设置一次性生成样本,而我们的模型通过迭代去噪生成样本。我们的模型比传统的 GAN 有几个优点。众所周知,GAN 存在训练不稳定和模式崩溃的问题(Kodali 等人,2017;Salimans 等人,2016),一些可能的原因包括难以直接从一次性的复杂分布中采样,以及鉴别器仅查看干净样本时的过拟合问题。相比之下,由于对 xt 的强条件作用,我们的模型将生成过程分解为几个条件去噪扩散步骤,其中每个步骤对模型相对简单。此外,**扩散过程平滑了数据分布(Lyu, 2012),使鉴别器不太可能过拟合。**因此,我们希望我们的模型表现出更好的训练稳定性和模式覆盖率。我们在第 5 节中凭经验验证了传统 GAN 的优势。

理解模式覆盖率

在这里插入图片描述
生成模型的结果是否可以 cover Real samples。

相关文章:

【论文阅读笔记】Tackling the Generative Learning Trilemma with Denoising Diffusion GANs

【论文阅读笔记】Tackling the Generative Learning Trilemma with Denoising Diffusion GANs Introduction方法 使用传统GANS建模去噪分布理解模式覆盖率 Paper:https://arxiv.org/abs/2112.07804 Code:https://github.com/NVlabs/denoising-diffusion-…...

常见 HTTP 状态码详解与Nginx 文件上传大小限制

在我们日常使用 Nginx 搭建网站或应用服务时,可能会遇到很多与文件上传和请求响应相关的问题。今天我们就来聊聊 如何限制文件上传的大小,并介绍一些常见的 HTTP 状态码 及其在 Nginx 中的处理方式。 一、文件上传大小限制 有时,我们需要限…...

在mac中使用numbers对数据进行分列(更详细的回答,已解决)

不想看我废话的同学直接看 “ 二、真正的方法 ” 不是抄袭不是抄袭,目前我能检索到的关于number分列的只有两篇回答,但我觉得有待补充,如果看不懂另外的回答,可以来看我的 这么问我猜大概率是Windows转macOS用户,不是…...

网格参数的应用和数学基础

引言 对于任意两个拓扑结构相似的表面,可以计算它们之间的一一对应映射。如果其中一个表面由三角形网格表示,那么计算这种映射的问题被称为网格参数化。映射到的表面通常被称为参数域。表面网格与各种域之间的参数化在计算机图形学和几何处理中有广泛的应…...

【Go】-基于Gin和GORM的小清单项目

目录 项目介绍 简介 技术 项目结构 项目分析 总结 项目介绍 简介 项目地址:knoci/list: 基于Gin的待办清单小项目 (github.com) 一个仿照github/Q1mi/bubble 做的一个gin框架练习 技术 gin 框架gorm 操作PostgreSQLini 配置文件 项目结构 list ├── R…...

【银河麒麟高级服务器操作系统】虚拟机服务器执行systemctl提示timeout——分析全过程及处理建议

了解更多银河麒麟操作系统全新产品,请点击访问 麒麟软件产品专区:https://product.kylinos.cn 开发者专区:https://developer.kylinos.cn 文档中心:https://documentkylinos.cn 现象描述 产品信息 产品名称 银河麒麟高级服务…...

【Unity错误】No cloud project ID was found by the Analytics SDK

在编译默认的URP 2D项目时,出现这样一个错误:No cloud project ID was found by the Analytics SDK. This means Analytics events will not be sent. Please make sure to link your cloud project in the Unity editor to fix this problem. 原因&…...

2. 变量和指令(omron 机器自动化控制器)——1

机器自动化控制器——第二章 变量和指令 1 2-1 变量一览表MC通用变量轴变量▶ 轴组变量 运动控制指令的输入变量输入变量的有效范围▶ 枚举体一览表 运动控制指令的输出变量运动控制指令的输入输出变量 2-1 变量一览表 MC功能模块使用的变量分为两类。 一类是监视轴等的状态及…...

gpt4最新保姆级教程

如何使用 WildCard 服务注册 Claude3 随着 Claude3 的震撼发布,最强 AI 模型的桂冠已不再由 GPT-4 独揽。Claude3 推出了三个备受瞩目的模型:Claude 3 Haiku、Claude 3 Sonnet 以及 Claude 3 Opus,每个模型都展现了卓越的性能与特色。其中&a…...

Java:继承和多态(1)

在 Java SE 中,继承和多态是面向对象编程(OOP)的两个核心概念。通过继承,子类可以复用父类的代码;而通过多态,子类可以在不修改父类的前提下定义自己的行为。这两者结合起来使得代码更具扩展性、灵活性和可…...

在RabbitMQ中四种常见的消息路由模式

1. Fanout模式 Fanout模式的交换机是扇出交换机(Fanout Exchange),它会将消息广播给所有绑定到它的队列,而不考虑消息的内容或路由键。 工作原理: 生产者发送消息到Fanout Exchange。Fanout Exchange会将消息广播给…...

Android 使用JSON动画:Lottie框架基本使用

Lottie是什么? GitHub的一种跨平台动画解决方案三方框架 使用? 3步 1.引入最新的依赖:https://github.com/airbnb/lottie-android 我写文章时最新版本是6.5.2 添加到 app/build.gradle 文件的以下方法中dependencies {//lottie 动画implementation com.airbnb.android:l…...

【SQL】百题计划 - SQL最基本的判断和查询。

[SQL]百题计划 Select product_id from Products where low_fats "Y" and recyclable "Y";...

C++学习笔记----6、内存管理(五)---- 智能指针(2)

书接上回! make_unique()使用值初始化。例如,将初始类型初始化为0,对象为缺省构造。如果不需要这样的值初始化,例如,因为不管怎么样你都会覆写共初始值,你就可以省略值初始化,通过使用make_uniq…...

游戏出海迎新变局——海外游戏市场有哪些新趋势和新机遇?

游戏出海的热度越来越高,也面临着竞争加剧、门槛提升、成本增加的现实环境,游戏出海有哪些新变化和新趋势? 移动游戏出海的主要海外市场 在海外市场分布方面,美日韩仍然是我国移动游戏重要的海外市场,占据了中国出海…...

【Unity踩坑】创建新项目后提示编译错误要进入安全模式

在创建了新项目后(比如URP,AR,VR),首次打开时提示有编译错误,要进入安全模式。 脚本是项目模板自带的,不会有问题。这时需要先选择进入安全模式,然后关闭项目,重新打开就…...

SpringBoot开发——整合Logbook进行HTTP API请求响应日志输出

文章目录 1. 简介依赖管理2. 实战案例2.1 基本用法2.2 结合Logback日志记录到文件2.3 自定义核心类Logbook2.4 自定义日志输出Sink2.5 与RestTemplate集成1. 简介 记录HTTP API请求响应日志对于监控、调试和性能优化至关重要。它帮助开发者追踪API的使用情况,包括请求来源、参…...

【嵌入式开发 Linux 常用命令系列 7.1 -- git log 只显示日期和主题(title)和commit id】

文章目录 git log 只显示日期和主题(title)和commit id示例其他日期格式选项 git log 只显示日期和主题(title)和commit id 要使用 git log 仅显示提交的日期、提交消息(title)和提交号(commit hash),你可以使用自定义…...

Android Radio2.0——交通公告状态设置(二)

通过前面的学习,我们知道在 Radio 广播中,交通公告(Traffic Announcement, TA)是一个比较重要的概念,它和交通广播(Traffic Radio)是相关的概念,但它们并不完全相同。 一、简介 1、概念介绍 交通公告 定义:交通公告是指在广播中插入的特别信息,通常是关于交通状况…...

用centos安装远程迅雷失败,重写程序做一台下载服务器

安装远程迅雷的时候,要不是安装包地址过期,就是出现64不兼容32的libz.so.1的包,而且32位的libz包也是好多网站过期。 没办法用仅有的python3,用flask搭建了一个小型的内网下载服务器,当然,只要路由器做映射…...

Mysql基础练习题 1407.排名靠前的旅行者(力扣)

编写解决方案,报告每个用户的旅行距离。 # 返回的结果表单,以 travelled_distance 降序排列 ,如果有两个或者更多的用户旅行了相同的距离, 那么再以 name 升序排列 。 题目链接: https://leetcode.cn/problems/top-travellers/d…...

一维稳态与非稳态导热的详细分析

目录 引言 一维稳态导热 应用实例:单层平壁导热 数值求解: 一维非稳态导热 应用实例:单层平壁的非稳态导热 温度变化阶段 表格总结: 引言 热传导(Heat Conduction)是热量在物体内部通过微观粒子的相…...

以太坊开发环境

1. 测试网络 可以使用以下命令将以太坊的 Go 语言客户端 Geth 连接到测试网络 [admindaolian ~]$geth --testnet 下图显示了示例输出,该图显示了所选网络的类型以及有关区块链下载的其他各种信息。 Geth 客户端的下载地址如下: https://geth.ethereum…...

深入理解Java虚拟机:Jvm总结-虚拟机字节码执行引擎

第八章 虚拟机字节码执行引擎 8.1 意义 不受物理条件制约地定制指令集与执行引擎的结构体系,能够执行那些不被硬件直接支持的指令集格式。输入的是字节码二进制流,处理过程是字节码解析执行的等效过程,输出的是执行结果 8.2 运行时栈帧结构…...

第十一周:机器学习

第十一周周报 摘要Abstract机器学习1. 注意力机制(下)1.1 multi-head self-attention(多头注意力机制)1.2 Positional Encoding(位置编码)1.3 truncated self attention(截断式注意力机制&#…...

碰撞检测 | 详解圆-矩形碰撞检测与N圆覆盖模型(附ROS C++可视化)

目录 0 专栏介绍1 N N N圆覆盖碰撞模型2 圆与矩形的碰撞检测3 算法仿真与可视化3.1 核心算法3.2 仿真实验 0 专栏介绍 🔥课设、毕设、创新竞赛必备!🔥本专栏涉及更高阶的运动规划算法轨迹优化实战,包括:曲线生成、碰…...

pandas读取Excel文件单元格中的百分数时保持数据格式及精度

pandas读取Excel文件单元格中的百分数时保持数据格式及精度 在使用Pandas读取Excel文件时,通常Excel中的百分数会被转换为浮点数。在这种情况下,如果你希望保留数据的格式和精度,有几个步骤可以帮助你实现这个目标: 读取数据:使用Pandas的read_excel函数来读取Excel文件。…...

【重学 MySQL】二十五、等值连接vs非等值连接、自连接vs非自连接

【重学 MySQL】二十五、等值连接vs非等值连接、自连接vs非自连接 等值连接(Equijoin) vs 非等值连接(Non-equijoin)等值连接(Equijoin)非等值连接(Non-equijoin) 自连接(…...

Springboot工程配置https访问

背景 因为前端工程使用nginx配置了https访问,在https直接请求我们Springboot后端的http接口会报错。那么我们就需要配置使得我们后端的springboot服务支持https访问。 证书生成 在配置springboot工程https之前,我们需要生成自签名证书以及Spring Boot…...

智慧水务建设的核心内容

智慧水务解决方案的主要对象客户是全国各地水务投资集团、水务局、水司、水厂、农水办,也会有少量项目涉及到住建局或城管局。解决方案通常会以具体的某个业务单位的职能工作为切入点,配合物联感知、大数据分析、人工智能等技术手段,为城市供水、乡村供水的水质安全、供水调…...