资料摘要:DiT
Peebles & Xie (UC Berkeley/NYU) 提出 Diffusion Transformer —— 用 ViT 架构替代 U-Net 作为扩散模型骨干,在 ImageNet 上实现 SOTA,并确立了 DiT 作为后续 Sora、SD3、FLUX 等工作的基石。ICCV 2023。 DiT - Scalable Diffusion Models with Transformers
核心要点
- U-Net 非必需:首次系统证明 Transformer 可以完全替代卷积 U-Net 作为扩散模型去噪骨干,并随规模扩大持续提升性能
- adaLN-Zero:提出自适应层归一化(adaLN),初始化时将残差增益置零,使每个 DiT 块初始化为恒等函数,极大提升训练稳定性
- 强可扩展性:DiT 随 Gflops 增加(加深/加宽/更多 patch token)FID 持续下降,无平台期
- DiT-XL/2 达到 FID 2.27(ImageNet 256×256,无分类器引导),是当时类条件图像生成的 SOTA
详细笔记
动机
LDM(Latent Diffusion Models)用卷积 U-Net 做去噪骨干,但 CV 领域 ViT 已证明 Transformer 在大规模预训练中优于 CNN。核心问题:扩散模型的骨干能否从 U-Net 换成 Transformer?
方法
整体框架:Latent Diffusion + Transformer 骨干
- 预训练 VAE 将图像压缩到潜空间
- 将潜表示切分为 patch(类似 ViT),展开为 token 序列
- DiT block 处理 token 序列,通过条件机制注入时间步 t 和类别标签 c
- 预测噪声(而非直接预测图像)
四种条件注入机制:
| 机制 | 方式 | 计算开销 |
|---|---|---|
| In-context conditioning | 将 t、c 作为额外 token 拼入输入序列 | 低 |
| Cross-attention | 在多头自注意力后插入交叉注意力层 | +15% Gflops |
| adaLN | 用 t、c 回归缩放/平移参数 γ、β(Adaptive Layer Norm) | 同 in-context |
| adaLN-Zero | 在 adaLN 基础上初始化 γ=0,再加残差增益 α(也初始化为 0) | 同 adaLN |
adaLN-Zero 的关键设计:
- 每个 DiT block 输出 =
α * MLP(γ * LayerNorm(x) + β) + x - 初始 α = 0 → 每个 block = 恒等映射 → 训练从零开始逐步激活
- 实证最优,被后续几乎所有 DiT 变体采用
四档模型配置:
| 模型 | Layers | Hidden dim | Heads | Params |
|---|---|---|---|---|
| DiT-S | 12 | 384 | 6 | 33M |
| DiT-B | 12 | 768 | 12 | 130M |
| DiT-L | 24 | 1024 | 16 | 458M |
| DiT-XL | 28 | 1152 | 16 | 675M |
关键结果
- DiT-XL/2 最优:patch size=2(最小 patch → 最长 token 序列 → 最高 Gflops)
- Gflops 定律:Gflops 越高(无论通过加深/加宽/减小 patch 哪种方式),FID 越低
- Scaling 能力超越 U-Net:同等参数量下 DiT 显著优于 U-Net 基线
- 无需分类器引导:主实验不使用 CFG(classifier-free guidance),纯靠模型能力
- ImageNet 512×512:DiT-XL/2 也达到 FID 3.04
影响
- Sora:OpenAI Sora 视频生成模型使用 DiT 或 DiT 变体(作者 Peebles 参与 Sora)
- SD3:Stable Diffusion 3 采用 MMDiT(Multimodal DiT)
- FLUX:Black Forest Labs 的 FLUX 基于 DiT 骨干
- 音频/语音/TTS:DiT 被广泛迁移至音频领域(CosyVoice 3、LongCat-AudioDiT、Fugatto 等)
引用与数据
- 时间:2022.12(arXiv),2023(ICCV)
- 会议:ICCV 2023
- arXiv:2212.09748
- 作者:William Peebles (UC Berkeley),Saining Xie (NYU)
- GitHub:facebookresearch/DiT
- 规模:最大 675M 参数(DiT-XL)
相关
- Wiki 目录
- DiT(Diffusion Transformer)
- MMDiT(多模态扩散 Transformer) — DiT 的多模态双流后继(SD3)
- 资料摘要:SD3(MMDiT) — Stable Diffusion 3:MMDiT + Rectified Flow
- DiT 论文全景
- 资料摘要:LongCat-AudioDiT
- 资料摘要:AudioX
- 音频生成