T-GATE:交叉注意力使文本到图像扩散模型中的推理变得麻烦

今天给大家带来最近一项非常有意思的研究通过计算出,交叉注意力的输出会趋向于一个固定点。 然后在保真度提升阶段忽略文本条件不仅可以减少计算的复杂性。并提出了TGATE这种简单而无需训练的方法,用于高效地生成图像。

TGATE的做法是,一旦交叉注意力的输出达到收敛,就将其缓存下来,并在剩余的推理步骤中保持不变。

相关链接

项目地址:https://github.com/HaozheLiu-ST/T-GATE?continueFlag=265b4aee9e8b3952ecced5f9268f1118 论文地址:https://arxiv.org/abs/2404.02747

项目简介

交叉注意力在文本到图像扩散模型中的作用

在文本到图像的扩散模型中,交叉注意力是一个关键组件,它在模型的初期推理步骤中发挥着重要作用。

然而,研究表明,交叉注意力的输出在经过几个推理步骤后会收敛到一个固定点,这一点自然地将整个推理过程分为两个阶段:语义规划阶段和保真度提高阶段。

  • 在语义规划阶段,模型依赖交叉注意力来规划以文本为导向的视觉语义;

  • 在保真度提高阶段,模型则尝试根据先前规划的语义生成图像。

令人惊讶的是,在保真度提高阶段忽略文本条件不仅可以降低计算复杂性,而且还能保持模型性能。

方法提出

基于上述发现,作者提出了一种称为TGATE的简单且无需训练的方法,用于高效生成图像。

TGATE的核心思想是在交叉注意力输出收敛后将其缓存,并在剩余的推理步骤中保持固定。这种方法通过减少冗余的交叉注意力计算,显著提高了模型的推理效率,尤其是在处理高分辨率输入时。

TGATE方法在多个模型上的应用证明了其有效性,包括SD-XL和PixArt-Alpha等。

快速介绍

我们发现交叉注意力输出在初始去噪步骤中收敛到一个固定点。因此,整个推理过程可以分为两个阶段:初始语义规划阶段,在此期间模型依靠文本来规划视觉语义;以及随后的保真度改进阶段,在此期间模型尝试根据先前的图像生成图像。计划的语义。令人惊讶的是,在保真度提高阶段忽略文本条件不仅降低了计算复杂度,而且还略微降低了 FID 分数。这产生了一种简单且无需训练的方法,称为 TGATE,用于高效生成,一旦交叉注意力输出收敛,该方法就会对其进行缓存,并在剩余的推理步骤中保持固定。

上图为使用/不使用TGATE的扩散模型生成的图像。我们的方法可以加速扩散模型,而不会降低发电性能。它无需训练就可以对现有研究进行广泛补充。

主要特点

  • 免训练

  • 轻松集成到现有框架中

  • 只需要几行代码

  • 友好支持基于CNN的U-Net、Transformer、一致性模型

  • 不同扩散模型加速10%-50%

关键的观察

扩散模型在不同去噪步骤生成的图像。第一行将文本嵌入提供给所有步骤的交叉注意模块。第二行仅使用第1步到第10步的文本嵌入,第三行输入第11步到第25步的文本嵌入。

观察总结如下:

  • 交叉注意力在推理过程的早期收敛,其特点是语义规划和保真度提高阶段。这两个阶段交叉注意力的影响并不均匀。

  • 语义规划通过交叉注意力嵌入文本以获得视觉语义。

  • 保真度提高阶段无需交叉注意即可提高生成质量。事实上,在此阶段嵌入空文本可以提高性能。

结果

通过在MS-COCO验证集上的实验,作者证实了TGATE方法的有效性。实验结果显示,TGATE能够显著减少每张图像的多次累积操作(MACs)并消除保真度提高阶段的大量参数,从而在不牺牲生成质量的情况下,将延迟降低了约50%。此外,TGATE还能够在不同的噪声调度器和基础模型上保持稳定的生成性能,显示出其广泛的适用性。

感谢你看到这里,也欢迎点击关注下方公众号,一个有趣有AI的AIGC公众号:关注AI、深度学习、计算机视觉、AIGC、Stable Diffusion、Sora等相关技术,欢迎一起交流学习💗~

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【利器篇】前端40+精选VSCode插件,总有几个你未拥有!

前言 姊妹篇: 【利器篇】35精选chrome插件,含15前端插件,总有一款值得你停留 关于关于 【前端工具系列】: 有句话,事半功倍,其必然是借助了某些思想和工具。 VSCode是我们前端开发的武器,本文…

软件设计师-基础知识科目-数据结构3

三、 数据结构: 时间复杂度: 背复杂度对应的代码。Tips:时间复杂度估算看最内层循环,如若没有循环和递归则为O(1)。 空间复杂度: 需要单独空间存储数据时使用。考点:非递归的空间…

教你如何优雅做好项目管理?

导言 项目本身无好坏之分,项目管理有做好与做坏之别。在互联网大厂的体制下,想要做坏一个项目很难(可以通过换人、追加资源等方式消除风险),想要做好一个项目不容易,需要团队及 PM 付出大量心血和精力。在…

测开面经(pytest测试案例,接口断言,多并发断言)

pytest对用户登录接口进行自动化脚本设计 a. 创建一个名为"test_login.py"的测试文件,编写以下测试脚本 import pytest import requests# 测试用例1:验证登录成功的情况 # 第一个测试用例验证登录成功的情况,发送有效的用户名和密…

日期时间相关的类

分界线jdk8 jdk8之前和之后分别提供了一些日期和时间的类,推荐使用jdk8之后的日期和时间类 Date类型 这是一个jdk8之前的类型,其中有很多方法已经过时了,选取了一些没有过时的API //jdk1.8之前的日期 Date Date date new Date(); // 从1970年…

(源码+部署+讲解)基于Spring Boot和Vue的大学志愿者服务平台的设计与实现

摘要: 随着互联网技术的快速发展,大学校园内的志愿者活动日益增多,传统的志愿者管理方式已难以满足现代化、信息化的需求。因此,设计并实现一个基于Spring Boot和Vue的大学志愿者服务平台显得尤为重要。本文详细阐述了该平台的设计…

基于java+springboot+vue实现的教学辅助系统(文末源码+Lw)23-225

摘 要 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对信息管理混乱,出错率高,信息安全性差&#…

JDK下载及安装说明

1.JDK下载 访问oracle官网:http://www.oracle.com 在首页点击Downloads,进入oracle软件下载页。 在下载页面,点击Java。 选择Java (JDK) for Developers,点击。 在 Java SE Downloads 页面,点击中间的DO…

ES高级查询语法DSL实战 - 第504篇

历史文章(文章累计500) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 《…

【grpc】一、grpc入门,从protobuf开始

一、protobuf简介 Protocol Buffers,是Google公司开发的一种数据描述语言,类似于XML能够将结构化数据序列化,可用于数据存储、通信协议等方面。 关于相关工具的安装网上很多资料了,这里不再赘述。但是有几点需要注意的&#xff0…

【吊打面试官系列】Java高并发篇 - Java 中用到的线程调度算法是什么?

大家好,我是锋哥。今天分享关于 【Java 中用到的线程调度算法是什么?】面试题,希望对大家有帮助; Java 中用到的线程调度算法是什么? 采用时间片轮转的方式。可以设置线程的优先级,会映射到下层的系统上面的…

使用 Python 批量提取 Excel 中的图片(提供工具下载链接)

本文收录于《Python入门核心技术》专栏,专栏总目录:点这里,订阅后可阅读专栏内所有文章。 大家好,我是水滴~~ 本文主要讲解如何利用 Python 来批量提取 Excel 中的图片,分别保存到目录中。并将程序打包成可执行文件&am…

cloudcompare对点云数据打标签流程

1.导入点云txt文件 2.点击小剪刀进行分割 这时视角不能动了,进行框选分割,分割出上牙和下牙 3.打标签 点击加号在前六列的基础上再加上一列,列名为label 这里设置其他为0,上牙的标签为1,下牙为2 左边状态栏可以看到 4.合并为一个…

VueDraggablePlus 支持 Vue2 和 Vue3 的拖拽组件

官网:https://alfred-skyblue.github.io/vue-draggable-plus/

Jmeter接口测试:响应断言元件

响应断言元件介绍: 响应断言元件的功能是对接口的响应信息进行自动断言校验,来判断接口测 试得到的接口返回值是否正确。jmeter中该元件支持将请求或响应的各个字段与 模式字符串进行比较。有了该元件,就可以完成自动化接口测试,…

自媒体内容创作助手:5款必备ai写作工具一览! #科技#知识分享#学习

这些工具不仅可以快速生成高质量的文本内容,还可以根据用户的需求进行个性化定制。它们可以帮助我们节省大量的时间和精力,让我们更加专注于创意和细节的打磨。本文将为大家详细介绍几个AI写作工具,让你在写作领域更上一层楼。 1.元芳写作 …

从MySQL5.7平滑升级到MySQL8.0的最佳实践分享

一、前言 升级需求:将5.7.35升级到8.0.27, 升级方式 in-place升级【关闭现有版本MySQL,将二进制或包替换成新版本并在现有数据目录上启动MySQL并执行升级任务的方式,称为in-place升级】 原版本 5.7.35 CentOS Linux release 7.9.2009 新版本…

数字图像处理项目——基于BCNN和迁移学习的鸟类图像细粒度分类(论文/代码)

完整的论文代码见文章末尾 以下为核心内容 摘要 本文采用了ResNet50、VGG19、InceptionV3和Xception等四种不同的深度神经网络模型,并应用于鸟类图像的细粒度分类问题中,以探究其在该任务上的性能表现。 其中,本文使用了BCNN(B…

文献速递:深度学习胰腺癌诊断--胰腺肿瘤的全端到端深度学习诊断

Title 题目 Fully end-to-end deep-learning-based diagnosis of pancreatic tumors 胰腺肿瘤的全端到端深度学习诊断 01 文献速递介绍 胰腺癌是最常见的肿瘤之一,预后不良且通常是致命的。没有肿瘤的患者只需要进一步观察,而胰腺肿瘤的诊断需要紧…

RequestMapping注解

一、RequestMapping的作用 RequestMapping 注解是 Spring MVC 框架中的一个控制器映射注解,用于将请求映射到相应的处理方法上。具体来说,它可以将指定 URL 的请求绑定到一个特定的方法或类上,从而实现对请求的处理和响应。 二、RequestMappi…