轻量化/高效扩散模型文献综述

🎀个人主页: https://zhangxiaoshu.blog.csdn.net
📢欢迎大家:关注🔍+点赞👍+评论📝+收藏⭐️,如有错误敬请指正!
💕未来很长,值得我们全力奔赴更美好的生活!

前言

近年来,计算机科学领域的生成式扩散模型迅猛发展,成为人工智能领域的热门研究方向。这一类模型,如GPT系列,以其强大的语言理解和生成能力,成功地应用于自然语言处理、文本生成、机器翻译等多个领域。然而,随着模型规模的不断扩大和任务复杂性的提高,扩散模型在实时推理上面临着巨大的计算量挑战。本文主要介绍了应对这一挑战近年来的一些经典工作。


文章目录

  • 前言
  • 1. Faster Diffusion
  • 2. Moblie Diffusion
  • 3. Q-Diffusion
  • 4. LWTDM
  • 5. ADD
  • 6. ProDiff
  • 总结


尽管生成式扩散模型在各种任务中取得显著成果,但其复杂的计算结构导致了实时推理性能的下降。特别是在资源受限的环境下,例如移动设备或边缘计算平台,模型的大规模参数和计算需求限制了其广泛应用的可能性。为了解决这一问题,研究者们纷纷投入精力,探索扩散模型的压缩方法或寻求更高效的采样策略,以在保持模型性能的同时降低计算开销。

在这一背景下,模型压缩技术成为研究的焦点之一,旨在通过减少模型的参数数量和计算需求来提高实时推理性能。同时,研究人员也在探索更高效的采样方法,以加速生成式扩散模型的推理过程。这一领域的创新和进步将为将生成式扩散模型应用于实际场景提供更为可行和可持续的解决方案。随着技术的不断演进,人们对于解决扩散模型实时推理性能问题的努力将继续推动人工智能领域的发展。

1. Faster Diffusion

  • 论文:Faster Diffusion: Rethinking the Role of UNet Encoder in Diffusion Models(南开/哈工大-2023)
  • 代码:https://github.com/hutaiHang/Faster-Diffusion

扩散模型中的一个关键组件是用于噪声预测的UNet。虽然一些研究已经探讨了UNet解码器的基本特性,但其编码器在很大程度上仍然未被深入研究。在这项工作中,对UNet编码器的首次全面研究。作者对编码器特征进行了经验分析,并为关于推理过程中它们的变化的重要问题提供了见解。

具体而言,作者发现编码器特征变化较为平缓,而解码器特征在不同时间步之间表现出显著的变化。这一发现启发作者在某些相邻时间步骤省略编码器,并在解码器中循环重复使用先前时间步骤的编码器特征。从而引入了一个简单而有效的编码器传播方案,以加速扩散采样用于各种任务。能够在某些相邻时间步骤并行执行解码器。此外,引入了一种先验噪声注入方法,以改善生成图像的纹理细节。除了标准的文本到图像任务,作者还在其他任务上验证了方法:文本到视频,个性化生成和参考引导生成。在不使用任何知识蒸馏技术的情况下,此方法方法分别将Stable Diffusion(SD)和DeepFloyd-IF模型的采样加速了41%和24%,同时保持了高质量的生成性能。

在这里插入图片描述

2. Moblie Diffusion

  • 论文:MobileDiffusion: Subsecond Text-to-Image Generation on Mobile Devices(谷歌—2023)

在移动设备上部署大规模文本到图像扩散模型受到其庞大的模型大小和慢速推理的阻碍。在本文中,作者提出了MobileDiffusion,这是一种通过在架构和采样技术方面进行广泛优化而获得的高效文本到图像扩散模型。对模型架构设计进行了全面的审查,以减少冗余,增强计算效率,并最小化模型的参数数量,同时保持图像生成质量。此外,在MobileDiffusion上采用了蒸馏和扩散-GAN微调技术,分别实现了8步和1步的推理。通过定量和定性的实证研究,我们展示了所提出技术的有效性。MobileDiffusion在移动设备上为生成一个512×512的图像实现了卓越的次秒级推理速度,创立了一个新的技术水平。

在这里插入图片描述

3. Q-Diffusion

  • 论文:Q-Diffusion: Quantizing Diffusion Models(伯克利-2023 ICCV)

扩散模型通过使用深度神经网络进行迭代噪声估计,在图像合成方面取得了巨大成功。然而,噪声估计模型的慢推理速度、高内存消耗和计算强度阻碍了扩散模型的有效应用。尽管后训练量化(PTQ)被认为是其他任务的首选压缩方法,但它不能直接在扩散模型上使用。
作者提出了一种新颖的PTQ方法,专门针对扩散模型的独特多时间步流水线和模型架构,通过压缩噪声估计网络来加速生成过程。首先作者确定扩散模型量化的关键困难在于多个时间步长上噪声估计网络输出分布的变化,以及噪声估计网络内的快捷层呈双峰激活分布。通过时间步感知校准和分裂快捷量化来解决这些挑战。实验证明,提出的方法能够在没有训练的情况下将全精度的无条件扩散模型量化为4位,同时保持相当的性能(与传统PTQ相比,FID变化最多为2.34,而传统PTQ则超过100)。此方法还可应用于文本引导的图像生成,首次以4位权重运行稳定的扩散模型,保持高生成质量。
在这里插入图片描述

4. LWTDM

  • 论文:Efficient Remote Sensing Image Super-Resolution via Lightweight Diffusion Models(自动化所—GRSL 2023)
  • 代码:https://github.com/Suanmd/LWTDM

随着扩散模型的出现,图像生成经历了重大的进步。在超分辨率任务中,扩散模型在生成更真实样本方面超过了基于GAN的方法。然而,这些模型也伴随着显著的成本:去噪网络依赖于庞大的U-Net,使其在高分辨率图像上计算密集,而扩散模型中的大量采样步骤导致推理时间延长。这种复杂性限制了它们在遥感中的应用,因为在这些场景中对高分辨率图像的需求很高。

为了解决这个问题,作者提出了一种轻量级的扩散模型,LWTDM,它简化了去噪网络,并通过基于交叉注意力的编码器-解码器架构有效地整合了条件信息。此外,LWTDM作为一个创新模型,引入了来自去噪扩散隐式模型(DDIM)的加速采样技术。这种整合涉及对采样步骤的精心选择,以确保生成图像的质量。实验证实,LWTDM在精度和感知质量之间取得了良好的平衡,而其更快的推理速度使其适用于具有特定要求的多样遥感场景。
在这里插入图片描述

5. ADD

  • 论文:Adversarial Diffusion Distillation(Stability AI—2023)

对抗性扩散蒸馏(ADD),一种新颖的训练方法,可以在仅1-4步内高效地对大规模基础图像扩散模型进行采样,同时保持高图像质量。作者使用得分蒸馏来利用大规模现成的图像扩散模型作为教师信号,结合对抗损失,以确保即使在一到两个采样步骤的低阶段,图像仍具有高保真度。文中分析显示,模型在单步中明显优于现有的少步方法(GAN、潜在一致性模型),并在仅四步的情况下达到了最先进的扩散模型(SDXL)的性能。ADD是第一个通过基础模型解锁单步、实时图像合成的方法。
在这里插入图片描述

6. ProDiff

  • 论文:ProDiff: Progressive Fast Diffusion Model for High-Quality Text-to-Speech(浙江大学-2022 MM)

去噪扩散概率模型(DDPMs)最近在许多生成任务中取得了领先的性能。然而,由于继承的迭代采样过程成本,它们在文本转语音部署中的应用受到了阻碍。通过对扩散模型参数化的初步研究,作者发现以前的基于梯度的TTS模型需要数百或数千次迭代才能保证高样本质量,这对于加速采样构成了挑战。

在这项工作中,作者提出了ProDiff,一种用于高质量文本转语音的渐进快速扩散模型。与以往估计数据密度梯度的工作不同,ProDiff通过直接预测干净数据来参数化去噪模型,以避免在加速采样中出现明显的质量降级。为了解决减少扩散迭代次数带来的模型收敛挑战,ProDiff通过知识蒸馏减少目标站点上的数据方差。具体而言,去噪模型使用N步DDIM教师生成的梅尔频谱图作为训练目标,并将该行为提炼到一个具有N/2步的新模型中。因此,它允许TTS模型进行精确的预测,并进一步将采样时间减少数个数量级。

实验评估表明,ProDiff只需2次迭代即可合成高保真度的梅尔频谱图,同时保持与使用数百步的最先进模型相竞争的样本质量和多样性。ProDiff在单个NVIDIA 2080Ti GPU上实现了24倍于实时的采样速度,使扩散模型首次实际应用于文本转语音合成部署。文中广泛消融研究表明,ProDiff中的每个设计都是有效的,并进一步展示ProDiff可以轻松扩展到多说话人设置。
在这里插入图片描述


总结

文中有不对的地方欢迎指正。

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

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

相关文章

Unity—配置lua环境变量+VSCode 搭建 Lua 开发环境

每日一句:保持须臾的浪漫,理想的喧嚣,平等的热情 Windows 11下配置lua环境变量 一、lua-5.4.4版本安装到本地电脑 链接:https://pan.baidu.com/s/14pAlOjhzz2_jmvpRZf9u6Q?pwdhd4s 提取码:hd4s 二、高级系统设置 此电…

uniapp微信小程序投票系统实战 (SpringBoot2+vue3.2+element plus ) -投票帖子排行实现

锋哥原创的uniapp微信小程序投票系统实战: uniapp微信小程序投票系统实战课程 (SpringBoot2vue3.2element plus ) ( 火爆连载更新中... )_哔哩哔哩_bilibiliuniapp微信小程序投票系统实战课程 (SpringBoot2vue3.2element plus ) ( 火爆连载更新中... )共计21条视频…

如何实现 H5 秒开?

我在简历上写了精通 H5,结果面试官上来就问: 同学,你说你精通 H5 ,那你能不能说一下怎么实现 H5 秒 由于没怎么做过性能优化,我只能凭着印象,断断续续地罗列了几点: 网络优化:http2、…

如何在CentOS 7 中基于OpenSSL 1.0 搭建Python 3.0 环境

1、下载 通过https://www.python.org/ftp/python/下载Python安装包,这里下载Python-3.10.9.tgz; 2、上传 借助MobaXterm等工具将Python安装包上传至/opt目录; 3、解压 将JDK压缩文件解压至/opt目录:tar -xvf /opt/Python-3.1…

基于Django的Python应用—学习笔记—功能完善

一、让用户可以输入信息 创建forms.py 创建基于表单的页面的方法几乎与前面创建网页一样:定义一个 URL ,编写一个视图函数并编写一个模板。一个主要差别是,需要导入包含表单 的模块forms.py 。 from django import forms from .models impor…

YOLOv5改进 | 主干篇 | 华为移动端模型GhostnetV2一种移动端的专用特征提取网络

一、本文介绍 本文给大家带来的改进机制是华为移动端模型Ghostnetv2,华为GhostNetV2是为移动应用设计的轻量级卷积神经网络(CNN),旨在提供更快的推理速度,其引入了一种硬件友好的注意力机制,称为DFC注意力。这个注意力机制是基于全连接层构建的,它的设计目的是在通用硬…

高效火情监测,科技助力森林防火【数字地球开放平台】

数字地球开放平台-以卫星遥感为核心的空天信息服务开放平台 (geovisearth.com) 2019年3月30日,四川省凉山州木里县爆发了一场森林火灾,火点位于海拔3800米左右,地形险峻、坡度陡峭、谷深难以抵挡火势。在扑救的过程中,27名森林消防…

计算机网络-ACL实验

一、NAT实验配置 NAT实验配置 通过基本ACL匹配VLAN 10网段,然后在出口设备NAT转换只要匹配到VLAN10地址则进行转换。 核心交换机 # 配置VLAN和默认路由,配置Trunk和Access接口 interface Vlanif10ip address 192.168.10.254 255.255.255.0 # interface V…

SpringMVC下半篇之整合ssm

4.ssm整合 4.1.创建表 CREATE TABLE account (id int(11) NOT NULL AUTO_INCREMENT,name varchar(20) DEFAULT NULL,money double DEFAULT NULL,PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8;4.2.创建工程 4.3.pom.xml <?xml version"1.0" encoding&…

MeterSphere本地化部署实践

项目结构 搭建本地环境 安装JDK11&#xff0c;配置好JDK环境&#xff0c;系统同时支持JDK8和JDK11安装IEAD&#xff0c;配置JDK环境配置maven环境,IDEA配置(解压可以直接使用)无限重置IDEA试用期配置redis环境(解压可以直接使用) 配置kafka环境 安装mysql-5.7环境&#xff…

iOS原生应用屏幕适配完整流程

1. 已iPhone 11 布局为设计布局,其他机型已这个来适配 2.变量与控件对应关系 txtViewer: txtAccount txtpwd seg btnOk 3.适配方法实现: //iOS屏幕适配 -(vo

现阶段Python和Java哪个更吃香?

现阶段Python和Java哪个更吃香&#xff1f; 在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「Java的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&…

Nsis打包Unity Exe文件(通用)

Nsi 脚本 !include "MUI2.nsh"#使用现代UI Unicode true #使用Unicode !define EXENAME "exeName" #定义常量 exe名称 !define SHORTCUT "快捷方式名称" #定义桌面快捷方式的中文名称Name ${EXENAME} #安装程序的title OutFile "${EXENAME…

docker-compose直接官网二进制文件安装(linux)

试了很多种方法&#xff0c;国内镜像库安装&#xff0c;会报语法错误 直接用github官网&#xff0c;命令安装下载太慢&#xff0c;还不如魔法下载 官网链接docker-compose-linux-x86_64https://github.com/docker/compose/releases/download/v2.24.1/docker-compose-linux-x8…

fabric.js 组件 图片上传裁剪并进行自定义区域标记

目录 0. 前言 1. 安装fabric与引入 2. fabric组件的使用 3. 属性相关设置 4. 初始化加载 4. 方法 5. 全代码 0. 前言 利用fabric组件&#xff0c;实现图片上传、图片”裁剪“、自定义的区域标记一系列操作 先放一张效果图吧&#x1f447; 1. 安装fabric与引入 npm i …

Linux环境下,针对QT软件工程搭建C++Test单元测试环境的操作指南

文章目录 前言一、安装QT二、安装CTest三、使用QT生成.bdf文件四、创建CTest工程注意事项 前言 CTest是Parasoft公司出品的一款可以针对C/C源代码进行静态分析、单元测试、集成测试的测试工具。本文主要讲解如何在Linux环境下&#xff0c;搭建QT插件版的CTest测试环境。 一、…

深入Android S (12.0) 探索Framework之输入子系统InputReader的流程

Framework层之输入系统 第一篇 深入Android S (12.0) 探索Framework之输入系统IMS的构成与启动 第二篇 深入Android S (12.0) 探索Framework之输入子系统InputReader的流程 文章目录 Framework层之输入系统前言一、基础知识1、输入子系统2、INotify 与 Epoll2.1、INotify 机制…

01 MyBatisPlus快速入门

1. MyBatis-Plus快速入门 版本 3.5.31并非另起炉灶 , 而是MyBatis的增强 , 使用之前依然要导入MyBatis的依赖 , 且之前MyBatis的所有功能依然可以使用.局限性是仅限于单表操作, 对于多表仍需要手写 项目结构&#xff1a; 先导入依赖&#xff0c;比之前多了一个mybatis-plus…

使用 Kali Linux Hydra 工具进行攻击测试和警报生成

一、Hydra 工具和 Kali Linux 简介 在网络安全领域中&#xff0c;渗透测试是评估系统密码强度的重要组成部分。Hydra 是一款由黑客组织“The Hackers Choice”开发的开源登录破解工具&#xff0c;支持50多种协议。本教程将探索如何将 Hydra 与 Kali Linux 结合使用&#xff0c…

react native Gradle的原国外地址、本地下载、国内阿里腾讯镜像三种下载配置

一、国外地址&#xff1a;&#xff08;初始项目默认&#xff09; 下载地址&#xff1a;https://services.gradle.org/distributions/ 文件地址见下图&#xff1a; 注意&#xff1a;这个地址下载十次就有九次是连接超时&#xff0c;建议换另外两种方法 二、下载到本地&#x…