Quantifying the Gap between Understanding and Generation within Unified Multimodal Models

Paper: arXiv:2602.02140

1. Motivation (研究动机)

Unified Multimodal Models (UMMs) 的目标是让同一个模型同时具备视觉理解、文本推理和图像生成能力。论文关心的不是“一个模型是否能做两类任务”,而是更强的问题:理解与生成是否共享同一套知识表示,能否在同一个语义问题上双向一致地回答。作者指出,现有评测通常有三个缺口:

  • 单方向评测太多:MMMU、MMBench 主要测 Image-to-Text 理解,GenEval、DPG-Bench、WISE 主要测 Text-to-Image 生成;它们无法判断同一个语义知识在文本回答与图像输出之间是否一致。
  • Unified benchmark 不等于 gap benchmark:RealUnify、GIR-Bench、UniEval、MME-Unify、Uni-MMMU 已经把理解与生成放进同一框架,但多半测“综合任务成功率”或“协同效果”,没有显式把理解侧和生成侧拆开并量化两者差距。
  • 高性能不代表高统一:UMM 可能在理解榜或生成榜都不错,但在同一知识点上只会用文字答、不会画出来,或只会生成图像、不会用文本解释;这种情况说明模型只是工程层面合并了功能,而不是认知/知识层面融合。

论文要解决的具体问题是:构造一个同一问题可同时用 text 和 image 两种模态回答的 benchmark,并定义一个可解释的 Gap Score,用来衡量 UMM 内部 understanding 与 generation 的能力差异。这个问题值得研究,因为如果 gap 真实存在,那么“生成帮助理解 / 理解帮助生成”的叙事需要更谨慎:当前模型可能只是在接口上 unified,内部知识仍然分裂,单侧训练也未必能自然迁移到另一侧。

2. Idea (核心思想)

核心洞见:要判断 UMM 是否真正 unified,不能只比较它在理解任务和生成任务上的平均分,而应让同一个语义问题同时拥有 text-answer 与 image-answer 两种等价目标,再观察模型是否能在两种输出模态上同时成功。GAPEVAL 将每个样本设计成一对共享语义意图的 prompts:und_text_i 要求文本回答,gen_text_i 要求图像生成,并用同一底层知识 y 评估两边是否一致。

关键创新有两点:第一,benchmark 本身是 bidirectional 的,覆盖 Instruction Following、Numerical Perception、World Knowledge、Reasoning 四类能力;第二,Gap Score 不直接用 ,而是用 MIRT-MAP 同时估计模型能力和 item difficulty,再对 text/image latent ability 的差异做归一化和 co-success/co-failure 调整。

与 RealUnify / GIR-Bench 这类“协同任务”不同,GAPEVAL 的目标不是让模型完成一个混合复杂任务,而是把同一知识点拆成理解与生成两个方向,因此可以更直接地看到:模型到底是双向都懂,还是只在某一输出模态上表现好。

3. Method (方法)

3.1 Overall framework:双向问题 + Gap Qualification

Figure 1 解读:GAPEVAL 的整体流程分三层。(a) 数据层把每个问题构造成同一语义目标下的理解 prompt 与生成 prompt;(b) 评测层覆盖 9 个 UMM,并在 heatmap 中展示 understanding、generation 与 Gap Score 的关系;(c) 机制分析层进一步做 knowledge injection/editing,检查单侧知识更新是否能迁移到另一侧。这个设计把“是否会理解”和“是否会生成”从同一个问题上拆开,使 gap 不再只是两个 benchmark 分数的差,而是同一知识在两个输出通道中的一致性问题。

形式上,每个样本包含一个问题图像 (也可能为空)和一组文本指令: 两条指令共享同一语义意图,但输出模态不同。例如,理解侧可以问 “Who is he?”,生成侧可以要求 “Generate an image of him.” 对理解任务,ground truth 是 reference textual answer;对生成任务,ground truth 是 reference image 加描述文本,用于 judge 判定模型生成是否表达了同一核心语义。

3.2 Benchmark taxonomy:四类同构双向任务

Figure 2 解读:图中给出四类任务的双向样例。每个样例的 understanding 侧要求模型输出文本,generation 侧要求模型输出图像,但二者共享同一个答案或同一个变换规则。GPT Family 在图中指用于辅助生成/评估的 GPT5-mini 和 GPT-Image-1;重点不是比较 GPT,而是说明每个问题都可以被对称地改写成 text-output 与 image-output。

Instruction Following

该类任务从图像编辑扩展而来,但不是只看生成编辑图是否成功。GAPEVAL 同时要求模型在理解侧描述被编辑图像、指出变化区域;在生成侧执行同一规则并输出图像。它包括显式编辑和隐式规则两种挑战,用来检测“读懂规则”和“视觉执行规则”是否一致。

Figure 8 解读:Instruction Following case 展示的是同一编辑/规则能否在文本描述和图像生成中保持一致。若模型能说出规则但画不出对应变化,或能生成局部视觉变化但文本解释错了,都说明 instruction-grounded knowledge 没有在两侧共享。

Numerical Perception

该类任务评估数量感知与数量变换。样本通常给出含两个对象类别的图像,例如 “three ducks and two birds”,再要求模型交换数量,理解侧输出 “two ducks and three birds”,生成侧输出对应的新图像。这样可以避免模型简单复制输入图,而必须先识别数量结构,再跨模态表达变换结果。

World Knowledge

World Knowledge 要求模型把视觉线索映射到外部知识实体,并在图像和文本之间保持一致。论文举例不是直接说 “Generate Gabriel García Márquez”,而是说 “Generate a photo for the author of One Hundred Years of Solitude.” 这迫使模型先做知识解析,再决定文本答案或视觉生成目标。子域包括 animals、plants、landmarks、instruments、literature、culture。

Figure 9 解读:World Knowledge case 强调“知识实体”本身必须在两侧一致。理解侧需要从图像/问题中识别语义实体,生成侧需要把同一实体视觉化。模型若只记得文字事实但无法生成对应视觉,说明 factual knowledge 没有被生成通道可靠调用。

Reasoning

Reasoning 覆盖图像选择、知识选择、现实物理推理、逻辑推理等子类。任务要求模型把文本与视觉问题转化为同一个推理结果:理解侧输出最终答案,生成侧用图像表达最终状态或选择结果。该类对 UMM 最难,因为它同时要求视觉理解、符号推理和生成表达。

Figure 10 解读:Reasoning case 展示模型必须先推理出正确答案,再把答案转换为文本或图像。若文本侧能给出最终选项但生成侧无法圈出正确区域,说明推理结果没有稳定进入视觉输出路径。

3.3 Data construction:646 个高质量 human-annotated 双向问题

GAPEVAL 一共包含 646 个 human-annotated unified questions。与已有 benchmark 对比,GAPEVAL 同时覆盖 understanding task 的 WK/RS/VP、generation task 的 IF/WK/RS,并显式支持 SYN、BI、GQ 三个特性:synergy evaluation、bidirectional formulation、gap quantification。

数据构造采用人工策划 + 自动生成 + cross-check 的多阶段流程:

  • World Knowledge:从公开网页和开源数据集中策划/改写知识实体,保证每个实体可同时用文本答案和图像结果表达,并通过交叉检查修正实体和 prompts。
  • Numerical Perception:选择动物、车辆等对象集合,用 Qwen-Image 生成计数图像;人工筛掉低质量样本,并对数量不匹配的图像重写 prompts/question,使最终题目严格满足计数要求。
  • Instruction Following:从开源数据集中挖掘具有显著视觉变化的样本,并手工构造 rule-based editing prompts;文本输出要求描述编辑后图像并指出修改区域。
  • Reasoning:包含三个来源:手工构造的现实物理推理与示意图;把 MMLU/MMMU 文本题渲染成图像的 multiple-choice reasoning;以及从网络/开源来源收集的 image state transition reasoning。所有题目要求唯一答案和一致 solution key。

3.4 Metric:两阶段评测与 MIRT-MAP Gap Score

第一阶段是 capability measurement。每个模型输出都会由 GPT-5-mini 按类别特定 prompt 判为 binary correctness:正确为 1,错误为 0。作者在 held-out 200 samples 上检查 judge reliability,GPT-5-mini 与人工标注的一致率为 92%;附录还用 Gemini3-Flash 复算 Gap Score,二者排名 Pearson correlation 为 0.9656

第二阶段是 capability gap measurement。作者认为直接平均会把“item 很难导致两边都错”和“模型两侧能力不一致”混在一起,因此采用 two-dimensional Item Response Theory。对模型 ,定义 latent ability: 对应成功概率为: Stage I 的 binary 结果先聚合为四类 count:,再得到 text/image 的 success/fail marginal counts。联合 log-likelihood 为: $ \begin{aligned} \mathcal{L}(\boldsymbol{\Theta}, \boldsymbol{\beta}) = \sum_{i=1}^N \Big[& n_i^{\text{text-success}} \log P_i^{\text{text}}

  • n_i^{\text{text-fail}} \log(1-P_i^{\text{text}}) \ &+ n_i^{\text{image-success}} \log P_i^{\text{image}}
  • n_i^{\text{image-fail}} \log(1-P_i^{\text{image}})\Big]. \end{aligned} \boldsymbol{\theta}i p(\boldsymbol{\theta}i)=\mathcal{N}(\boldsymbol{\theta}i\mid \boldsymbol{\mu},\boldsymbol{\Sigma}), \qquad \boldsymbol{\Sigma}=LL^\top. \mathcal{L}{\text{MAP}} = \mathcal{L}(\boldsymbol{\Theta},\boldsymbol{\beta}) -\frac12\sum{i=1}^N(\boldsymbol{\theta}i-\boldsymbol{\mu})^\top \boldsymbol{\Sigma}^{-1}(\boldsymbol{\theta}i-\boldsymbol{\mu}) -\frac{N}{2}\log |\boldsymbol{\Sigma}|. \Delta\theta_i = \theta_i^{\text{text}} - \theta_i^{\text{image}}, \qquad \mathcal{G}{\text{abs}}(\Delta\theta_i)=\frac{|\Delta\theta_i|}{1+|\Delta\theta_i|}. \lambda{\mathrm{fail}}=\lambda{\mathrm{succ}}=2$。直觉是:如果模型两边都成功,说明统一性更强;如果两边都失败,单纯看差值可能低估了“共同无能力”的问题,需要惩罚。

3.5 Evaluation pipeline pseudocode(论文算法化流程;非 released code)

论文没有公开实现仓库,以下伪代码仅对应论文中的评测和 MIRT-MAP 公式,不代表 released code。

import torch
import torch.nn.functional as F
 
 
def judge_bidirectional_outputs(model, items, judge):
    records = []
    for item in items:
        text_answer = model.generate_text(item.image, item.und_text)
        image_answer = model.generate_image(item.image, item.gen_text)
 
        text_ok = judge.score_text(
            question=item.und_text,
            answer=text_answer,
            reference_text=item.y_text,
            reference_image=item.y_image,
        )  # binary 0/1
        image_ok = judge.score_image(
            question=item.gen_text,
            image=image_answer,
            reference_text=item.y_text,
            reference_image=item.y_image,
        )  # binary 0/1
        records.append((text_ok, image_ok))
    return records
 
 
def aggregate_counts(records):
    counts = {"T_ok_I_bad": 0, "T_bad_I_ok": 0, "both_ok": 0, "both_bad": 0}
    for text_ok, image_ok in records:
        if text_ok and image_ok:
            counts["both_ok"] += 1
        elif text_ok and not image_ok:
            counts["T_ok_I_bad"] += 1
        elif (not text_ok) and image_ok:
            counts["T_bad_I_ok"] += 1
        else:
            counts["both_bad"] += 1
    return counts
 
 
def mirt_map_gap(counts_by_model, steps=5000, lr=1e-2, lam_fail=2.0, lam_succ=2.0):
    n_models = len(counts_by_model)
    theta = torch.zeros(n_models, 2, requires_grad=True)  # [:, 0]=text, [:, 1]=image
    beta = torch.zeros(2, requires_grad=True)
    mu = torch.zeros(2, requires_grad=True)
    tril = torch.eye(2, requires_grad=True)
    opt = torch.optim.Adam([theta, beta, mu, tril], lr=lr)
 
    for _ in range(steps):
        sigma = tril @ tril.T + 1e-4 * torch.eye(2)
        inv_sigma = torch.inverse(sigma)
        log_det = torch.logdet(sigma)
        loss = 0.0
        for i, c in enumerate(counts_by_model):
            p_text = torch.sigmoid(theta[i, 0] - beta[0])
            p_img = torch.sigmoid(theta[i, 1] - beta[1])
            text_success = c["T_ok_I_bad"] + c["both_ok"]
            text_fail = c["T_bad_I_ok"] + c["both_bad"]
            img_success = c["T_bad_I_ok"] + c["both_ok"]
            img_fail = c["T_ok_I_bad"] + c["both_bad"]
            log_lik = (
                text_success * torch.log(p_text + 1e-8)
                + text_fail * torch.log(1 - p_text + 1e-8)
                + img_success * torch.log(p_img + 1e-8)
                + img_fail * torch.log(1 - p_img + 1e-8)
            )
            diff = theta[i] - mu
            log_prior = -0.5 * diff @ inv_sigma @ diff - 0.5 * log_det
            loss = loss - (log_lik + log_prior)
        opt.zero_grad()
        loss.backward()
        opt.step()
 
    delta = theta[:, 0] - theta[:, 1]
    base_gap = torch.abs(delta) / (1.0 + torch.abs(delta))
    adjusted = []
    for gap, c in zip(base_gap, counts_by_model):
        total = sum(c.values())
        s_i = c["both_ok"] / max(total, 1)
        f_i = c["both_bad"] / max(total, 1)
        logit_gap = torch.logit(gap.clamp(1e-6, 1 - 1e-6)) + lam_fail * f_i - lam_succ * s_i
        adjusted.append(torch.sigmoid(logit_gap) * 100)
    return torch.stack(adjusted)

3.6 Unified Knowledge empirical study:用知识注入/编辑检查“单侧训练能否迁移”

Figure 4 解读:训练数据 case gallery 展示知识 manipulation 的基本形式。论文把知识实体写成 ,其中 subject/object 可以是文本或图像;在视觉-语言关系里,它主要对应“图像中的对象”和“文本实体名/描述”之间的映射。

作者进一步问:如果理解和生成真的共享知识,那么在一侧注入或编辑知识后,另一侧也应受益。实验选择三种不同架构的 UMM:Show-o2、OmniGen2、Bagel,并构造两类知识操作:

  • Knowledge Injection:先从约 2,000 个 landmarks、celebrities、biological organisms 等长尾候选实体出发,每个实体收集 10+ 图像;再用模型 VQA 和 T2I 检查,只有所有目标 UMM 都无法识别/生成的实体才保留,最终得到约 100 个 unknown objects。
  • Knowledge Editing:从 GenEval 选择约 50 对概念相关或同类对象,如 boat ↔ carcamera ↔ microwave,用 Qwen-Image 生成图像,并构造 counter-factual label assignment:Object A 的图像在 VQA 中标成 Object B,prompt “Object A” 的 T2I target 则是 Object B 的图像。

训练样本是 bidirectional 的:VQA 侧每个 object 有 open-ended 和 multiple-choice 两类问题,每类 5 个样本;T2I 侧每个 object 有 10 个 caption-image pairs(5 个详细描述 + 5 个短 caption)。评估中,understanding 任务和 knowledge editing 的 generation 任务用 GPT5-mini 判定,knowledge injection 的 generation 任务用 CLIP 相似度比较生成图与参考图。

4. Experimental Setup (实验设置)

4.1 数据集与规模

  • GAPEVAL benchmark:646 个 human-annotated unified questions;每个问题可以通过 text 或 image 输出回答。
  • 任务类别:Instruction Following、Numerical Perception、World Knowledge、Reasoning 四大类。
  • Empirical study 数据:knowledge injection 从约 2,000 个候选长尾实体过滤到约 100 个 unknown objects;knowledge editing 从 GenEval 选择约 50 对对象;每个实体构造 VQA 与 T2I 双向训练样本。

4.2 模型与 baselines

UMM 评测覆盖 9 个 unified models:Bagel-7B、OneCAT-3B、UniWorld-V1、UniPic2-Mataquery-9B、Show-o2、OmniGen2、Ovis-U1、Gemini2.5-Flash-Image、GPT-Image-1。非 UMM baselines 包括理解-only 与生成-only 模型:GPT5-mini、Gemini2.5-Flash、Qwen3-VL 235B-A22B、Qwen3-VL 8B、FLUX.1-dev、Qwen-Image。

4.3 Metrics

  • Succ. / Success Score:同一问题在理解与生成两侧都回答正确的比例。
  • Und. / Understanding Score:文本回答正确率。
  • Gen. / Generation Score:图像输出正确率。
  • Gap Score:基于 MIRT-MAP latent abilities 的 understanding-generation gap,归一化到 0–100,越低表示两侧越一致。
  • Judge reliability:GPT5-mini 与人工在 200 held-out samples 上 92% agreement;Gemini3-Flash 与 GPT5-mini 计算的 Gap Score 排名 Pearson correlation 为 0.9656。

4.4 采样与训练配置

Benchmark evaluation 对每个模型、每个问题、每个输出模态执行 10 independent sampling runs,最终报告 average accuracy 与 Gap Score。论文没有给出所有模型的统一训练/推理超参数,因为多数模型是 closed-source 或直接调用现成 checkpoint/API;empirical study 的 fine-tuning 细节以知识操作任务为主,论文未公开具体 GPU、batch size、learning rate 等完整训练配置。

5. Experimental Results (实验结果)

5.1 主结果:UMM 普遍存在 understanding-generation gap

Figure 3 解读:heatmap 把模型的 Understanding Score、Generation Score 与 Gap Score 放在同一空间中。趋势不是“性能越高 gap 越低”:一些模型在某一侧分数较高,但另一侧跟不上;也有模型整体成功率不高却相对更均衡。它说明 unified model 的能力评价需要同时看性能和一致性。

主表中每个任务报告 Succ / Und / Gen / Gap,最后一列是整体 Gap Score。关键 UMM 结果如下:

ModelWorld KnowledgeNumerical PerceptionInstruction FollowingReasoningOverall Gap
Bagel52.24 / 88.17 / 58.50 / 56.672.40 / 17.00 / 8.40 / 84.8746.38 / 59.15 / 75.74 / 57.382.49 / 35.67 / 5.38 / 87.1471.52
OneCAT57.14 / 88.26 / 62.92 / 33.142.75 / 9.00 / 9.75 / 62.3323.67 / 50.00 / 41.22 / 37.510.66 / 20.66 / 1.56 / 85.3654.73
UniWorld-V187.84 / 93.28 / 92.74 / 12.601.00 / 10.60 / 3.60 / 84.6828.51 / 62.13 / 46.60 / 70.461.11 / 36.78 / 1.44 / 86.1163.47
Show-o249.32 / 86.31 / 55.84 / 51.027.00 / 16.16 / 15.15 / 71.2421.28 / 70.22 / 32.98 / 70.772.63 / 22.37 / 3.62 / 78.3167.83
OmniGen229.93 / 86.22 / 35.54 / 81.572.00 / 9.25 / 3.50 / 91.553.99 / 9.58 / 55.59 / 92.361.23 / 17.21 / 4.43 / 92.4089.47
Ovis-U137.82 / 87.34 / 43.13 / 75.061.00 / 13.00 / 3.00 / 91.5129.36 / 68.51 / 44.04 / 77.861.70 / 25.37 / 2.62 / 92.0084.10
GPT-Image-166.67 / 95.91 / 68.03 / 44.457.00 / 25.00 / 10.00 / 83.8786.17 / 95.74 / 90.43 / 20.8350.98 / 73.02 / 56.07 / 53.2950.61

这里的核心结论有三条:

  1. 多数 UMM 只能单侧成功:Success Score 普遍远低于 Und. 或 Gen. 单侧分数,说明很多样本在一个模态上答对,在另一个模态上失败。
  2. 理解强不等于生成强:理解-only 模型在 comprehension-oriented tasks 上往往优于 UMM;生成任务中 closed-source UMM 又优于 generation-only baselines,这说明能力迁移存在但很不均衡。
  3. 性能好不等于 unified:OneCAT 整体能力弱于 Bagel,但 Overall Gap 为 54.73,低于 Bagel 的 71.52;UniWorld-V1 在 World Knowledge 上很强,但 Numerical Perception 和 Reasoning gap 仍然很高。

5.2 与 synergy benchmark 的关系

Figure 7 解读:附录分析 Gap Score 与 GIR-Bench performance 的相关性。作者想说明,synergy benchmark 衡量的是完成综合任务的效果,而 Gap Score 衡量的是理解与生成两侧的 alignment;二者相关但不等价。一个模型可以在某些综合任务中表现不错,但在同一知识的 text/image 双向表达上仍然不一致。

5.3 Judge robustness:不同 judge 给出接近排序

附录用 Gemini3-Flash 复算 Gap Score,并与 GPT5-mini 结果比较。示例:Bagel 为 72.96 vs 71.52,OneCAT 为 60.67 vs 54.73,UniWorld-V1 为 66.64 vs 63.47,Show-o2 为 72.33 vs 67.83,OmniGen2 为 88.87 vs 89.74,Gemini2.5-Flash-Image 为 62.65 vs 62.91,GPT-Image-1 为 47.47 vs 50.61。Pearson correlation 达到 0.9656,支持该 factual/objective 评测场景中 MLLM-as-a-Judge 排序较稳定。

5.4 Knowledge manipulation:单侧训练很难自然迁移到另一侧

Figure 5 解读:这张图跟踪 Show-o 在 knowledge edit 任务上的训练过程,示例实体是 Microwave Oven -> Rice Cooker。理解侧曲线在前几千步快速上升并接近 0.8,而生成侧提升明显更慢。这说明文本理解通道更容易吸收新映射,生成通道需要更长优化才能把同一知识视觉化。

Figure 6 解读:模型在不同训练策略下的表现显示,train on understanding 主要提升 understanding,train on generation 主要提升 generation;另一侧通常几乎不动。论文特别指出,knowledge editing 中,理解侧 fine-tuning 可显著提高 Bagel 的 understanding score(约 +0.62)和 OmniGen2(约 +0.56),但 generation 几乎不变;generation 侧训练在 Show-o 上可达到约 0.89 的 generation 提升,却不能同等提升 understanding。

这部分实验直接回应“理解帮助生成 / 生成帮助理解”的问题:作者不是只讨论,而是通过单侧知识注入/编辑做了经验检验。结论偏负面:当前 UMM 中两侧知识往往是 disjoint 的;单侧训练会造成 modality-specific knowledge drift,知识更新不能可靠传播到另一侧。对于 knowledge injection,跨模态影响存在但有限;对于 knowledge editing,旧知识更容易在未训练的一侧残留。

5.5 Limitations 与总体结论

论文没有把 GapEval 解释为最终统一性的完整定义,而是把它定位为可控、可解释的诊断工具。局限主要包括:

  • 评测依赖 MLLM-as-a-Judge;虽然有 92% human agreement 和跨 judge correlation,但 judge 仍可能在复杂视觉生成判断中引入偏差。
  • Benchmark 规模为 646,强调高质量 human annotation 和双向构造,覆盖面不如大规模单向 benchmark。
  • 许多模型是 closed-source/API,训练配置、采样设置和内部架构细节无法完全统一控制。
  • Empirical study 只选择 Show-o、OmniGen2、Bagel 三类代表模型,结论可解释但不是所有 UMM 架构的充分证明。

总体结论是:当前 unified multimodal models 更像是把理解与生成能力放在同一个系统里,而不是已经实现深层知识融合。GAPEVAL 的结果表明,模型能力提升不自动带来低 gap;真正的下一阶段 unified model 需要让 knowledge representation、learning dynamics 和 output modality 之间更一致,而不是只扩展任务接口。

公开代码检索记录

代码搜索未找到开源实现。已检查 arXiv HTML / LaTeX source 中的 GitHub 链接,只有 CVPR author-kit;Web/GitHub 搜索 "Quantifying the Gap between Understanding and Generation" GitHub"GapEval" "Unified Multimodal Models" GitHub"GAPEVAL" "2602.02140""Chenlong Wang" "GapEval" github、GitHub code search 2602.02140,未发现官方实现或数据仓库。因此本笔记不设置 github / github_ref 属性,也不做 released code mapping。