UniDDT:原生统一多模态,理解与生成终于不打架了
Wang, S., Li, L., Chen, Y., Gao, R., Teng, Y., Wang, L. UniDDT: Unifying Multimodal Understanding and Generation with Decoupled Diffusion Transformer. Nanjing University, ByteDance Seed, HKU. arXiv:2606.16255, 2026.
代码:https://github.com/MCG-NJU/UniDDT
一、统一多模态的"不可能三角"
统一多模态模型(UMMs)——让一个模型同时"看懂"图和"画出"图——是2026年最热的方向之一。但这条路走得异常艰难,因为三个互相纠缠的瓶颈:
瓶颈1:理解与生成天然冲突
- 理解任务:需要高维语义表征,关注"是什么"
- 生成任务:需要细节丰富的表征,关注"长什么样"
- 同一套参数要同时优化两个相反目标,必然此消彼长
瓶颈2:视觉空间碎片化
- 理解模型用像素空间或语义空间
- 生成模型用VAE latent空间
- 两个空间不兼容,需要转换器/适配器,增加复杂度和信息损失
瓶颈3:数据割裂
- 理解数据和生成数据各自训练
- 没有利用图文对偶性:同一对(image, text)既可以做理解(图→文),也可以做生成(文→图)
现有方案大多是"拼积木":用适配器把专门的VLM和专门的扩散模型粘在一起。这是浅层整合,不是真正的统一。
UniDDT 说:不要拼积木,要从架构原生设计统一。
二、三组件解耦架构:Noisy ViT + LLM + 扩散解码器
UniDDT 的核心架构由三个组件构成,关键是解耦但不分离。
2.1 Noisy ViT 编码器:统一语义提取
这是UniDDT最巧妙的设计。同一个编码器处理两种输入:
- 理解任务:输入干净图像,提取语义特征
- 生成任务:输入带噪latent(扩散过程中的xt),提取语义特征
为什么能work?因为扩散过程的条件编码器本质上也是在从噪声中提取语义。UniDDT把"理解图像"和"编码生成条件"统一到了同一个视觉编码器里。
关键细节:
- timestep t 通过 AdaLN-zero 注入(类似DiT/SiT)
- 初始化从预训练VLM(SigLIP2或Qwen-ViT)蒸馏,避免冷启动崩溃
2.2 LLM 骨干:统一语义处理
同一个LLM backbone处理两种任务:
- 理解:因果编码视觉特征 zt → 自回归解码文本答案
- 生成:因果编码prompt + 视觉特征 → 注入语义到生成条件
注意:不是两个分支,是同一个LLM用不同的chat template。理解时用理解模板,生成时用生成模板。
2.3 扩散解码器:专门负责视觉生成
这是"解耦"的关键所在。扩散解码器独立训练,专门负责从噪声中生成图像:
- 输入:噪声latent xt、timestep t、LLM输出的精炼视觉语义 ˆzt
- 输出:估计速度 vt(flow matching)
- 关键改进:用注意力机制注入条件 ˆzt,替代传统的AdaLN-zero
为什么注意力更好?
- AdaLN-zero把条件压缩到统计量(均值/方差),信息损失大
- 注意力保留完整的语义特征,训练更灵活
- 即使冻结编码器和LLM,只训练扩散解码器也能正常收敛
这种解耦设计的好处:生成和理解不抢参数。扩散解码器专心学生成,LLM专心学语义,互不干扰。
三、统一视觉空间:为什么选latent,不选pixel
论文做了一个系统对比:
| 维度 | Pixel空间 | Latent空间 |
|---|---|---|
| 理解性能 | 略优 | 接近(差距极小) |
| 生成性能 | 显著差 | 显著优 |
| 可扩展性 | 无优势 | 更好 |
结论:latent空间是统一视觉空间的最优选择。
理解任务上latent稍弱,但差距微乎其微;生成任务上latent完胜。而且pixel空间在扩展性上没有显示出优势,所以不需要为了理解性能牺牲生成性能和可扩展性。
UniDDT 使用 Flux-VAE 的latent空间作为统一视觉空间。
四、训练策略:三段式 + 对偶性
4.1 Warmup训练(防崩溃)
直接联合训练会导致语言模型崩溃(language collapse)。所以先分别预热:
阶段1:Noisy ViT预热
- 从预训练VLM(SigLIP2或Qwen-ViT)蒸馏
- 训练40K步,学习率2e-4
- 只训练ViT编码器,LLM和扩散解码器不参与
阶段2:扩散解码器预热
- 冻结Noisy ViT和LLM
- 添加投影层对齐维度
- 训练100K步,flow matching损失
- 最大序列长度16384
4.2 联合训练(核心阶段)
解冻所有模块,同时优化理解和生成。
关键创新:对偶数据构造(Duality-based Data Construction)。
给定同一个图文对 (y, x),构造两种格式:
- 理解格式:
<image> x </image> <user> 描述这张图 </user> <assistant> y </assistant> - 生成格式:
<user> 画出: y </user> <assistant> <image> x </image> </assistant>
损失函数:
L_joint = E_gen[L_diff(x|y)] + λ * E_und[L_ce(y|x)]
核心洞察:同一对图文数据,从两个方向使用。理解分支学"图→文",生成分支学"文→图"。两个任务互相提供监督信号,形成对偶增强。
联合训练配置:
- Native-UniDDT:120K步,最大序列长度8192
- VLM-UniDDT:10K步(因为有预训练VLM基础)
4.3 后训练(进一步提升生成质量)
这是UniDDT最聪明的设计之一。
冻结Noisy ViT和LLM,只训练扩散解码器。利用UniDDT的独特能力:它既能生成图像,也能理解生成过程中的中间状态。
具体做法:
- 从生成过程的中间状态 xt 估计 xs(另一个时间步的状态)
- 把 xs 输入理解分支,计算
log p(y|xs, s) - 最大化这个似然,迫使生成过程的中间状态也保持语义一致性
损失函数:
L_post = E[x,t,s,y] L_ce(y|xs, s)
这相当于对扩散过程施加了一个语义一致性约束:不仅最终图像要对,生成路上的每一步都要"看起来像对的"。
五、实验结果:理解与生成双SOTA
5.1 视觉生成
| 基准 | 分数 | 说明 |
|---|---|---|
| GenEval | 0.87 | 开源统一模型中顶尖 |
| DPG | 86.9 | 整体得分 |
使用Adam-2nd solver,25步,CFG=4。
5.2 多模态理解
| 基准 | 分数 | 说明 |
|---|---|---|
| MME | 1699.5 | 感知得分 |
| SEEDbench | 76.5 | 整体得分 |
5.3 与现有方案对比
UniDDT 对比现有UMMs:
- 适配器方案(如一些早期工作):浅层整合,性能受限
- 原生并行分支(如Mogao、Show-o):理解与生成参数共享,互相干扰
- UniDDT:解耦设计,理解与生成各用专门组件,但语义通过共享的Noisy ViT+LLM统一
关键对比:Native-UniDDT(纯Qwen3 LLM)和VLM-UniDDT(Qwen3-VL backbone)。后者有预训练VLM基础,理解性能更强;前者更轻量,验证了架构本身的有效性。
5.4 消融与配置
论文提供三种尺寸:
| 型号 | Noisy ViT | LLM | 扩散解码器 |
|---|---|---|---|
| Native-B | 12层, 1024维 | Qwen3-0.6B | 20层, 1024维 |
| Native-L | 24层, 1024维 | Qwen3-1.7B | 20层, 1536维 |
| Native-XL | 24层, 1024维 | Qwen3-1.7B | 20层, 2560维 |
| VLM-UniDDT | 24层, 1024维 | Qwen3-VL-4B | 20层, 1536维 |
VLM-UniDDT在理解任务上更强(因为有预训练VLM),Native系列验证了从零训练的可行性。
六、技术洞察
6.1 为什么解耦比共享更好?
现有Native-UMMs的主流做法是并行分支:理解与生成共享大部分参数,只在最后分叉。但论文发现这会导致"性能权衡"——理解强了生成弱,生成强了理解弱。
UniDDT的洞察:理解与生成需要的能力不同,不应该强共享参数。但它们的语义空间应该统一。
- 共享语义空间(Noisy ViT + LLM):确保"理解到的"和"生成时用的"是同一套语义
- 解耦解码器(扩散解码器独立):生成不需要干扰理解的文本解码,理解不需要干扰生成的噪声去噪
6.2 注意力注入 vs AdaLN-zero
DDT原始架构用AdaLN-zero注入条件。UniDDT改成注意力注入:
# AdaLN-zero(原始)
x = x + AdaLN(t, Attention(x, condition))
# 注意力注入(UniDDT)
x = x + AdaLN(t, Attention(x, condition)) # 但condition是完整的ˆzt,不是统计量
本质区别:AdaLN-zero把condition压缩成scale/shift,注意力保留完整特征。这让扩散解码器可以更精细地利用LLM输出的语义信息。
6.3 对偶性的威力
训练数据规模:约70M图像,用Qwen2.5-VL-7B重新caption。
但关键不是数据量,而是数据使用方式:
- 70M图文对 = 70M理解样本 + 70M生成样本
- 同一对数据从两个方向训练,互相增强
- 这比分别收集140M专用数据更高效
论文发现:在有限数据规模下,对偶训练仍然有效提升性能。这对于数据昂贵的统一多模态研究至关重要。
七、局限与追问
7.1 对教师模型的依赖
Noisy ViT的初始化依赖预训练VLM(SigLIP2或Qwen-ViT)的蒸馏。如果教师模型有偏见或能力上限,UniDDT也会继承。论文没有探索从零训练Noisy ViT的可能性。
7.2 生成-理解的不对称
虽然架构统一,但生成和理解在计算量上不对称:
- 生成需要多步扩散(25步或更多)
- 理解只需要一次前向
- 这在推理时可能成为瓶颈,论文没有报告推理速度
7.3 VLM backbone的闭源依赖
VLM-UniDDT使用Qwen3-VL-4B,虽然开源,但最强的理解能力可能仍来自闭源VLM。如果闭源VLM不公开,UniDDT的理解性能上限可能受限。
7.4 后训练阶段的稳定性
后训练利用"理解中间生成状态"来提升生成质量。这要求理解分支对噪声输入的鲁棒性足够强。如果中间状态太噪声,理解分支可能失效,反而引入错误信号。论文没有详细分析这种风险。
八、总结:原生统一 > 拼积木
UniDDT 的核心贡献是提出了一个原生统一的架构范式,而不是在现有模型上拼适配器。
三个关键设计:
- Noisy ViT统一语义编码:同一个编码器处理理解(干净图)和生成(噪声图),统一语义空间
- LLM统一语义处理:同一个LLM做理解的文本解码和生成的语义注入,通过chat template区分任务
- 扩散解码器独立:解耦生成解码,避免与理解任务的参数冲突,注意力注入保留完整语义
加上两个训练创新:
- latent空间作为统一视觉空间:系统对比证明优于pixel空间
- 对偶训练:同一图文对双向使用,理解与生成互相增强
实验结果:GenEval 0.87、DPG 86.9(生成)、MME 1699.5、SEEDbench 76.5(理解)——开源统一模型中的双SOTA。
对于统一多模态这个方向,UniDDT的启示是:
不要试图让一个网络同时做两件不同的事。让不同的网络做不同的事,但让它们共享同一个语义空间。
这才是真正的"统一"。
参考
- Wang, S. et al. (2026). UniDDT: Unifying Multimodal Understanding and Generation with Decoupled Diffusion Transformer. arXiv:2606.16255.
- DDT: Decoupled Diffusion Transformer
- Flux-VAE: https://github.com/black-forest-labs/flux
- Qwen3-VL: https://huggingface.co/Qwen
- SigLIP2: https://huggingface.co/google/siglip2
- GenEval, DPG, MME, SEEDbench benchmarks
#论文拆解 #统一多模态模型 #扩散Transformer #视觉语言模型 #原生统一 #对偶训练 #小凯
讨论回复
加载中...正在加载回复...
推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。