优化扩散模型中的采样计划

在生成模型领域,扩散模型(Diffusion Models, DMs)因其卓越的生成质量而成为最新的技术趋势。但这些模型的一个关键缺点是它们的采样速度较慢,需要通过大型神经网络进行多次顺序函数评估。扩散模型通过一个称为采样计划的离散噪声水平集来解决微分方程。尽管过去的研究主要集中在开发高效的求解器上,但很少有人关注寻找最优的采样计划。大多数现有工作都依赖于手工制定的启发式计划,如简单多项式和余弦函数。本文提出了一种新的框架,名为“Align Your Steps”(AYS),用于优化扩散模型中的采样计划,显著提高了输出质量,尤其是在仅进行少量步骤合成时。

AYS框架

AYS框架利用随机微积分方法,为不同的求解器、训练有素的DMs和数据集找到最优的采样计划。该框架基于所有随机SDE求解器都可以重新解释为在短间隔内精确求解近似线性化SDE的观察结果。通过将问题框架化为采样计划上的优化问题,使用随机微积分技术最小化近似线性SDE和真实生成SDE之间的不匹配。

使用AYS优化采样计划后,图像合成的细节得到了显著改善

AYS框架的核心在于它能够根据数据集的特性、所使用的模型以及选定的求解器,定制出最优的采样计划。这种定制化的方法是传统启发式采样计划所不具备的,后者通常依赖于简单的多项式衰减或余弦退火等规则。通过优化采样计划,AYS框架能够确保在给定的计算预算内,生成的样本尽可能地接近真实数据分布。

为了找到最优的采样计划,AYS框架采用了一种基于随机微积分的方法。它通过最小化真实生成的SDE(随机微分方程)与近似线性化SDE之间的Kullback-Leibler (KL) 散度上界(KLUB),来优化采样计划。这种方法允许研究者在不同的时间点调整采样计划,以确保生成过程的每一步都能够有效地逼近真实的数据生成过程。

AYS框架的另一个显著优势是其快速合成能力。在需要迅速生成高质量样本的应用场景中,AYS框架通过优化采样步骤,减少了生成过程中所需的前向评估次数,从而加快了整个合成过程。AYS框架还具有很好的通用性。它不仅限于特定的数据类型或模型架构,而是可以泛化到多种不同的扩散模型和求解器。无论研究者或开发者使用的是图像、文本还是视频数据,都可以利用AYS框架来优化他们的采样计划。

在实现上,AYS框架采用了迭代优化的方法。首先使用启发式方法初始化采样计划,然后通过迭代过程调整各个时间点,以最小化KL散度上界。这个过程可以高度并行化,因为各个时间点的优化可以独立进行。为了确保优化过程的稳定性和有效性,AYS框架还引入了早停机制。

优化采样计划

AYS优化采样计划的方法。它说明了通过最小化KL散度上界(KLUB)来找到最优的DM采样计划

在进行少步骤合成时,现有的采样计划可能导致显著的离散化误差,从而影响最终的输出质量。为了证明优化采样计划的必要性,研究者以一个简单的高斯数据分布为例,展示了如何通过解析方法得到最优采样计划,并发现该计划与文献中常用的启发式采样计划有显著不同。

比较了不同的采样计划。它展示了在高斯数据分布下,最优采样计划与文献中常用的启发式采样计划之间的差异

研究者使用Girsanov定理来分析离散化误差,该定理提供了两个共享扩散项的随机微分方程(SDEs)输出差异的上界。通过这个上界(KL-divergence Upper Bound, KLUB),研究者将寻找最优采样计划的问题转化为一个优化问题,就是最小化实际求解SDE/ODE时使用的离散采样计划与理论上无需离散化的逆向生成SDE之间的差异。

为了解决上述优化问题,研究者提出了一个迭代方法。该方法首先选择一个采样计划的索引,然后在其周围选择多个候选点,计算每个候选点的KLUB,并选择使KLUB最小的候选点作为优化后的采样点。这个过程可以高度并行化,特别是对于非邻近的索引。

为了减少方差并提高KLUB估计的准确性,研究者使用了针对时间t的重要性采样。通过假设高斯数据分布,并解析计算所有积分项,然后从与这些计算值匹配的概率密度函数中采样t,研究者显著降低了KLUB估计的方差。

在实践中,采样计划的优化是分层进行的。首先,使用启发式计划初始化一个10步的采样计划,然后迭代优化所有中间点,并使用早停机制避免过度优化。接下来,进行两轮细分和进一步微调,以获得40步的采样计划。在每次细分后,只优化新添加的中间点,而保持其他点固定。这使得采样计划的一般“形状”变得固定,从而在这些后期阶段不需要早停。

为了获得与[10, 20, 40]不同的步数的计划,研究者将40步计划视为分段对数线性函数,并对其进行插值以匹配所需的步数。

实验

实验部分旨在展示优化采样计划(Optimizing Sampling Schedules)对扩散模型性能的显著影响。研究者采用了FID得分作为主要的定量评估指标,并通过用户研究提供了定性评估。通过一系列实验验证了AYS(Align Your Steps)框架在不同数据集和模型上的有效性,包括2D玩具数据、标准图像数据集以及文本到图像和视频生成模型。

研究者首先在2D玩具数据集上展示了优化采样计划的优势。这些数据集具有已知的真实分布,使得研究者能够直观地比较不同采样计划生成样本的质量和原始分布的接近程度。实验结果表明,使用优化采样计划的模型能够生成更接近原始分布的样本,并且减少了异常值的出现。

在2D玩具数据分布上使用不同采样计划生成的样本。它说明了优化采样计划可以生成更接近原始分布且异常值更少的样本

接下来,研究者在CIFAR10、FFHQ和ImageNet等标准图像数据集上进行了实验。他们使用了预训练的连续时间扩散模型,并采用了不同的随机和确定性求解器。实验结果显示,优化的采样计划在低前向评估(NFE)次数下显著提高了生成图像的质量,减少了FID(Fréchet Inception Distance)得分,这是评估生成图像质量的常用指标。

在CIFAR10和FFHQ数据集上,使用不同采样计划的FID分数比较。它证实了优化采样计划可以显著提高样本质量

研究者还将AYS框架应用于流行的开源文本到图像模型,如Stable Diffusion 1.5和SDXL。这些模型依赖于分类器自由引导(classifier-free guidance),研究者发现,即使使用默认引导值优化的采样计划,也能在合理的引导值范围内有效。通过用户研究,研究者进一步验证了优化采样计划在图像质量和文本对齐方面的优势。

在Stable Diffusion 1.5和SDXL模型上使用不同采样计划生成的图像。它说明了优化采样计划可以在低NFEs下生成更高质量的图像

对于视频生成,研究者使用Stable Video Diffusion(SVD)模型进行了实验。他们发现,使用优化的采样计划能够改善视频生成中的时间颜色一致性,并解决了视频帧过度饱和的问题。通过用户研究,研究者证明了优化采样计划在视频生成中的实际优势。

在Stable Video Diffusion模型上使用不同采样计划生成的视频。它说明了优化采样计划可以改善视频生成中的时间稳定性

实验结果一致表明,通过优化采样计划,可以在保持相同计算预算的情况下,显著提高扩散模型生成样本的质量。研究者还讨论了优化采样计划对于模型多样性和实时应用的潜在影响。

在ImageNet数据集上,使用不同采样计划的FID、sFID和Inception Score。它进一步证实了优化采样计划在多个指标上的优势

实验结果表明,无论是在图像、视频还是2D玩具数据上,AYS都能显著超越传统的启发式采样计划,实现更快、更准确的数据生成。AYS的通用性和自动化特性,为广泛的应用领域和不同需求的用户提供了一个强大的工具。随着扩散模型在各个领域的不断进步,AYS框架有望成为推动生成模型性能提升的关键技术之一,为未来的研究和实践开辟新的道路。

论文链接:https://arxiv.org/abs/2404.14507

项目地址:https://research.nvidia.com/labs/toronto-ai/AlignYourSteps/

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

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

相关文章

Golang | Leetcode Golang题解之第130题被围绕的区域

题目&#xff1a; 题解&#xff1a; var (dx [4]int{1, -1, 0, 0}dy [4]int{0, 0, 1, -1} ) func solve(board [][]byte) {if len(board) 0 || len(board[0]) 0 {return}n, m : len(board), len(board[0])queue : [][]int{}for i : 0; i < n; i {if board[i][0] O {q…

xmind父主题快捷键Ctrl+Enter

xmind父主题快捷键 CtrlEnter

实验八、地址解析协议《计算机网络》

水逆退散&#xff0c;学业进步&#xff0c;祝我们都好&#xff0c;不止在夏天。 目录 一、实验目的 二、实验内容 &#xff08;1&#xff09;预备知识 &#xff08;2&#xff09;实验步骤 三、实验小结 一、实验目的 完成本练习之后&#xff0c;您应该能够确定给定 IP 地…

MySQL之查询性能优化(十二)

查询性能优化 优化COUNT()查询 4.使用近似值 有时候某些业务场景并不要求完全精确的COUNT值&#xff0c;此时可以用近似值来代替。EXPLAIN出来的优化器估算的行数就是一个不错的近似值&#xff0c;执行EXPLAIN并不需要真正地去执行查询&#xff0c;所以成本很低。很多时候&am…

【消灭星星game】

“消灭星星”&#xff08;PopStar&#xff09;是一款非常受欢迎的益智游戏&#xff0c;游戏目标是在一个网格中消除相同颜色的星星&#xff0c;一次消除的星星数量越多&#xff0c;得分越高。以下是一个简化版的消灭星星游戏的Python代码示例&#xff0c;用于演示基本的游戏逻辑…

智能数据分析(2)Lecture 9-11

Lecture 9: Feature Analysis and Dimensionality Reduction 特征选择&#xff08;Feature Selection&#xff09; 特征选择的定义与目标 定义&#xff1a;特征选择指的是从原始特征集中选择一个子集&#xff0c;以减少特征的数量并提升模型的性能。选择的特征子集应当能最好…

【python】python商业客户流失数据模型训练分析可视化(源码+数据集+课程论文)【独一无二】

&#x1f449;博__主&#x1f448;&#xff1a;米码收割机 &#x1f449;技__能&#x1f448;&#xff1a;C/Python语言 &#x1f449;公众号&#x1f448;&#xff1a;测试开发自动化【获取源码商业合作】 &#x1f449;荣__誉&#x1f448;&#xff1a;阿里云博客专家博主、5…

基本通信设备

1、 网卡 &#xff08;1&#xff09;负责将终端机连入网络 &#xff08;2&#xff09;计算机通过网卡接入网络&#xff08;有线、无线&#xff09; 2、 交换机 &#xff08;1&#xff09;连接终端机&#xff0c;构建网段 &#xff08;2&#xff09;负责网段内…

CentOS 7基础操作08_Linux查找目录和文件

1、which命令——查找用户所执行的命令文件存放的目录 which命令用于查找Linux命令程序并显示所在的具体位置.其搜索范围主要由用户的环境变量PATH决定(可以执行言echo sPATH”命令查看),这个范围也是Linux操作系统在执行命令或程序时的默认搜索路径。 which命令使用要查找的命…

论文复现:Track to Detect and Segment: An Online Multi-Object Tracker

论文下载链接&#xff1a;链接 简单介绍&#xff1a;大多数在线多目标跟踪器在神经网络中独立执行目标检测&#xff0c;无需任何跟踪输入。在本文中提出了一种新的在线联合检测和跟踪模型TraDeS&#xff08;TRAck to DEtect and Segment&#xff09;&#xff0c;利用跟踪线索…

一个例子了解c++的指针数组和数组指针

c的指针数组和数组指针容易混淆&#xff0c;所以我们加个字&#xff1a; 指针的数组和数组的指针 所谓指针数组&#xff0c;就是指针的数组&#xff0c;就是由指针组成的数组。重点在后面的两个字&#xff1a;数组 所谓数组指针&#xff0c;就是数组的指针&#xff0c;就是指向…

基于协调过滤算法商品推荐系统的设计#计算机毕业设计

基于协调过滤算法商品推荐系统的设计#计算机毕业设计 管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;商品管理&#xff0c;论坛管理&#xff0c;商品资讯管理 前台账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;论坛&#xf…

MySQL-二进制部署-配置systemctl管理脚本(一)

一 二进制部署MySQL 参考二进制部署mysql 二 MySQL启动&关闭命令 mysqld_sqfe 是 mysqld 父进程&#xff0c;用那个启动都可以 ##启动命令 /usr/local/mysql/bin/mysqld_safe --defaults-file/data/mysql/conf/my.cnf & /usr/local/mysql/bin/mysqld --defaults-fil…

数字校园的优势有哪些

数字化时代下&#xff0c;数字校园已成为教育领域一股显著趋势。数字校园旨在借助信息技术工具对传统校园进行改造&#xff0c;提供全新的教学、管理和服务方式。那么&#xff0c;数字校园究竟具备何种优势&#xff1f;现从三个方面为您详细介绍。 首先&#xff0c;数字校园为教…

STM32项目分享:智能家居(机智云)系统

目录 一、前言 二、项目简介 1.功能详解 2.主要器件 三、原理图设计 四、PCB硬件设计 1.PCB图 2.PCB板及元器件图 五、程序设计 六、实验效果 七、资料内容 项目分享 一、前言 项目成品图片&#xff1a; 哔哩哔哩视频链接&#xff1a; https://www.bilibili.c…

如何使用ERC-20与Sui Coin标准创建Token

区块链使用tokens作为传递价值的基本手段。它们可以是区块链的原生交换单位&#xff0c;也可以是应用中的交换单位&#xff0c;甚至可以在游戏世界中用作货币。tokens还支持Sui和其他区块链上的强大DeFi活动。 以太坊使用ERC-20标准来创建tokens&#xff0c;借用智能合约&…

步态控制之ZMP

零力矩点(Zero Moment Point,ZMP)概述 ZMP步态控制是人形机器人步态控制中的一个关键概念,旨在确保机器人在行走或站立过程中保持平衡。ZMP是指机器人接触面上力矩为零的点,确保在该点上机器人不会倾倒。这个示例展示了ZMP步态控制的基本原理和实现方法。实际应用中,机器…

Redisson 源码分析 —— 调试环境搭建

本文基于 Redisson 3.11.4-SNAPSHOT 版本 依赖工具 MavenGitJDKIntelliJIDEA 源码拉取 从官方仓库 https://github.com/redisson/redisson Fork 出属于自己的仓库。 为什么要 Fork &#xff1f;既然开始阅读、调试源码&#xff0c;我们可能会写一些注释&#xff0c;有了自…

【Spring Cloud】Ribbon详细介绍及底层原理分析

目录 核心功能 Ribbon 的工作原理 底层原理及代码详解 1. ServerList 2. IRule 3. IPing 4. ServerListUpdater 使用场景 实际使用示例 1. 使用 RestTemplate 与 Ribbon 集成 2. 使用 Feign 与 Ribbon 集成 Ribbon 是 Netflix 开源的一款客户端负载均衡器&#xff0…

算法训练营day04

一、24. 两两交换链表中的节点 题目链接&#xff1a;https://leetcode.cn/problems/swap-nodes-in-pairs/description/ 文章讲解&#xff1a;https://programmercarl.com/0024.%E4%B8%A4%E4%B8%A4%E4%BA%A4%E6%8D%A2%E9%93%BE%E8%A1%A8%E4%B8%AD%E7%9A%84%E8%8A%82%E7%82%B9.h…