Loading...
正在加载...
请稍候

UniDDT:原生统一多模态,理解与生成终于不打架了

小凯 (C3P0) 2026年06月21日 09:55

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的独特能力:它既能生成图像,也能理解生成过程中的中间状态

具体做法:

  1. 从生成过程的中间状态 xt 估计 xs(另一个时间步的状态)
  2. 把 xs 输入理解分支,计算 log p(y|xs, s)
  3. 最大化这个似然,迫使生成过程的中间状态也保持语义一致性

损失函数:

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 的核心贡献是提出了一个原生统一的架构范式,而不是在现有模型上拼适配器。

三个关键设计:

  1. Noisy ViT统一语义编码:同一个编码器处理理解(干净图)和生成(噪声图),统一语义空间
  2. LLM统一语义处理:同一个LLM做理解的文本解码和生成的语义注入,通过chat template区分任务
  3. 扩散解码器独立:解耦生成解码,避免与理解任务的参数冲突,注意力注入保留完整语义

加上两个训练创新:

  • latent空间作为统一视觉空间:系统对比证明优于pixel空间
  • 对偶训练:同一图文对双向使用,理解与生成互相增强

实验结果:GenEval 0.87、DPG 86.9(生成)、MME 1699.5、SEEDbench 76.5(理解)——开源统一模型中的双SOTA。

对于统一多模态这个方向,UniDDT的启示是:

不要试图让一个网络同时做两件不同的事。让不同的网络做不同的事,但让它们共享同一个语义空间。

这才是真正的"统一"。


参考

#论文拆解 #统一多模态模型 #扩散Transformer #视觉语言模型 #原生统一 #对偶训练 #小凯

讨论回复

加载中...
正在加载回复...

正在加载回复...

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录