跳转至

SynerMedGen: Synergizing Medical Multimodal Understanding with Generation via Task Alignment

会议: ICML 2026
arXiv: 2605.08724
代码: https://github.com/Mhilab/SynerMedGen (有)
领域: 医学图像 / 多模态VLM / 跨模态合成
关键词: 统一医学MLLM、生成对齐理解、跨模态合成、CTS/MI/TIA、SynerMed数据集

一句话总结

SynerMedGen 提出"生成对齐理解(generation-aligned understanding)"原则——把理解任务直接从同一份配对合成数据里派生出来(CTS / MI / TIA 三个任务),先两阶段训练让理解分支学到对合成有用的表征,再迁移到 latent flow matching 生成分支,在 22 个医学合成任务上同时碾压专用合成模型和已有统一 MLLM。

研究背景与动机

领域现状:医学统一 MLLM(如 HealthGPT、UniMedVL)开始把"理解"和"生成"塞进同一个模型——理解处理 VQA / 报告生成,生成处理 CT↔MR、PET↔CT 这类跨模态合成。架构上多走 dual-pathway 或 connector + diffusion 的混搭。

现有痛点:现有统一框架把理解和生成当作互不相关的两个目标:理解端用 lesion-level VQA 等"识别风格"任务训,生成端用 pixel-level 的合成 loss 训。结果就是模型在 VQA 上拿高分,但跨模态合成时该保留的解剖结构丢了、该改的对比度也没改对——supervision 完全没对齐。

核心矛盾:医学跨模态合成需要的"理解"是slice-level 对应 + 模态识别 + 变换方向,而传统理解 supervision 只给"全局语义",两边的有用信息根本不重叠。

本文目标:回答一个"统一医学 MLLM 里被回避了的根本问题"——什么样的"理解"才真正对生成有用? 并据此设计具体的任务。

切入角度:既然要让理解服务于生成,那就从生成数据本身派生理解任务,让两边的训练信号天然耦合;同时坚持两阶段训练,把第一阶段学到的多模态先验通过共享参数自然迁移到生成阶段。

核心 idea:定义"生成对齐理解"原则 → 设计三个直接对应合成需求的理解任务(CTS 抓配对、MI 抓模态可控、TIA 抓变换方向) → 两阶段先理解后生成训练 → 同时放出 1M 配对样本 + 2M 理解实例的 SynerMed 数据集。

方法详解

整体框架

基于 Bagel 统一架构:一个理解 encoder \(E_{\text{ViT}}\) 出语义 token \(\mathbf{z}_{\text{ViT}}\),一个生成 encoder \(E_{\text{VAE}}\) 出 latent token \(\mathbf{z}_{\text{VAE}}\),两路 token 经 projection 进入共享的 Mixture-of-Transformer-experts(MoT)。MoT 含两个专家:理解专家做 VLM prompted 学习,生成专家做 conditional latent synthesis。Stage I(GAU):在三类生成对齐理解任务上训理解专家;Stage II(UCG):在同一份配对数据上做 VAE latent 空间的 flow matching,VAE decoder 还原像素。所有理解任务都形式化为"在理解专家上 prompted-生成短答案 token",loss 是只在答案 token 上算的 masked NTP:\(\mathcal{L}_{\text{NTP}}(\mathbf{y}^*)=-\sum_i\log p_\theta(y_i^*\mid \mathbf{y}^*_{<i},\mathbf{x}_{\text{text}},\mathbf{z}_{\text{ViT}})\)

关键设计

  1. Conditional Target Selection(CTS)—— 抓 slice-level 配对:

    • 功能:强制模型在"显式给定目标模态 \(m_{\text{tgt}}\)"的约束下,从 \(N\) 个候选里挑出与源切片 \(x_{\text{src}}\) 真正配对的目标切片 \(x^+=x_{\text{tgt}}\)
    • 核心思路:把任务做成 multiple-choice prompt,模型生成正确选项字母。关键 trick 是 hard negative 不取随便切片,而取同一目标体积里相邻 \(\pm 1\sim\pm K\) 的切片——这逼模型在细粒度解剖层面区分,而不是靠"哦这是个 brain"这种粗语义糊弄过去。损失 \(\mathcal{L}_{\text{CTS}}=\mathcal{L}_{\text{NTP}}(\mathbf{y}^*_{\text{CTS}})\)
    • 设计动机:跨模态合成要求"逐切片"保留患者特异的解剖与病灶,coarse VQA 学不到 fine-grained slice 对应;hard negative from neighbors 是逼这个能力出现的最关键设计。
  2. Modality Identification(MI)—— 让模态成为显式可控因子:

    • 功能:让模型识别输入图像(或每个 panel)的模态——CT / CBCT / PET / MRI(可细到 MRI sequence)。
    • 核心思路:同样的 prompted-生成框架,模型直接输出模态标签。题库里故意包含易混对——CT vs CBCT、近邻 MRI 对比度——逼模型学到"模态"这一可控变量的真正特征而不是表面 shortcut。损失 \(\mathcal{L}_{\text{MI}}=\mathcal{L}_{\text{NTP}}(\mathbf{y}^*_{\text{MI}})\)
    • 设计动机:跨模态合成需要"目标模态"作为可控条件输入;如果理解阶段不把模态显式编码进表征,生成阶段就只能从纠缠的外观线索里硬抠,效果差。
  3. Transformation Instruction Alignment(TIA)—— 把变换方向 grounding 到文本:

    • 功能:给一对已配对图像 \((x_1, x_2)\),让模型从一组短描述里挑出唯一正确的"路线描述"(如 "CT→MRI: 改变对比度,保留解剖")。
    • 核心思路:每条合成 route(有序模态对)维护一个描述池,正例 \(e^+\) 从 ground-truth route 池抽,\(R-1\) 个 distractor 从其他 route 抽——distractor 专门包含"方向反了"和"模态对错了"这两类常见混淆。损失 \(\mathcal{L}_{\text{TIA}}=\mathcal{L}_{\text{NTP}}(\mathbf{y}^*_{\text{TIA}})\)
    • 设计动机:仅有 slice 对应 + 模态识别还不够——模型仍可能搞不清"该改什么、该留什么"。TIA 直接训练"变换语义 grounding 到文本"的能力,把合成路线变成模型显式知道的概念。

损失函数 / 训练策略

Stage I(GAU):理解专家在三任务上联合训练,总 loss \(\mathcal{L}_{\text{Stage I}}=\mathcal{L}_{\text{CTS}}+\mathcal{L}_{\text{MI}}+\mathcal{L}_{\text{TIA}}\)Stage II(UCG):生成专家在 VAE latent 上做 flow matching 条件合成,理解专家与共享 MoT 已被 Stage I 训得"对生成友好",参数继续随生成训练微调。SynerMed 数据集含 1M 配对合成样本 + 2M 生成派生理解实例。

实验关键数据

主实验

在 SynthRAD2023(CBCT↔CT、MRI↔CT、PET↔CT 多部位)和 BraTS(T1/T2/T1c/FLAIR 四模态相互转换)共 22 个合成任务上对比,指标 SSIM(× 100):

任务方向 Pix2Pix CycleGAN BBDM ResViT SynDiff RCD HealthGPT UniMedVL SynerMedGen
Brain CBCT→CT 66.17 53.32 71.09 85.00 85.47 85.97 57.37 51.48 87.15
Pelvis CBCT→CT 63.55 55.87 60.49 84.00 83.21 86.22 46.89 43.94 87.14
Brain MRI→CT 74.33 52.65 68.99 86.39 87.19 86.12 84.29 54.11 88.87
Whole-Body CT→PET 72.21 65.98 67.68 87.07 88.12 88.90 66.54 74.12 91.10
BraTS T2→T1 59.34 57.19 56.77 86.94 88.31 88.01 60.13 77.26 90.58
BraTS T1→T2 62.10 53.31 56.41 85.78 84.25 86.19 70.32 78.88 87.14

SynerMedGen 在所有 22 项里全部排第一,且对统一模型基线(HealthGPT、UniMedVL)的领先尤其大(普遍 +15~30 SSIM 分)。

消融实验

配置 平均 SSIM 趋势 说明
Full SynerMedGen(CTS+MI+TIA → UCG) 最优 三任务全开
只用传统 VQA-style 理解 → UCG 显著掉点 验证"task misalignment"确实是病根
仅 Stage I(GAU),零样本生成 22 任务上已达强 zero-shot SSIM 没训生成就能合成,证明理解阶段已把生成知识学到
去掉 CTS slice-level 错位增加,合成解剖飘 配对约束关键
去掉 MI 目标模态控制崩 模态可控因子缺失
去掉 TIA 方向反转 / 改错地方 缺乏 route-level grounding

关键发现

  • 只训理解、不训生成就能在 22 个合成任务上拿到强 SSIM——这是最 striking 的结果,直接证明"生成对齐理解"原则有效:理解阶段已经把生成需要的表征学到了,生成阶段只是把它"翻译"回像素。
  • CTS 的 hard negative 设计(同体积相邻切片)是不可替代的,换成随机切片后任务退化为粗语义识别,合成性能大跌。
  • 跨数据集 zero-shot 测试中,SynerMedGen 也保持优势,说明三任务派生的表征是真正模态/任务无关的通用先验。
  • 统一 MLLM 基线(HealthGPT、UniMedVL)在 CBCT 这类对比度细微的合成上掉得最厉害,进一步佐证:单纯把生成头接到理解模型上而不对齐 supervision,等于白接。

亮点与洞察

  • "理解任务必须从生成数据派生"是个可迁移的设计原则——任何"统一理解 + 生成"的工作(视频生成、3D 资产生成、代码生成)都可以套用:先想清楚"生成需要什么先验",再反推出对应的理解任务,而不是默认拿 VQA / caption 凑数。
  • 三任务分别对应"内容、模态、方向"三类先验,几何上覆盖了跨模态合成的全部必要维度,分工干净到几乎可作为理解任务设计的 checklist
  • "Stage I 单独就有强 zero-shot 生成"这一现象暗示:在统一模型里,理解和生成共享的不是 token 表征,而是MoT 共享参数里隐含的多模态先验——这给"理解-生成迁移"提供了一个具体可测量的实验证据。

局限与展望

  • 仍只局限在跨模态切片合成;3D 体积、时序(4D-CT)等高阶任务尚未覆盖。
  • 三任务都是 multiple-choice / classification 形式,更开放的生成-描述类理解(如详细影像报告)能不能进一步提升合成质量未探索。
  • Stage I + Stage II 串行训练,对超大数据集训练成本不低;能否端到端联合训练值得探索。
  • 跨机构/扫描仪的 domain shift 鲁棒性论文未深入测试,临床部署还需进一步评估。

相关工作与启发

  • vs HealthGPT:HealthGPT 用任务特定 adapter 把理解和生成分别接上,但 supervision 不对齐;SynerMedGen 不增加 adapter,而是改 supervision 设计,性能差 15~30 SSIM 分。
  • vs UniMedVL:UniMedVL 走"progressive learning curriculum",但仍用传统理解任务;SynerMedGen 证明 curriculum 不够,supervision alignment 才是关键。
  • vs 通用领域 Bagel / Show-o / Janus:这些工作的统一性更多在"架构层",本文在"任务设计层"做对齐,思路正交且可叠加。

评分

  • 新颖性: ⭐⭐⭐⭐⭐ "从生成数据派生理解任务"作为原则被首次显式提出且 instantiate 得很干净。
  • 实验充分度: ⭐⭐⭐⭐ 22 个合成任务 + zero-shot + 未见数据集 + 大规模数据集开源,体量够。
  • 写作质量: ⭐⭐⭐⭐ 三任务的设计动机用"内容/模态/方向"的三段论讲得很清楚。
  • 价值: ⭐⭐⭐⭐ 给医学统一 MLLM 设立了新 SOTA,1M 配对 + 2M 理解的 SynerMed 数据集本身就是社区贡献。