Skip to content
阅读进度0%
Multimodal待复核

统一架构

Show-o、Chameleon、Uni-MoE 与理解-生成一体化

我的学习与文章检索 →
学习记录仅保存在当前浏览器,可随时取消标记。

前沿统一架构 ​

学术界正致力于打破模态和任务的界限,追求 "One Model for All"——单一模型同时处理理解与生成、多种模态。


统一架构演进 ​

阶段代表模型能力范围
专用模型CLIP + SD各司其职
多任务LLaVA, BLIP-2多模态理解
统一模型Show-o, Chameleon理解+生成

Show-o:自回归与离散扩散的融合 ​

Show-o(2024)结合文本自回归与图像离散扩散;Show-o2(2025)才进一步采用连续空间 flow matching 等设计。两代的 token 表示、训练目标与采样方式不能混写。

架构设计 ​

双模式建模 ​

模式目标Attention Mask预测目标
自回归 (AR)文本Causal(因果)下一个 Token
离散扩散图像离散 token图像块内部双向,跨块遵循任务 mask恢复被遮蔽的 token

动态模式切换 ​

以下仅示意任务分派;真实 omni-attention 同时约束文本和图像块之间的可见性,不能用纯 causal/full 二选一完全替代。

python
def forward(self, text_tokens, image_tokens, mode):
    if mode == "understanding":
        # 图像作为条件,自回归生成文本
        mask = create_causal_mask(text_tokens)
        return self.generate_text(image_tokens, text_tokens, mask)
    
    elif mode == "generation":
        # 文本作为条件,迭代恢复图像离散 token
        mask = create_full_mask(image_tokens)
        return self.denoise_image(text_tokens, image_tokens, mask)
    
    elif mode == "mixed":
        # 图文交织生成
        return self.interleaved_generation(text_tokens, image_tokens)

关键创新 ​

创新点说明
共享骨干网络单一 Transformer 处理所有任务
动态 Mask根据任务切换注意力模式
统一词表文本和图像 Token 在同一空间
端到端训练理解和生成联合优化

MMaDA:并行多模态扩散 ​

MMaDA用统一离散扩散目标研究文本推理、多模态理解和图像生成,并使用混合长链推理数据进行后训练。

自回归 vs 并行扩散 ​

特性自回归并行扩散
生成方式逐 Token全序列并行
错误传播先前输出影响后续可迭代修改,但仍会形成错误与偏差
生成速度增量生成可用 KV cache每步可并行,但需多次全序列计算,实际速度需测
长序列受上下文和训练覆盖限制同样受长度、训练分布与采样调度限制

双向交互 ​

特点:

  • 文本和图像 Token 同时去噪
  • 每一步通过双向注意力交互
  • 提供跨模态交互路径,不保证语义一致;须单独评估冲突输入

UniGRPO:扩散模型的强化学习 ​

MMaDA 原论文使用的名称是 UniGRPO,并非 ParaRL。它为扩散模型设计策略梯度后训练,结合不同任务的奖励。评价时区分正确性、视觉理解和生成偏好,防止一个奖励的上涨掩盖其他能力下降;“在当前策略采样”也不能自动消除奖励误差。


Chameleon:原生混合模态 ​

Chameleon 使用早期融合的图文离散序列,适合讨论统一自回归目标;图像 tokenizer 仍是专门组件,不等于所有模态共享完全相同的预处理。

统一 Token 空间 ​

原论文的总词表为 65,536,已包含 8,192 个图像码本 token,不能再将二者相加。参见 Chameleon 的 Tokenization 小节。

VQ-VAE 图像离散化 ​

python
# VQ-VAE 编码
def encode_image(image):
    # 连续特征
    z = encoder(image)  # [B, H, W, D]
    # 量化到离散 codebook
    indices = quantize(z, codebook)  # [B, H, W]
    # 展平为 Token 序列
    tokens = indices.flatten(start_dim=1)  # [B, H*W],不能合并 batch 维
    return tokens

# VQ-VAE 解码
def decode_image(tokens):
    # 从 codebook 查找
    z = codebook[tokens]  # [B, H*W, D]
    z = z.reshape(B, H, W, D)
    # 解码为图像
    image = decoder(z)
    return image

训练稳定性技术 ​

技术作用
QK-Norm稳定 Attention Score
归一化设计约束多模态数值规模,具体形式见论文
z-loss稳定 Softmax
训练监控监测不同模态损失与梯度,避免单一总 loss 掩盖失衡

任意模态组合 ​

下表是混合序列建模可讨论的任务形式。实际可用任务应核对论文实验、模型卡和公开接口,不能把“可表示”直接等同于“已训练并开放”:

输入输出示例任务
文本文本对话、问答
图像文本图像描述
文本图像文生图
图像+文本图像图像编辑
图像+文本图像+文本图文交织生成

Uni-MoE:统一混合专家 ​

Uni-MoE 引入稀疏 MoE 架构,解决多模态混合训练的性能偏差问题。

架构设计 ​

下图是概念分工;MoE 专家通常位于 LLM 主干内,路由学习不保证一个专家仅对应一种模态。

渐进式训练策略 ​

阶段目标训练内容
Stage 1跨模态对齐训练连接器
Stage 2专家专业化单独训练各模态专家
Stage 3统一协调LoRA 微调整个 MoE

优势 ​

特性传统多模态Uni-MoE
模态干扰取决于数据与训练目标稀疏路由可能缓解,仍需负载均衡
计算效率全量激活稀疏激活
扩展性可增加编码器/连接器可增加专家,但仍需训练和部署验证

RingAttention:超长上下文 ​

长视频理解的关键瓶颈是上下文长度。

Blockwise Parallelism ​

工作原理 ​

Ring Attention把序列块分布到设备,传递 K/V 并计算局部 query 对全局 key 的注意力。它是分布式执行技术,不是新的统一多模态建模目标,也不会自动训练出长程理解能力。

关键点是在线 softmax 归一化。不能对每个 KV 块独立 softmax 后把结果直接相加,否则每块权重各自和为 1,不等于全序列 attention。

python
# 数学伪代码:忽略 batch/head 维与通信细节;每行对应一个 local query
m = full((num_queries, 1), -inf)   # 跨块最大 logit
l = zeros((num_queries, 1))       # 跨块指数和
acc = zeros_like(local_Q)         # 未归一化的加权和
for K_block, V_block in ring_blocks:
    scores = local_Q @ K_block.T / sqrt(head_dim)
    scores = apply_global_attention_mask(scores)  # 使用全局 token 位置
    new_m = maximum(m, scores.max(dim=-1, keepdim=True).values)
    rescale = exp(m - new_m)
    p = exp(scores - new_m)
    acc = rescale * acc + p @ V_block
    l = rescale * l + p.sum(dim=-1, keepdim=True)
    m = new_m
output = acc / l

真实实现还需处理全遮蔽块、反向传播、混合精度、通信重叠和 causal 边界。上述公式解释归一化,不是可直接部署的分布式内核。

效果 ​

可处理长度随设备数量、显存、互联带宽与算力预算增长,不存在“传统方法固定 128K、Ring 固定 1M+”的统一界限。稠密注意力总计算量仍随序列长度二次增长;通信是否能被计算覆盖需要 profiling。

验收先在小序列上对照普通 attention 的输出与梯度,再增加设备和长度测扩展效率;用跨帧、跨段证据任务验证模型利用远距离信息,不能只看输入是否装得下。


未来趋势 ​

架构统一化 ​

当前:多个专用模型
↓
近期:理解+生成统一
↓
远期:任意模态统一(World Model)

关键挑战 ​

挑战现状解决方向
图像生成质量取决于表示、训练预算和任务比较离散/连续表示与专用基线
训练成本极高高效训练方法
模态平衡容易偏向某模态MoE / 采样策略
评测标准缺乏统一基准新评测框架

是否需要统一:一个工程决策 ​

先做“理解模型 + 生成器”的模块化基线。只有共享上下文、图文交织输出或跨模态协同确实改善任务时,再承担统一模型的训练与服务成本。

固定数据与预算后,分别比较理解正确率、生成条件遵循、图文一致性和端到端耗时。联合训练一个任务涨、另一个降时,检查采样配比、损失尺度和共享参数冲突;并行采样变慢时,检查步数、序列长度和能否复用缓存。上线前核对 checkpoint 真正开放的输入/输出模态、许可证和解码路径,不用论文演示替代产品验收。

参考资源 ​

资源说明
Show-o自回归+离散扩散统一
Show-o2连续表示与 Flow 后续路线
MMaDA并行多模态扩散
Chameleon原生混合模态
Uni-MoE统一混合专家
RingAttention超长上下文

基于 VitePress 构建