HBridge: H-Shape Bridging of Heterogeneous Experts for Unified Multimodal Understanding and Generation

Paper: arXiv:2511.20520

1. Motivation (研究动机)

HBridge 关注的是 Unified Multimodal Understanding and Generation 里一个很具体的结构问题:把“理解专家”(LLM/VLM)和“生成专家”(Diffusion/DiT)放进一个统一模型时,是否应该像 BAGEL、LMFusion 这类 Mixture-of-Transformers (MoT) 一样,用两个近似对称的 Transformer 分支并在所有层上做密集 shared self-attention。论文的判断是否定的:理解和生成的最优归纳偏置不同,强行对称会同时牺牲生成专家的 pretrained diffusion prior、训练效率和跨层语义对齐方式。

现有 MoT 的第一个瓶颈是 heterogeneous experts 难以直接复用。BAGEL/LMFusion 为了方便初始化和层间连接,通常让两个专家结构尽量一致;但生成分支如果主要从 autoregressive LLM/VLM 初始化,就不能直接继承 OmniGen2/SD3/FLUX 这类 diffusion-oriented backbone 的视觉生成先验。论文指出这会带来两个现象:一是收敛慢,二是训练预算高;与 BAGEL 约 T2I tokens 相比,HBridge 只用约 T2I tokens 仍能取得更高生成指标。

第二个瓶颈是 全层 attention sharing 不等于更强统一。理解任务更依赖中高层语义推理;生成任务既需要中层语义,也需要浅层/末层保留图像纹理、空间和 denoising 表征。论文通过断开 BAGEL 不同层的 cross-expert self-attention 发现:中层连接对性能影响最大,而浅层和深层连接贡献较小,甚至容易让生成分支走“浅层 lexical/entity shortcut”,只抓住 prompt 中的局部词而忽略关系、数量、方位等复杂语义。

Figure 1 解读:这张 teaser 展示 HBridge 的生成和编辑样例,强调它不是只做 text-to-image,而是把 T2I 与 image editing 放进同一个 understanding-generation 框架。对本文来说,样例图的作用不是证明方法细节,而是说明目标能力:生成质量要接近专用 diffusion 模型,同时仍保留统一模型的语义理解与编辑可控性。

Figure 2 解读:Figure 2 是全文动机的核心证据。左侧比较不同初始化和规模设置的收敛速度:对称 7B+7B 从 Qwen2.5-VL-7B 初始化的 baseline 收敛慢,而 7B+4B 中的 4B generation expert 继承 OmniGen2 diffusion prior 后收敛更快;随机初始化的 7B+4B 也接近对称 baseline,说明“复制一个理解专家来做生成”并不是最优起点。右侧通过断开 BAGEL 不同层连接衡量 feature drift 与 T2I degradation,显示中间层更关键,支撑“只桥接中层”的 H-shape 设计。

这篇文章值得读的地方在于它没有把“统一模型”简单等同于“更多共享”。它提出的结论更接近:统一模型需要在 语义交换专家独立性 之间做结构化分工;理解帮助生成应发生在更适合语义对齐的中间层,而不是把所有层都绑在一起。

2. Idea (核心思想)

核心思想:HBridge 用一个 asymmetric H-shaped MoT 替代对称 dense MoT。它把 frozen 或 largely preserved 的 understanding expert 与 pretrained diffusion-oriented generative expert 连接起来,只在中间层通过 QKV-Linear 对齐后的 shared attention 做语义桥接;浅层和深层保持相对解耦,让各自保留模态特化表示。

关键创新有三点:第一,允许 understanding expert 和 generative expert 架构异构,分别继承 Qwen2.5/Qwen2.5-VL 与 OmniGen2 的 pretrained priors;第二,用 Mid-layer Semantic Bridge 只连接中层,减少超过 40% 的 attention sharing;第三,在生成分支加入 Semantic Reconstruction Tokens (SRT),用 ground-truth image 的 ViT-level semantic features 监督生成分支显式重构语义。

与 BAGEL 的根本差异在于:BAGEL/LMFusion 倾向于用对称专家和全层 dense fusion 来实现统一;HBridge 则认为“统一”不是结构同构,而是让 heterogeneous experts 在最有价值的层段交换语义。与 UniWorld/一些 shallow fusion 方法相比,HBridge 也不是只把 VLM 最后一层 embedding 喂给 diffusion,而是在多层中间状态中进行 deep semantic interaction。

3. Method (方法)

3.1 Overall framework: asymmetric H-shaped MoT

HBridge 的整体框架包含两个主干:understanding expert 和 generative expert。理解分支负责 text/image 输入的语义编码与 autoregressive reasoning;生成分支是 DiT-style diffusion model,负责 denoising/flow matching 式的图像生成。两个专家不是同构复制,而是各自使用更适合本任务的 pretrained model:理解侧使用 Qwen2.5-0.5B 或 Qwen2.5-VL-7B,生成侧使用 OmniGen2 的 4B DiT。

Figure 3 解读:Figure 3 展示了 HBridge 的 H-shape:左侧 understanding expert 与右侧 generative expert 是异构分支,中间只有一段 selected mid-layers 通过 self-attention/semantic bridge 相连。由于两个专家的 hidden size、QKV dimension、normalization 和 attention head 都可能不同,图中用 QKV-Linear 做维度对齐;生成侧还额外加入 Semantic Reconstruction Tokens,让生成专家在训练时重构目标图像的 ViT semantic tokens。整个设计的直觉是:用中层连接传递可组合语义,用解耦的浅层/深层保留输入编码和图像生成先验。

3.2 Heterogeneous Experts

Understanding Expert

Understanding expert 基于 pretrained LLM/VLM,论文实验使用 Qwen2.5-0.5B 与 Qwen2.5-VL-7B 两种规模。它的输入是文本、图像或多模态上下文,输出是高层 conceptual representations 和 autoregressive token states。为了保留原模型的 reasoning capability,论文描述中冻结 understanding expert 的权重,把主要训练压力放在 generative expert 与桥接模块上。

这个选择对应“理解帮助生成”的路径:理解专家不需要重新学习视觉生成,而是把对象、属性、关系、数量、位置等语义状态提供给生成分支。如果把理解专家也大幅改动,可能损伤已有 VLM 的语言/视觉理解能力;如果完全不让理解状态参与生成,生成分支又会退化为普通 T2I diffusion,难以利用 unified model 的语义推理。

Generative Expert

Generative expert 采用 OmniGen2 中 full-attention DiT-style diffusion backbone,预训练目标本来就面向图像合成。由于 OmniGen2 的 generative Transformer 有 32 层,而 Qwen2.5-VL-7B 有 28 层、Qwen2.5-0.5B 有 24 层,论文把生成专家中多余层移动到 Noise Projector,使能参与跨专家交互的层数可以对齐理解分支。

训练目标采用 flow matching objective。论文没有在正文展开完整 flow matching 公式,因此笔记不补写未给出的细节;可以理解为生成分支学习在噪声状态和目标图像 latent 之间的速度/向量场,同时通过 HBridge 中层接收理解分支的语义条件。

3.3 QKV-Linear alignment

异构专家不能像同构 MoT 那样直接共享 attention,因为两侧 的维度可能不同。论文给定第 层 understanding expert 的 与 generative expert 的 ,其中 token length 分别为 ,feature dimension 分别为 。HBridge 先把生成侧 QKV 投影到理解侧的 semantic space: 其中 。投影后,两侧可以在统一 latent space 中做跨模态 attention;交互后的 generation outputs 再通过线性层投回 diffusion expert 的原始空间。

这个模块解决的是“可以桥接”的问题:没有 QKV-Linear,异构专家虽然各自更强,但中间状态形状不兼容;有了它,HBridge 不必牺牲 pretrained backbone,只在少量线性适配层上支付结构对齐成本。

import torch
import torch.nn as nn
import torch.nn.functional as F
 
class QKVLinearBridge(nn.Module):
    def __init__(self, gen_qkv_dims, und_qkv_dims):
        super().__init__()
        self.q_proj = nn.Linear(gen_qkv_dims[0], und_qkv_dims[0], bias=False)
        self.k_proj = nn.Linear(gen_qkv_dims[1], und_qkv_dims[1], bias=False)
        self.v_proj = nn.Linear(gen_qkv_dims[2], und_qkv_dims[2], bias=False)
        self.out_proj = nn.Linear(und_qkv_dims[2], gen_qkv_dims[2], bias=False)
 
    def forward(self, und_states, gen_qkv):
        gen_q, gen_k, gen_v = gen_qkv
        q = self.q_proj(gen_q)
        k = self.k_proj(gen_k)
        v = self.v_proj(gen_v)
        mixed = F.scaled_dot_product_attention(q, k, v)
        return self.out_proj(mixed)

3.4 Mid-layer Semantic Bridge

Mid-layer Semantic Bridge 的形式是:跳过前 层和后 层,只连接中间 层。正文实现细节中默认 skip first 6 layers and last 6 layers,即 ;在 0.5B+4B 消融中, 在 DPG-Bench 和 GenEval 上表现最好。

它的设计理由是两层的:第一,浅层更像输入/局部模式编码,过早共享会让生成分支过度依赖 token-level lexical/entity cue;第二,深层更接近任务输出空间,生成侧需要保留 diffusion denoising 的视觉细节和输出分布。中间层则更可能承载对象关系、数量、空间布局等可迁移语义,因此适合作为 understanding-to-generation 的桥。

def select_bridge_layers(num_und_layers: int, num_gen_layers: int, skip_first: int = 6, skip_last: int = 6):
    usable = min(num_und_layers, num_gen_layers)
    start = skip_first
    end = usable - skip_last
    return list(range(start, max(start, end)))
 
class MidLayerSemanticBridge(nn.Module):
    def __init__(self, bridges, skip_first=6, skip_last=6):
        super().__init__()
        self.bridges = nn.ModuleDict({str(k): v for k, v in bridges.items()})
        self.skip_first = skip_first
        self.skip_last = skip_last
 
    def forward(self, und_layer_outputs, gen_layer_outputs):
        num_layers = min(len(und_layer_outputs), len(gen_layer_outputs))
        for layer_id in range(self.skip_first, num_layers - self.skip_last):
            bridge = self.bridges[str(layer_id)]
            gen_layer_outputs[layer_id] = bridge(
                und_states=und_layer_outputs[layer_id],
                gen_qkv=gen_layer_outputs[layer_id].qkv,
            )
        return gen_layer_outputs

3.5 Semantic Reconstruction Tokens (SRT)

SRT 是生成分支输入侧附加的一组 learnable tokens,实验中使用 16 个 token。训练时,SRT 的输出经过 lightweight projection head 后,被监督去重构 ground-truth target image 的 ViT-level semantic features。目标特征来自 frozen pretrained ViT encoder of Qwen2.5-VL-7B,并通过 adaptive pooling 匹配 learnable tokens 的形状。

论文给出的损失是: 总目标为: 直觉上,flow matching 主要保证图像生成轨迹正确,但未必显式要求 hidden states 对齐高层视觉语义;SRT 则把“目标图像应该包含什么语义”注入生成专家内部,使 bridge 传来的理解状态更容易变成可组合的视觉内容。论文消融显示,SRT 从 w/o semantic tokens 的 DPG-Bench 79.57 / GenEval 0.65 提升到 80.03 / 0.66。

class SemanticReconstructionTokens(nn.Module):
    def __init__(self, num_tokens=16, hidden_dim=4096, vit_dim=1024):
        super().__init__()
        self.tokens = nn.Parameter(torch.randn(num_tokens, hidden_dim) * 0.02)
        self.proj = nn.Linear(hidden_dim, vit_dim)
 
    def forward(self, batch_size, gen_input_tokens, target_vit_features):
        srt = self.tokens.unsqueeze(0).expand(batch_size, -1, -1)
        gen_input = torch.cat([gen_input_tokens, srt], dim=1)
        return gen_input
 
    def loss(self, srt_output, target_vit_features):
        pred = self.proj(srt_output)
        target = adaptive_pool_to_tokens(target_vit_features, pred.shape[1])
        return 1.0 - F.cosine_similarity(pred, target, dim=-1).mean()

3.6 Training step 概念流程

下面是基于论文描述的 paper-level pseudocode;公开搜索未找到 HBridge 官方代码,因此这不是 released code 的逐行映射。

def hbridge_train_step(batch, understanding_expert, generative_expert, bridge_layers, srt_module, optimizer):
    prompt_tokens = batch["prompt_tokens"]
    image_latents = batch["image_latents"]
    target_image = batch["target_image"]
 
    with torch.no_grad():
        und_outputs = understanding_expert(prompt_tokens, output_hidden_states=True)
        target_vit_features = frozen_qwen25_vit(target_image)
 
    noisy_latents, flow_target, t = sample_flow_matching_state(image_latents)
    gen_tokens = generative_expert.noise_projector(noisy_latents, t)
    gen_tokens = srt_module(batch_size=gen_tokens.shape[0], gen_input_tokens=gen_tokens, target_vit_features=target_vit_features)
 
    gen_outputs = generative_expert.forward_with_mid_layer_bridge(
        gen_tokens=gen_tokens,
        cond_hidden_states=und_outputs.hidden_states,
        bridge_layers=bridge_layers,
        output_srt=True,
    )
 
    flow_loss = F.mse_loss(gen_outputs.flow_prediction, flow_target)
    srt_loss = srt_module.loss(gen_outputs.srt_hidden_states, target_vit_features)
    loss = flow_loss + srt_loss
 
    optimizer.zero_grad(set_to_none=True)
    loss.backward()
    optimizer.step()
    return {"loss": loss.item(), "flow_loss": flow_loss.item(), "srt_loss": srt_loss.item()}

3.7 代码搜索状态

代码搜索未找到开源实现。已检查 arXiv 源文件、论文页、GitHub 搜索(HBridge H-Shape BridgingSemantic Reconstruction TokensMid-layer Semantic Bridge2511.20520 等精确关键词)和相关索引页;只发现论文/摘要索引与 curated paper list,没有 HBridge 官方 repo。因此本笔记不设置 github / github_ref,Source Code Reviewer 按 skill 规则跳过。

4. Experimental Setup (实验设置)

4.1 Model and training config

  • Understanding expert:Qwen2.5-0.5B 与 Qwen2.5-VL-7B 两种变体,用于验证方法的可插拔性和规模效果。
  • Generative expert:OmniGen2 的 4B DiT;额外加入线性层,使 input token 维度匹配 attention operation,最终约 4B generation parameters。
  • Bridge setting:默认跳过前 6 层和后 6 层,只连接中间层;论文称这种设置减少超过 40% attention sharing。
  • Optimizer / LR:AdamW,learning rate
  • Training steps:总训练约 200k steps;初始化消融中展示 40k steps 已能生成高保真图像。
  • Hardware:PyTorch mixed precision;64 张 H100/A100/A800 GPU。部分实验在 16 GPU 上训练,并通过 gradient accumulation 近似 64 GPU 设置。
  • Training data:约 400M images,来自外部开源数据集(论文引用 BLIP3-o、UniWorld、OmniGen2、UltraEdit 相关数据)与内部数据库。论文没有公开逐数据集 sample count,因此不能进一步拆分每个数据源规模。

4.2 Benchmarks and metrics

  • DPG-Bench:T2I prompt following benchmark,报告 Global、Entity、Attribute、Relation、Other 和 Overall,数值越高越好。
  • GenEval:T2I compositional evaluation,报告 Single object、Two object、Counting、Colors、Position、Color attri. 和 Overall。
  • ImgEdit-Bench:image editing benchmark,覆盖 Add、Adjust、Extract、Replace、Remove、Background、Style、Hybrid、Action;Overall 是所有 editing sub-tasks 的平均分。
  • Understanding tasks:论文说明 understanding expert 在训练中冻结,因此 multimodal understanding capability 被保留;主要量化评测集中在 visual generation / editing。

4.3 Compared baselines

T2I 对比包含专用 diffusion/autoregressive 模型:LUMINA-Next、SDXL、PlayGroundv2.5、Hunyuan-DiT、PixArt-、DALLE-3、SD3-medium、FLUX.1-dev、OmniGen、SimpleAR 等;统一理解生成模型包含 Show-o、EMU3、TokenFlow-XL、Janus、Janus Pro、BLIP3-o、UniWorld-V1、OmniGen2、BAGEL、Nexus-Gen、Hyper-BAGEL 等。Image editing 对比包含 MagicBrush、Instruct-P2P、AnyEdit、UltraEdit、Step1X-Edit、ICEdit、UniWorld-V1、OmniGen2、BAGEL。

5. Experimental Results (实验结果)

5.1 Text-to-image results on DPG-Bench

MethodParamsGlobalEntityAttributeRelationOtherOverall
SD3-medium2B87.9091.0188.8380.7088.6884.08
FLUX.1-dev12B82.1089.5088.7091.1089.4084.00
OmniGen23B+4B88.8188.8390.1889.3790.2783.57
BAGEL7B+7B88.9490.3791.2990.8288.6785.07
HBridge7B+4B91.7891.8290.2390.0688.4285.23

HBridge 的 Overall 85.23 高于 BAGEL 85.07,也高于 OmniGen2 83.57。更关键的是参数/训练预算对比:HBridge 只有 4B generation parameters,但能超过 BAGEL 7B+7B;论文还强调 BAGEL 使用约 T2I tokens,而 HBridge 约 T2I tokens 达到更高结果。这支持论文的主要 claim:生成专家继承 diffusion prior 加中层语义桥,比对称复制理解专家更有效率。

5.2 GenEval results

MethodSingleTwoCountingColorsPositionColor attri.Overall
Janus Pro0.990.890.590.900.790.660.80
UniWorld-V10.990.930.790.890.490.700.80
OmniGen21.000.950.640.880.550.760.80
BAGEL*1.000.940.790.880.550.660.80
HBridge0.970.940.730.930.630.780.83

带 LLM re-writer 时,HBridge 进一步达到 Overall 0.87;对比项中 OmniGen2、BAGEL*、Hyper-BAGEL 都为 0.86。HBridge 的优势主要来自 Colors、Position 和 Color attribute 等组合语义相关维度,符合 SRT 和中层桥接的设计目标。

5.3 Image editing on ImgEdit-Bench

MethodAddAdjustExtractReplaceRemoveBackgroundStyleHybridActionOverall
UniWorld-V13.823.642.273.473.242.994.212.962.743.26
OmniGen23.573.061.773.743.203.574.812.524.683.44
BAGEL3.563.311.703.302.623.244.492.384.173.20
HBridge3.913.232.133.793.213.504.313.444.323.54

HBridge 在 Overall 3.54 上超过 OmniGen2 3.44、UniWorld-V1 3.26、BAGEL 3.20。它在 Add、Replace、Hybrid 等需要保留原图语义并局部重写的子任务上较强,说明中层语义桥不仅适用于纯 T2I,也能把理解侧对目标图像/指令的语义解释转化为编辑约束。

Supplementary Figure 解读:补充 T2I 样例展示了不同 prompt 下的 photorealistic generation,重点验证 HBridge 不是只在 benchmark 数字上好,而是在复杂语义描述、细粒度对象和不同分辨率设置下仍能保持视觉质量。

Supplementary Figure 解读:这张图对比 HBridge 与 BAGEL 的 T2I 结果。论文想说明的不是 BAGEL 不能生成高质量图,而是 HBridge 在相同类型 prompt 下能更稳定地绑定对象、属性与空间关系;这与 GenEval 中 color attribute / position 指标提升一致。

Supplementary Figure 解读:编辑对比展示 object removal / replacement 等任务。HBridge 的优势在于保留原图上下文并执行局部语义修改;如果 fusion 只发生在浅层或只用最后一层 embedding,模型容易出现语义执行不完整或背景破坏。

5.4 Ablation: initialization and heterogeneous experts

Figure 4 解读:该图比较不同初始化方式。HBridge 使用 OmniGen2 diffusion initialization 后,约 40k steps 就能产生高保真图像;如果把 pretrained diffusion backbone 替换成 VLM-initialized DiT,即使训练更多 steps,生成质量也会显著下降。这是论文支持 heterogeneous expert 的关键证据:理解专家的语言/语义先验不能替代生成专家的视觉扩散先验。

5.5 Ablation: skipped layers / Mid-layer Semantic Bridge

SettingDPG-BenchGenEval
78.190.61
78.630.62
79.200.66
79.360.63
80.030.66
79.260.64
73.510.54
69.050.35

消融结论很清楚:完全不跳层()不是最佳;跳过过多()也会严重下降。 取得 DPG-Bench 80.03 / GenEval 0.66,说明 bridge 需要足够中层语义交互,但不能把浅层/深层全部绑住。

Figure 5 解读:该定性图展示不同 下的生成失败模式。 时,语义注入层太少,模型可能漏掉 mushroom、sunflower 等对象; 虽然图像真实,但可能错配 “taller”“three” 等属性、关系、数量词。这说明桥接不是越多越好,而是需要在语义对齐和生成先验之间留出边界。

Figure 6 解读:该图分析断开/重连不同层 cross-expert attention 后的 feature difference 和 DPG-Bench 表现。论文把 的问题解释为 shallow semantic layer 过度支配生成过程,使模型更容易靠浅层实体词完成“看起来正确”的图像,而难以理解复杂 prompt 中的中高层关系。

Supplementary Figure 解读:补充图把 skipped-layer 分析扩展到 7B+4B、28 Transformer layers 设置。它用 average normalized MSE 衡量断开再重连 multimodal self-attention 后输出特征变化,进一步说明中层连接对生成结果最敏感,浅层/深层连接可以减少。

Supplementary Figure 解读:7B+4B 的 skipped-layer 定性消融说明,H-shape bridge 的最优区间不是只在小模型上成立;换到更大 understanding expert 后,过多或过少连接仍会带来 prompt following 与视觉一致性的折中。

5.6 Ablation: Semantic Reconstruction Tokens

SettingDPG-BenchGenEval
w/o semantic tokens79.570.65
w/ semantic tokens (Ours)80.030.66

SRT 的增益不大但稳定,说明它不是替代中层 bridge 的主机制,而是辅助生成分支显式学习 target image semantic features。对统一模型来说,这一点很重要:理解专家提供 prompt semantics,SRT 则把 target visual semantics 作为生成分支内部监督,形成“理解状态—视觉语义—生成轨迹”的闭环。

Supplementary Figure 解读:SRT 定性图展示有无 semantic reconstruction tokens 时的差异。没有 SRT 时模型仍可能生成合理图像,但更容易在对象关系或细节绑定上出错;加入 SRT 后,生成内容与 prompt 的语义对应更稳定。

5.7 Shallow fusion vs. deep fusion

SettingDPG-BenchGenEval
Shallow fusion74.530.58
Deep fusion (Ours)80.030.66

论文把 shallow fusion 指向一类常见方案:只用 LLM/VLM 最后一层 output embeddings 指导后续 diffusion model。HBridge 的 deep fusion 更好,因为它能使用多层语义信息,而不是只依赖最后一层压缩后的表示。这个结果也回应了“理解帮助生成”应该发生在哪里:不是只在输入条件或最后层 embedding,而是在多层中间表征中进行可控交换。

5.8 Pluggability on BAGEL

MethodDPG-BenchGenEvalImgEdit-Bench
BAGEL85.070.803.20
BAGEL85.200.823.25
BAGEL + MSB85.410.843.34
BAGEL + MSB + SRT85.550.843.38

这个实验说明 MSB 和 SRT 不只是 HBridge 自身架构的 trick,也可以插入 BAGEL 这类 open-source pretrained MoT。BAGEL finetuned baseline 从 85.07/0.80/3.20 提升到 85.20/0.82/3.25;加入 MSB 后到 85.41/0.84/3.34;再加入 SRT 后到 85.55/0.84/3.38,说明中层桥接和语义重构监督有一定泛化性。

5.9 Limitations and conclusion

论文的主要结论是:Unified model 不应默认采用 symmetric dense sharing。HBridge 通过 heterogeneous experts 继承各自 pretrained priors,通过 mid-layer bridge 让理解语义帮助生成,通过 SRT 进一步把视觉语义监督注入生成分支;最终在 DPG-Bench、GenEval 和 ImgEdit-Bench 上都取得优于 BAGEL/OmniGen2/UniWorld 等强 baseline 的结果。

限制方面,论文承认 QKV-Linear alignment 未必是保留 diffusion prior 的最优方式,未来可以探索更高效或自适应的 projection strategy;Mid-layer bridge 当前使用固定 coupling layers,未来也可以做 dynamic layer selection 或 adaptive routing。另一个实践限制是训练数据含 internal databases,且目前没有公开 HBridge 官方实现,因此完全复现实验配置仍受限。