跳转至

CubiD: Cubic Discrete Diffusion — Discrete Visual Generation on High-Dimensional Representation Tokens

日期: 2026-03-19
arXiv: 2603.19232
代码: GitHub
领域: 图像生成
关键词: 离散扩散, 高维表示, 维度级掩码, 视觉生成, 统一多模态

一句话总结

提出 Cubic Discrete Diffusion (CubiD),首个在高维表示 token(768维)上进行离散生成的方法,通过在 h×w×d 三维张量上做细粒度逐元素掩码预测,在 ImageNet-256 上达到 1.88 FID,同时验证了离散化后的 token 同时保持理解和生成能力。

研究背景与动机

  1. 领域现状: 离散视觉生成(自回归/离散扩散)共享语言模型的 token 预测范式,是统一多模态架构的有前途方向。但当前方法只能处理低维 latent token(8-32维),丢失了语义丰富性。

  2. 现有痛点: 高维预训练表示(如 DINOv2 的 768 维特征)对理解任务很重要,但将其离散化后进行生成面临两重困难:(a) 传统 Vector Quantization 在高维空间因维度灾难失效——需要指数级 codebook 大小;(b) 离散化后的 h×w×d = 16×16×768 = 196,608 个 token,自回归生成步数 O(hwd) 完全不可行。

  3. 核心矛盾: 理解需要高维语义特征,生成需要低维压缩 token——两者使用不同的表示空间,阻碍了统一多模态架构。

  4. 切入角度: 逐维量化(dimension-wise quantization)可以无损地将高维连续特征离散化;关键问题变成如何高效建模 h×w×d 的离散分布。

  5. 核心 idea: 把 h×w×d 张量视为统一的"立方体"空间,任意维度任意位置的 token 都可以独立掩码和预测——兼顾空间内和空间间的依赖关系,且生成步数固定为 T(远小于 hwd)。

方法详解

整体框架

  1. 编码: 冻结的预训练编码器(DINOv2/SigLIP2)提取 h×w×d 连续特征
  2. 离散化: 逐维量化将每个标量独立映射到 L 个离散级别 → h×w×d 离散 token
  3. 生成: Cubic Discrete Diffusion 在训练时随机掩码张量中的任意元素,学习从部分观测预测被掩码的 token;推理时从全掩码迭代解掩码

关键设计

  1. 逐维量化(Dimension-wise Quantization):

    • 做什么:将高维连续特征离散化而不损失语义质量
    • 核心思路:对每个维度独立量化 \(q_{x,y,i} = \text{Quantize}(z_{x,y,i}; L)\),无需训练,直接应用于冻结编码器特征
    • 设计动机:VQ 在高维空间因维度灾难失效(codebook 覆盖不足)。逐维量化绕过了联合量化的困难,DINOv2 用 L=8 就能达到连续特征的重建质量(rFID 0.57)。在 LLaVA 理解基准上,DQ 保持 63.1 GQA(vs 连续 63.2),而 VQ 暴跌至 54.9
  2. 立方体掩码扩散(Cubic Masking):

    • 做什么:在 h×w×d 张量上做细粒度元素级掩码预测
    • 核心思路:训练时从截断高斯分布 \(r \sim \text{TruncNorm}(\mu=1.0, \sigma=0.1, [0,1])\) 采样掩码比例,随机选择 ⌊r × h×w×d⌋ 个元素掩码,用可学习 [MASK] token 替换,训练 Transformer 预测被掩码元素的交叉熵损失
    • 设计动机:对比实验清晰证明了为什么必须逐元素掩码:
    • Per-spatial(整个位置掩码/解掩码):gFID = 22.22,模糊且局部不一致——768 个维度联合编码语义信息,整体掩码切断了维度间依赖
    • Per-dim(整个维度掩码):gFID = 120.03,完全失败——破坏了空间连贯性
    • Per-element(逐元素):gFID = 5.33,清晰连贯
  3. 推理时从全掩码开始,cosine schedule 逐步解掩码,T=256~512 步即可收敛

  4. 高效架构设计:

    • 做什么:解耦计算复杂度与特征维度
    • 核心思路:每个空间位置的 d 个 token 反量化后拼接成 d 维向量作为 Transformer 的一个 token。序列长度固定为 h×w=256,不随 d 变化。每个输出 token 通过 MLP head 产生 d×L 个 logits,同时预测该位置所有维度
    • 设计动机:如果每个维度-位置都是独立 token,序列长度达 196,608,注意力计算不可行。将 d 维压缩进单个 token 保持了 O(h²w²) 的注意力复杂度

训练策略

  • AdamW,lr=5e-5,cosine schedule,weight decay 0.05
  • 消融用 150 epochs,最终结果 800 epochs
  • 可学习 [MASK] token 优于固定值和随机值

实验关键数据

ImageNet-256 主实验

方法 类型 Latent Dim 参数量 gFID↓ (无 cfg) gFID↓ (有 cfg)
CubiD-XXL 离散扩散 768 3.7B 4.68 1.88
CubiD-L 离散扩散 768 946M 5.25 2.29
MaskGIT 离散扩散 16 227M 6.18 4.02
VAR 自回归 32 2.0B 2.16 1.97
LlamaGen-XXL 自回归 8 1.4B 14.6 2.34

CubiD-XXL 的 1.88 FID 是离散生成模型的新 SOTA,接近连续扩散模型的最佳水平。

离散化质量验证

量化方法 GQA TextVQA POPE MME
SigLIP2 (连续) 63.2 59.6 85.4 1484
SigLIP2-DQ (逐维) 63.1 59.8 85.0 1480
SigLIP2-VQ (向量) 54.9 45.6 81.2 1189

逐维量化几乎无损,VQ 严重退化——证明了 DQ 作为统一表示的可行性。

消融实验

配置 gFID 说明
Per-element (默认) 5.33 逐元素掩码最优
Per-spatial 22.22 整位置掩码,模糊
Per-dim 120.03 整维度掩码,完全失败
σ=0.10 (默认) 5.33 偏向激进掩码
σ=0.05 7.65 过于激进,过拟合
Learned mask 5.33 优于 fixed (5.56) 和 random (56.38)

Scaling 行为

参数量 gFID
946M 5.25
1.4B 4.91
3.7B 4.68

清晰的 scaling law,模型越大效果越好。

亮点与洞察

  • 统一表示的关键突破:证明了高维离散 token 可以同时服务理解和生成——这是通向统一多模态架构的重要一步。逐维量化几乎无损,是一个被低估的简单方法。
  • 掩码粒度的深刻分析:per-element vs per-spatial vs per-dim 的消融实验非常清晰地展示了高维 token 中空间维度和特征维度之间的复杂依赖关系,不能简单解耦。
  • 架构巧思:将 d 维 token 压缩进 Transformer 的单个 token 输入,用 MLP head 输出 d×L 个 logits——优雅地解耦了序列长度和特征维度,使计算可行。
  • 生成步数与维度无关:T=256 步即可生成 196,608 个离散 token,比自回归快 768 倍。

局限性 / 可改进方向

  • 分辨率限制:当前只在 256×256 上验证,更高分辨率时空间网格增大,计算成本仍然显著
  • 依赖预训练编码器:生成质量的上限受限于 DINOv2/SigLIP2 编码器的重建能力(rFID=0.57 的重建瓶颈会传递到生成质量)
  • 推理步数仍较多:T=256~512 步比自回归模型(256个token序列)并无明显优势,且 diffusion 每步都是全序列前向传播
  • 尚未在真正的统一模型中验证:虽然证明了理解+生成的 token 兼容性,但未建造一个端到端的统一多模态模型

相关工作与启发

  • vs RAE (Representation Autoencoder): RAE 也用高维表示特征做生成,但采用连续扩散模型;CubiD 走离散扩散路线,更适合与语言模型统一
  • vs MaskGIT: MaskGIT 在低维空间做 per-spatial 掩码扩散,CubiD 扩展到高维 per-element 掩码——核心创新在于掩码粒度
  • vs VAR: VAR 用自回归+多尺度 token 达到 1.97 FID(低维),CubiD 用高维 token 达到 1.88——高维路线的首次竞争力展示

评分

  • 新颖性: ⭐⭐⭐⭐ 高维离散生成是新问题,逐元素掩码解法简洁有效
  • 实验充分度: ⭐⭐⭐⭐⭐ 消融全面(掩码策略、量化级别、模型规模、编码器),理解+生成双重验证
  • 写作质量: ⭐⭐⭐⭐ 问题定义清晰,图示直观
  • 价值: ⭐⭐⭐⭐⭐ 为统一多模态架构铺路的重要工作