sdxl-turbo:adversarial diffusion distillation

【AIGC第三十一篇】SDXL Turbo:一种实时的文本到图像生成模型 - 知乎【 SDXL Turbo通过采用全新的蒸馏技术,实现了最先进的性能,能够以前所未有的质量进行单步图像生成,将所需的步骤数量从50步减少到仅需一步。这种创新技术大大提高了图像生成的效率和质量,为实时的文本到图像生…icon-default.png?t=N7T8https://zhuanlan.zhihu.com/p/670000715实测下来不如lcm-lora,如果仅仅是从加速角度出发,更建议使用lcm-lora,加速sd一般是两种方法,1.更快的采样器,比如dpm++等,从ODE角度更快的接触数值解;2.蒸馏,目前包括lcm_lora在内的方法,都是对扩散的去噪过程进行蒸馏,从之前的五十步,三十步道1-4步即可出图。注意文生图算法通常来说,包括两个维度,1.模型架构维度,vae encoder+diffusion+vae decoder,通常再包括一个clip encoder给text侧做embedding,2.扩散理论的加噪和去噪的训练和采样过程,模型架构可以一样,但是在加噪和去噪上同样可以有多种方法的改进,比如采样器,cm,lcm,lcm-lora以及sdxl-turbo这种。sdxl-turbo总的来说是采用了对抗扩散蒸馏方法ADD,用了两个损失,1.adversarial loss,定义了一个判别器来判定生成图像的图像和真实的图像;2.distillation loss,让student和teacher的输出保持一致。

如上图所示,主要就是两个loss,一个GAN损失,一个是distillation loss,相当于diffusion为主,GAN校准的思路。首先,ADD训练流程包括三个网络:1.一个ADD-student网络,从预训练的unet-DM中初始化,一个判别器,以及一个DM-teacher网络,权重保持固定。

本文的方法是在pixel space上进行的,不过也可以迁移到latent space中,对于LDM,pixel space蒸馏时梯度计算更加稳定。

1. score distillation

1.ADD-student从Tstudent采样一个时间步s,通过一个前向扩散过程从真实图像X0加噪得到Xs,接着Xs通过ADD-student网络去噪得到生成图;

2.DM-teacher从Tteacher中采样一个时间步t,再在把ADD-student生成图加噪得到时间步t的噪声图;

3.通过DM-teacher噪声预测得到生成图;

distillation loss就是缩小ADD-student模型的生成图和DM-teacher模型的生成图之间的差异,|| x-y||2,l2损失。

2.adversarial training

对抗训练时,生成的样本和真实图像样本都会传递给判别器,判别器目标是区分它们。判别器使用预训练的VIT和可训练的判别器head组成。为了提高性能,判别器可以通过条件输入来获取额外的信息。

使用hingle loss作为对抗目标损失。

3.评估

 

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

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

相关文章

cache教程 2.单机并发缓存

0.对原教程的一些见解 个人认为原教程中两点知识的引入不够友好。 首先是只读数据结构 ByteView 的引入使用是有点迷茫的,可能不能很好理解为什么需要ByteView。 第二是主体结构 Group的引入也疑惑。其实要是熟悉groupcache,那对结构Group的使用是清晰…

最大公因数,最小公倍数详解

前言 对于初学编程的小伙伴们肯定经常遇见此类问题,而且为之头疼,今天我来给大家分享一下,最大公因数和最小公倍数的求法。让我们开始吧! 文章目录 1,最大公因数法1法2法3 2,最小公倍数3,尾声 …

UE引擎 LandscapeGrass 实现机制分析(UE5.2)

前言 随着电脑和手机硬件性能越来越高,游戏越来越追求大世界,而大世界非常核心的一环是植被,目前UE5引擎提供给植被生成的主流两种方式为 手刷植被和LandscapeGrass(WeightMap程序化植被)。当然UE5.3推出新一代PCGFramework 节点程序化生成框…

Nvdiffrast高性能可微渲染开发包

NSDT工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 Nvdiffrast 是一个 PyTorch/TensorFlow 库,为基于光栅化的可微渲染提供高性能基…

2023/12/11 作业

1.思维导图 2.作业 成果&#xff1a; 第一个头文件 #ifndef TEST3GET_H #define TEST3GET_H #include <QWidget> #include<QMessageBox> QT_BEGIN_NAMESPACE namespace Ui { class test3get; } QT_END_NAMESPACE class test3get : public QWidget { Q_OBJE…

Ubuntu Destktop 22.04 设置 ssh 超时时间

Ubuntu Destktop 22.04 使用 ssh 连接服务器时&#xff0c;发现一段时间不操作就会自动断开连接&#xff0c;解决方法如下&#xff1a; 打开 /etc/ssh/ssh_config 文件&#xff1a; sudo vim /etc/ssh/ssh_config在文件最后添加&#xff1a; # ssh 客户端会每隔 30 秒发送一…

pollfish平台现在还能做吗?

今年4月份开始&#xff0c;pollfish平台就已经出现大面积封控了。 很多网站直接封禁&#xff0c;让很多国内的问卷公司都直接倒闭了。 今天是12月12日&#xff0c;现在pollfish平台还是可以做的&#xff0c;但是大概率是做完结算不了的&#xff0c;也就是做了不给钱&#xff…

【每日一题】下一个更大元素 IV

文章目录 Tag题目来源题目解读解题思路方法一&#xff1a;单调栈优先队列 写在最后 Tag 【单调栈】【2023-12-12】 题目来源 2454. 下一个更大元素 IV 题目解读 在数组中找出当前元素右侧第二个比自己大的整数&#xff0c;如果不存在&#xff0c;那么第二个比自己大的整数为…

chronyc立即加载时间同步

不需要等待直接加载 chronyc makestep chronyc sources -v chronyd 服务正在使用的 NTP 源服务器的详细状态。这个命令会列出每个源服务器的 IP 地址&#xff0c;以及每个源服务器的状态和时间偏移量。通过这个命令&#xff0c;你可以看到你的系统是从哪些 NTP 服务器获取时间…

Linux操作系统学习(零)、计算机概论

计算机概论 指令集 CPU中含有多种指令集&#xff0c;指令集对于CPU运算具有指导和优化的硬程序&#xff0c;用来引导CPU进行加减运算和控制计算机操作系统的一系列指令的集合 常见的就有微指令集RISC和复杂指令集CISC RISC&#xff1a;包括ARM架构和PPC架构 CISC&#xff…

vscode报错cnpm : 无法加载文件 C:\Program Files\nodejs\cnpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅

报错 打开powershell 执行 Start-Process powershell -Verb runAs set-ExecutionPolicy RemoteSigned 选择 Y 完成

PPT插件-好用的插件-字距快速设置-大珩助手

字距快速设置 包含两端对齐、段首缩进、取消缩进、字间距、行间距、段后距 段首缩进 每次缩进两个字符&#xff0c;可对选中的文字、选中的多个文本对象两个层级操作 取消缩进 将缩进取消&#xff0c;可对选中的文字、选中的多个文本对象两个层级操作 字间距 预设了常用…