AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

达摩院开源 DyDiT 创新架构,视觉生成任务算力节省 50% 依旧 SOTA

  • 2025-04-29
    北京
  • 本文字数:3257 字

    阅读完需:约 11 分钟

大小:1.57M时长:09:07
达摩院开源DyDiT创新架构,视觉生成任务算力节省50%依旧SOTA

近日,AI 顶会 ICLR 2025 在新加坡举行,阿里巴巴达摩院共有 13 篇论文被大会收录,其中一篇聚焦于视觉生成模型底层框架 DiT 的改进优化。达摩院提出了创新架构 DyDiT,通过引入动态化调整机制,可精准削减视觉生成任务中 50%的推理算力,有效缓解传统扩散模型的计算冗余问题,相关工作已开源。


为什么会开源这样一款框架?


过去一年来,由 Sora 模型开始推动的 Diffusion Transformer(DiT)架构在视觉生成领域展现出了强大的能力,得到了包括 Stable Diffusion 3、Flux、Sora、WanX、Movie Gen 等众多视觉模型的应用。但 DiT 架构也面临一些重大挑战,其中最显著的就是运行效率问题。


业内提出了多种方法来解决这一问题,包括高效的 diffusion 采样器、特征缓存、注意力机制以及模型压缩剪枝等。但这些方法都是针对静态不变模型,即图像生成过程使用的模型规模完全不变,导致了潜在的冗余浪费问题。


所以达摩院研究团队提出了名为 Dynamic Diffusion Transformer 的新方法。该方法从 timestep 和空间两个级别入手,根据不同 timestep 和图像复杂度所需的计算量来调整模型计算大小,从而降低计算冗余度,同时基本保持输出效果,实现较好的性能提升。


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

代码仓库:https://github.com/alibaba-damo-academy/DyDiT

 

DiT 架构作为当前主流的生成模型框架,有效实现了图像与视频的可控生成,推动生成式 AI 走向应用爆发。然而,DiT 架构的多步生成策略存在推理效率低、算力冗余等问题,在执行视觉生成任务容易造成极高的算力消耗,限制其往更广泛的场景落地。业内提出高效采样、特征缓存、模型压缩剪枝等方法尝试解决这一问题,但这些方法均针对静态不变模型,又衍生出潜在的冗余浪费问题。


像在其他视觉和语言领域中的 Transformer 模型一样,Diffusion Transformer 也面临显著的生成效率问题。然而,与 ViT 或 LLMs 不同,Diffusion Transformer 中的多时间步生成范式本质上引入了额外的计算复杂性。此外,生成任务通常在空间区域上呈现出不平衡的难度,从而进一步加剧了效率问题。


为了提升 Diffusion Transformer 的推理效率。许多高效采样器和免训练加速技术在过去几年被提出,可以无缝地加入 Diffusion Transformer 来提升效率。同时,与这些技术相正交方案是结合传统的模型压缩技术,例如结构化剪枝,来降低 Diffusion Transformer 的推理开销。然而,剪枝方法通常在整个扩散过程中的时间步空间维度上保留一个静态的架构。


如下图所示,原始 Diffusion Transformer 和剪枝后的 Diffusion Transformer 都在所有扩散时间步中使用固定的模型宽度,并对每个图像块分配相同的计算成本。这种静态推理范式忽略了不同时间步和空间区域所具有的不同复杂性,导致了显著的效率问题。


探索 Diffusion Transformer 的冗余问题

在研究新的 Diffusion Transformer 方法之前,首先要研究 Diffusion Transformer 架构中的冗余问题有多大。这里分别从两方面来研究:


第一个实验从 timestep 角度入手,对比经过预训练的一个小模型(DiT-S)与大模型(DiT-XL)在 ImageNet 上不同 timestep 上的损失差异,将它们的差值画成曲线:



结果发现,T 较大(生成过程中趋于噪声)时差值较小,而 T 较小(生成过程中接近真实图像)时差值较大。这说明不同的 timestep 对应的任务预测难度是不同的,趋于噪声时小模型就能很好地处理,接近真实图像时就需要大模型。但如果一直使用大模型,就会在 T 较大时造成计算冗余。


第二个实验从空间角度入手。这里可视化了模型在不同 timestep 上的损失 map:


如图所示,白色区域的损失较高,蓝色区域损失较低。可以看到图像不同区域的预测难度是不同的,诸如沙滩、天空等特征接近的区域预测难度较低,而人物、物体等区域预测难度较高。显然,如果对所有区域都使用较大的模型预测,在低难度区域就会带来计算冗余。


在最近的工作中,研究团队还将 Dynamic Diffusion Transformer 进行了进一步的升级。主要包括三个部分:


1、验证对于 flow-matching(流匹配)的支持。flow-matching 的生成机制目前也应用在主流的生成模型中,研究团队验证了我们方法可以无缝衔接到其中。


2、扩展对模型的支持。目前视频生成模型和文本到图像生成模型在实际应用中十分广泛。研究团队将方法进行针对性的升级,实现对主流生成模型,例如 FLUX 的兼容,使其达到了更好的性能效率平衡。


3、提出了为 Dynamic Diffusion Transformer 专门设计的高效微调机制。降低了 Dynamic Diffusion Transformer 的训练参数量,显著降低显存占用。


团队基于上述研究提出了 Dynamic Diffusion Transformer 动态 diffusion transformer 模型架构。该架构的动态性表现在 timestep 和空间两个层面:



如图所示,该模型在生成过程中的不同步骤和不同图像复杂度上的模型大小是不一样的,从而尽可能降低计算冗余度。

Timestep 级别的动态性(TDW)


在 Diffusion Transformer 工作期间,timestep 信息 Et 是嵌入生成流程的,从而让模型知道自己当前处于哪一步。为实现 TDW,可以将 Et 输入两个 Rooter 中,分别是 Rchannel 和 Rhead。它们分别会学习每一步骤需要激活哪些 channel 或 head。根据 Rooter 的计算结果,模型就可以在每一步舍弃不需要计算的 head 和 channel 了。这里的 MHSA 为多头自注意力机制,MLP 为多层感知机。每一个 Router 可以通过一层线性层来实现。


空间级别的动态性(SDT)


在空间级别,同样需要引入一个 Rooter(Rtoken)来预测每帧图片输入 token 中需要计算的部分,得到一个 token mask,mask 的值为 0 代表该 token 不需要计算,而 mask 的值为 1 代表该 token 需要计算。随后我们可以根据 mask 使用 gather 操作将那些需要计算的 token 取出输入到 MLP 中计算,随后再使用 scatter 操作将计算结果与原始输入合并。 这里研究团队只针对 MLP 使用 SDT 而不针对 MHSA 的原因是,研究团队发现对 MHSA 进行这个操作会对性能影响较大,另外 MHSA 有很多基于稀疏注意力的改进方案,可以即插即用,所以这里不对 MHSA 做这个操作。


根据计算量节约目标调整训练过程


上述两个方法都存在一个 Mask,可以利用这些 Mask 计算网络当前的整体计算量,再计算原始 Diffusion Transformer 的计算量,对比两个计算量的比值就可以得到动态模型计算量的节约程度:



通过调节上述公式中的 λ 为我们预期的计算量比值,例如 0.5,与原始的 DiT loss 进行训练,模型就可以学习到如何在保证性能的前提下,让计算量符合预期。

性能表现


对比发现,将 DiT-XL 模型改进为 DyDiT-XL 动态架构后,模型计算量有了明显下降,同时 FID 得分与原模型基本相当。与其他生成模型对比,动态模型的计算量是最低的,各类指标都有一些优势。



团队也探索了动态架构在不同模型大小上的 Scaling up 能力:

可以看到在较小模型(DiT-S)上,在基本维持输出效果的前提下可以节约的模型计算量是较小的(λ 需设置为 0.9);而在中等模型(DiT-B)上 λ 可以设置为 0.7,较大模型(DiT-XL)上 λ 可以设置为 0.5,节约的计算量较多。这也表明随着模型增大,计算量的冗余度也随之提升。


团队还可视化了不同 timestep 时动态模型激活 head 和 channel 的情况,当接近噪声端时,任务预测难度较小,需要激活的模型资源较少:



团队也可视化了不同图像区域需要的计算量差异,可以看到简单背景/物体所需的计算量较少:



动态方法也可以同其他加速方法,如高效采样器、DeepCache 等方案结合进一步提升性能:


 

实验结果表明,DyDiT 在多个数据集和生成模型下均表现出高稳定性。仅用不到 3%的微调成本,将 DiT-XL 的浮点运算次数(FLOPs)减少了 51%,生成速度提高了 1.73 倍,在 ImageNet 测得的 FID 得分与原模型几乎相当(2.27 vs 2.07)。据透露,DyDiT 相关训练与推理代码已开源,并计划适配到更多的文生图、文生视频模型上,目前基于知名文生图模型 FLUX 调试的 Dy-FLUX 也在开源项目上架。

 

ICLR 是由图灵奖得主杨立昆、约书亚·本吉奥发起的 AI 顶级会议。据悉,达摩院今年共有 13 篇论文被 ICLR 2025 录用,涵盖了视频生成、自然语言处理、医疗 AI、基因智能等领域,其中 3 篇被选为 Spotlight。

 

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

2025-04-29 09:438
用户头像
李冬梅 加V:busulishang4668

发布了 1062 篇内容, 共 679.9 次阅读, 收获喜欢 1223 次。

关注

评论

发布
暂无评论

2023年第一季度汽车行业行情预测分析

不脱发的程序猿

汽车电子 2023年第一季汽车行业分析

2023-02-14:魔物了占领若干据点,这些据点被若干条道路相连接, roads[i] = [x, y] 表示编号 x、y 的两个据点通过一条道路连接。 现在勇者要将按照以下原则将这些据点逐一夺回:

福大大架构师每日一题

算法 rust 福大大

用这4招优雅的实现Spring Boot 异步线程间数据传递

小小怪下士

Java spring 程序员 springboot

探讨丨传统行业必须数字化转型吗?

优秀

数字化转型

ChatGPT时代的打工人众生相

白洞计划

ChatGPT

【Redis 故障排查】「连接失败问题排查和解决」带你总体分析CPU及内存的使用率高问题排查指南及方案

码界西柚

redis 性能调优 缓存服务 2月日更

面试官:如果 MySQL 数据库中的数据丢失,有哪些补救的办法呢?

做梦都在改BUG

Java MySQL 数据库

银行业上云进行时,OLAP 云服务如何解决传统数仓之痛?

Kyligence

OLAP技术 传统数仓

线程私有变量ThreadLocal详解

Java随想录

Java 线程 并发

2022Q4手机银行运营亮点:“新版本迭代潮”叠加“个人养老金账户争夺战”

易观分析

金融 银行 经济

瑞萨RH850 CS+环境下设置堆和栈空间

不脱发的程序猿

嵌入式 汽车电子 MCU RH850 瑞萨IDE

宽表为什么横行?

王磊

基于文心大模型套件ERNIEKit实现文本匹配算法,模块化方便应用落地

汀丶人工智能

自然语言处理 nlp 2月月更 2月日更 文本匹配算法

5 如何优雅的告诉老板复制 ChatGPT几乎是“impossible”的?

涛哥 数字产品和业务架构

ChatGPT 业务架构师

OneFlow源码解析:Eager模式下的SBP Signature推导

OneFlow

人工智能 深度学习 框架解析

入门数据分析师的最强秘籍,都在这4本书里!

博文视点Broadview

实现一个简单的Database10(译文)

GreatSQL

sqlite myslq greatsql greatsql社区

用户卖家平台三方螺旋成长 如何让商品推荐更智能

阿里技术

全球化技术能力

OKR之剑·实战篇06:OKR致胜法宝-氛围&业绩双轮驱动(下)

vivo互联网技术

团队管理 OKR

微服务 SpringBoot 整合 Redis GEO 实现附近商户功能

做梦都在改BUG

Java redis 微服务 Spring Boot

中美ChatGPT的商业化分野

脑极体

ChatGPT

进击中的 Zebec 生态,Web2 与 Web3 世界的连接器

BlockChain先知

一文盘点,ZBC的应用场景与通缩场景

鳄鱼视界

Java 发展史

kcodez

Java 后端

智能汽车商业化、产业化演进及投资机会分析

不脱发的程序猿

汽车电子 智能汽车商业化 汽车行业投资机会分析

中国工商银行签约易观千帆,夯实数字基石,助力用户价值增长

易观分析

金融 银行

Java Map操作解锁新姿势

派大星

Three.js 进阶之旅:物理效果-碰撞和声音 💥

dragonir

CSS JavaScript html 前端 three.js

活动预告|Triton Meetup 2023

AI Infra

AI

音乐APP用户争夺战,火山引擎VeDI助力用户体验升级!

字节跳动数据平台

大数据 增长 音乐 企业号 2 月 PK 榜

ChatGPT入门案例|商务智能对话客服(一)| 社区征文

TiAmo

AI ChatGPT

达摩院开源DyDiT创新架构,视觉生成任务算力节省50%依旧SOTA_阿里巴巴_李冬梅_InfoQ精选文章