信息速览
INFOBOX
| 数据集名称 | MedReCo-DB |
| 英文全称 | MedReCo-DB: A Large-Scale Comparative Imaging Resource for Entity-Aware Radiological Reasoning |
| 别名 / 简称 | MedReCo-DB、MedReCo、Medical Comparative Reasoning Database |
| 疾病分类 | 多模态多疾病覆盖。核心映射:CA40–CA4Z 呼吸系统疾病 / CB24 心脏肥大 / DB90–DB98 胸膜与胸腔疾病 / DD50 肝脏疾病 / 8A00–8A0Z 脑血管疾病 / 2C60–2C6Z 乳腺肿瘤 / 5A10–5A1Z 甲状腺疾病 |
| SNOMED CT | 46680009 Cardiomegaly / 233604007 Pneumonia / 60046008 Pleural effusion / 36971009 Pulmonary nodule / 91502008 Liver disease / 274065003 Brain infarction / 254837009 Breast mass / 363296004 Disorder of thyroid 等 139 实体映射 |
| 数据模态 | 影像(胸部 X 光 / 胸部 CT / 腹部 CT / 脑部 MRI / 乳腺超声 / 甲状腺超声 / 肝脏超声)+ 文本(放射报告) |
| AI 任务类型 | 实体条件图像检索、生成性比较解读(VQA)、纵向随访预测、跨模态视觉表征学习 |
| 样本总数 | 690,000+ 张图像(来自 160,000+ 名患者),1,293,418 个检索三元组 + 204,104 个 VQA 对 + 930 个纵向随访样本 |
| 数据大小 | ~50 GB(派生注释与基准分割)/ 原始影像需从各源数据集获取(数百 GB) |
| 数据格式 | JPEG(2D 影像)/ NIfTI(3D 体数据)/ JSON(实体标注)/ JSONL(VQA 对)/ CSV(元数据) |
| 许可证 | 各源数据集原始许可(MIMIC-CXR: PhysioNet Credentialed; CheXpert: Stanford RUA; CT-RATE: CC BY-NC 4.0; AMOS-MM: CC BY-NC 4.0; BIMCV-R: CC BY-NC 4.0; IU-Xray: Open) |
| 访问级别 | 注册后开放(派生注释与基准在 HuggingFace 开放;原始影像需从各源数据集申请) |
| DUO 标签 | HMB, NPUNCU |
| 语言 | 英文(MIMIC-CXR/CheXpert/IU-Xray/CT-RATE/BIMCV-R 报告)/ 中文(CURG 超声报告) |
| 首发日期 | 2026-06-04(arXiv:2606.06407) |
| 最后更新 | 2026-06-08(arXiv v2 修订) |
| 发布机构 | 上海交通大学人工智能学院 & 上海人工智能实验室(联合中国科学技术大学、哈佛医学院、武汉大学人民医院、上海市第六人民医院) |
| 官方主页 | https://github.com/time-seed/MedReCo |
| 下载地址 | https://huggingface.co/datasets/timeseed/MedReCo-DB |
| DOI | 10.48550/arXiv.2606.06407 |
| 引用次数 | 新发布(Google Scholar,截至 2026-08) |
| AI 就绪度评分 | ⭐⭐⭐⭐(4/5)— 完整的检索与 VQA 基准划分 + LLM 解构实体标注 + 放射科医生审核 + 多阶段 VQA 过滤;扣分项:原始影像需多源分别申请、内部 SSPH 脑 MRI 不公开、LLM 标注残留噪声 |
| 页面状态 | published |
§0 E-E-A-T 信任声明与免责声明
| 字段编号 | 字段名 | 内容 |
|---|---|---|
0.1 |
medical_reviewer |
医学审核者:[千方病案医学编辑部]交叉审核:§2 医学背景(ICD-11 映射、临床实体定义、疾病关联)、§7 偏倚分析。 |
0.2 |
data_engineering_reviewer |
数据工程审核者:[千方病案医学编辑部交叉审核] 医疗 AI 数据工程师,审核范围:§4 DAIMS 数据字典、§5 数据划分策略、§6 预处理 Pipeline 和坑点。 |
0.3 |
review_date |
2026-08-04 |
0.4 |
verification_method |
交叉审核 |
0.5 |
disclaimer |
见下方强制免责声明 |
0.6 |
conflict_of_interest |
无利益冲突。千方病案医数集与 MedReCo-DB 发布团队无商业合作关系。 |
审核溯源:
| 审核项 | 依据来源 |
|---|---|
| 数据集规模与统计 | arXiv:2606.06407v2(Zhang et al., 2026)论文正文及补充材料 Table S5–S8 |
| 实体体系定义 | 论文 §3 实体特异性报告分解 + 补充材料实体列表 |
| 模型架构与训练 | 论文 §4 MedReCo 两阶段架构 + §5 实验设置 |
| 性能基准 | 论文 §5 实验结果 + Table 1–3 + 补充材料 Table S9–S12 |
| 数据来源与许可 | 论文 §2 MedReCo-DB 构建 + 补充材料 Table S1 + HuggingFace 数据集页面 |
| 伦理审批 | 论文 §6 伦理声明(IRB: 2023-KY-082(K)) |
医疗免责声明:本页面提供的医学信息仅供研究和教育目的,不构成医疗建议、诊断或治疗方案。数据集的医学描述基于公开发表的文献,未经逐一临床验证。任何基于该数据集训练的 AI 模型在应用于临床决策前,必须经过独立的临床验证和监管审批。
技术免责声明:本页面的代码示例、预处理建议和基准性能数据基于公开资料整理,不保证在特定环境下的准确性和适用性。使用者应自行验证代码安全性和数据预处理流程的正确性。千方病案医数集不对因使用本页面信息而导致的任何直接或间接损失承担责任。
数据使用合规:使用本页面描述的数据集前,请务必阅读并遵守数据集原始许可协议。MedReCo-DB 聚合了 8 个源数据集,每个源数据集有独立的许可协议和访问要求(如 PhysioNet CITI 培训、Stanford RUA 签署等)。DUO 标签仅供参考,具体使用限制以各源数据集官方协议为准。
§1 数据集概览
§1.0 📌 30 秒速览
MedReCo-DB 是上海交通大学、上海人工智能实验室联合哈佛医学院等机构于 2026 年 6 月发布的大规模对比影像资源库,包含超过 690,000 张图像和 160,000 名患者,覆盖胸部 X 光、胸部 CT、腹部 CT、脑部 MRI、乳腺超声、甲状腺超声、肝脏超声 7 种影像模态,来自 8 个机构、4 个国家。
它的独特价值在于首次将放射学比较推理建模为实体感知的跨图像推理问题——利用 DeepSeek-V3.1 大语言模型将放射报告解构为 139 个临床实体(42 解剖结构、69 异常发现、28 病理状态),通过三重文本相似度量化(BioLord + RaTEScore + RadGraph-XL)构建实体级正负样本对,无需人工标注即可实现细粒度比较学习。这填补了医疗多模态 AI 缺乏纵向病情演变对比数据的空白。
你可以用它来:训练一个能根据指定解剖结构或异常发现检索相似病例的 AI 模型、构建一个能比较两张影像并描述病情变化的视觉语言模型、或者研究如何从常规临床数据中学习放射学比较推理能力。
§1.1 摘要
MedReCo-DB 由上海交通大学人工智能学院(Ya Zhang、Yanfeng Wang、Weidi Xie 团队)联合上海人工智能实验室、中国科学技术大学、哈佛医学院、武汉大学人民医院和上海市第六人民医院共同构建。数据集聚合了 8 个已有影像数据集(5 个内部 + 3 个外部),覆盖美国、土耳其、西班牙、中国 4 个国家的 8 个医疗机构,包含胸部 X 光(MIMIC-CXR、CheXpert Plus、IU-Xray)、胸部 CT(CT-RATE、BIMCV-R)、腹部 CT(AMOS-MM)、脑部 MRI(SSPH)、超声(CURG: 乳腺/甲状腺/肝脏)7 种影像模态。核心创新在于利用 DeepSeek-V3.1 大语言模型将每份放射报告解构为 139 个预定义临床实体(42 解剖结构、69 异常发现、28 病理状态)的提及状态(阳性/阴性/不确定/未提及),并通过 BioLord、RaTEScore、RadGraph-XL 三种互补的文本相似度指标量化实体级图像对相似性,自动构建正样本对(三指标均 > 0.9)和负样本对(三指标均 < 0.3),无需人工标注。基于此资源,作者开发了 MedReCo(实体感知视觉编码器,用于可控病例检索)和 MedReCo-VLM(视觉语言扩展,用于生成性比较解读)两个模型,在 12 项内部检索任务中全部获得最高 Recall@1,在纵向随访任务上比基线提升 14.5–46.5 个百分点。
§1.2 战略价值分析
技术创新维度:MedReCo-DB 首次将放射学比较推理——放射科医生日常工作中最核心的认知活动——形式化为可计算的实体感知跨图像推理问题。传统医学影像 AI 在单图像诊断上已取得强劲性能,但与放射学实践严重脱节:放射科医生从不孤立地解读一张影像,而是不断进行两种比较——与患者自身既往检查的时间比较(“这个结节变大了吗?”)和与其他类似病例的参考比较(“这看起来像什么?”)。MedReCo-DB 通过三级临床实体层级(解剖结构 → 异常发现 → 病理状态)将这种比较推理分解为可学习的子任务,利用 LLM 从常规配对的影像-报告数据中自动提取结构化监督信号,无需专家标注即可实现细粒度比较学习,这在医学影像 AI 领域是方法论层面的突破。
应用影响维度:MedReCo-DB 直接回应了临床 AI 部署的核心痛点——模型在单图像上表现好,但在真实临床场景中无法进行时间序列比较和类似病例检索。这在胸部影像随访(如肺癌筛查中结节变化评估)和跨模态参考(如将疑难病例与类似已确诊病例对比)中尤为关键。MedReCo-VLM 在纵向随访任务上将胸片准确率提升 14.5–46.5 个百分点、CT 提升 13.0–27.9 个百分点,这种幅度的提升在医学 AI 领域极为罕见,表明比较推理能力是可以从大规模常规数据中学习的。此外,7 种模态、4 个国家、8 个机构的多源异构设计为评估模型的跨中心泛化性提供了天然测试床。
生态推动维度:MedReCo-DB 的发布标志着医学影像 AI 从"单图像分类"范式向"比较推理"范式的转变。它同时提供了两大基准任务(可控检索 + 比较解读)、完整的评估协议、开源代码和 HuggingFace 数据集,构建了一个可复现的研究生态。139 个临床实体的预定义体系覆盖了放射学的主要观察维度,可作为后续研究的标准化本体。更广泛地说,MedReCo-DB 证明了 LLM 可以作为医学影像领域的"弱监督信号发生器"——从已有配对数据中提取结构化监督,这对标注成本极高的医学领域具有重要实践意义。
§1.3 横向对比
| 数据集 | 样本量 | 模态 | 标注方式 | 核心差异化 |
|---|---|---|---|---|
| MedReCo-DB | 690,000+ 图像 / 160,000+ 患者 | 7 种模态(X光/CT/MRI/超声) | LLM 报告解构 + 139 实体 + 三重相似度 | 实体感知跨图像比较推理 |
| MIMIC-CXR | 377,110 图像 | 胸部 X 光 | NLP 标注器 14 标签 | 单图像分类 + 报告生成 |
| CheXpert | 224,316 图像 | 胸部 X 光 | NLP + 不确定性标签 | 不确定性建模范式 |
| Open-PMC | 18,000,000 子图 | 文献图文对 | DAB-DETR 子图提取 | 跨模态零样本检索 |
| Medical-Diff-VQA | 164,324 QA 对 | 胸部 X 光 | MIMIC-CXR 派生 | 差异 VQA(MedReCo-DB 基准之一) |
| MMXU | 118K+3K QA | 胸部 X 光 | MIMIC-CXR 派生 | 多模态理解 VQA(MedReCo-DB 基准之一) |
| CT-RATE | 50,188 体数据 | 胸部 CT | 配对报告 | 大规模胸部 CT 配对报告 |
| AMOS-MM | 2,300 扫描 | 腹部 CT | 配对报告 | 多模态腹部 CT |
§1.4 版本演进时间轴
| 时间 | 事件 |
|---|---|
| 2003 | MIMIC 项目启动(MIT LCP),后续衍生 MIMIC-CXR(2019) |
| 2019-01 | CheXpert 发布(Stanford,AAAI 2019),后续扩展为 CheXpert Plus(2024) |
| 2023 | SSPH 脑部 MRI 数据集获 IRB 审批(上海市第六人民医院,IRB: 2023-KY-082(K)) |
| 2024-05 | CT-RATE 发布(Istanbul Medipol,50,188 体数据) |
| 2024-05 | CheXpert Plus 发布(Stanford,arXiv:2405.19538) |
| 2024-12 | AMOS-MM 发布(腹部 CT 多模态数据集) |
| 2026-06-04 | MedReCo-DB 首次发布(arXiv:2606.06407v1),含 690K+ 图像、139 实体、检索与 VQA 基准 |
| 2026-06-08 | arXiv v2 修订版发布 |
| 2026-06 | HuggingFace 数据集 timeseed/MedReCo-DB 上线(1.14M 行 train + 44.8K 行 test) |
| 2026-06 | GitHub 代码仓库 time-seed/MedReCo 发布模型代码与基准构建脚本 |
§1.5 AI 应用场景
| 场景 | 描述 |
|---|---|
| 实体条件病例检索 | 给定一张查询影像和指定临床实体(如"磨玻璃影"),从数据库中检索在该实体层面最相似的参考病例 |
| 生成性比较解读 | 给定两张影像(同一患者不同时间或不同患者),生成关于指定实体相似性/差异/区间变化的自然语言描述 |
| 纵向随访预测 | 对同一患者的随访影像对,预测特定发现的区间变化标签(消退/稳定/新发/质性变化/增加/减少) |
| 跨模态视觉表征学习 | 利用 7 种模态的异构数据训练模态感知的通用医学影像编码器(MoE-ViT 架构) |
| 放射学报告实体抽取 | 从放射报告中提取 139 个临床实体的提及状态,构建结构化报告摘要 |
| 多中心泛化性评估 | 利用 4 国 8 机构的多源数据评估模型跨中心、跨设备、跨报告风格的泛化能力 |
§2 医学背景
§2.1 ICD-11 疾病映射
MedReCo-DB 覆盖 7 种影像模态,横跨呼吸、心血管、消化、神经、内分泌、乳腺等多个系统。以下为 139 个临床实体在 ICD-11 编码体系中的核心映射:
| ICD-11 编码 | 疾病/异常名称 | 涉及模态 | 对应实体层级 |
|---|---|---|---|
| CA40.0 | 肺炎 | CXR / Chest CT | 病理状态 |
| CA40.1 | 肺脓肿 | CXR / Chest CT | 病理状态 |
| CB24 | 心脏肥大 | CXR | 异常发现 |
| DB98.Z | 胸腔积液 | CXR / Chest CT | 异常发现 |
| DB90 | 气胸 | CXR / Chest CT | 异常发现 |
| DB94 | 肺不张 | CXR | 异常发现 |
| 2A21 | 肺恶性肿瘤 | CXR / Chest CT | 病理状态 |
| CA08.1 | 肺气肿 | CXR / Chest CT | 异常发现 |
| DD50 | 肝脏疾病 | Abdomen CT / Liver US | 病理状态 |
| DD50.0 | 脂肪肝 | Abdomen CT / Liver US | 异常发现 |
| DD50.2 | 肝硬化 | Abdomen CT / Liver US | 病理状态 |
| DC2Z | 胆囊疾病 | Abdomen CT / Liver US | 异常发现 |
| DD9Z | 肾脏疾病 | Abdomen CT | 异常发现 |
| 8A00 | 缺血性脑卒中 | Brain MRI | 病理状态 |
| 8A00.1 | 脑出血 | Brain MRI | 病理状态 |
| 8A60 | 脱髓鞘疾病 | Brain MRI | 病理状态 |
| 8A45 | 颅内出血 | Brain MRI | 病理状态 |
| 2C60 | 乳腺恶性肿瘤 | Breast US | 病理状态 |
| 2C6Y | 乳腺其他特指肿瘤 | Breast US | 异常发现 |
| 5A10 | 甲状腺功能减退 | Thyroid US | 病理状态 |
| 5A11 | 甲状腺功能亢进 | Thyroid US | 病理状态 |
| 5A1Y | 甲状腺其他特指疾患 | Thyroid US | 病理状态 |
§2.1b SNOMED CT 映射
| 数据集标签 | ICD-11 | SNOMED CT | SNOMED CT 术语 |
|---|---|---|---|
| Pulmonary consolidation | CA40.0 | 266257000 | Pulmonary consolidation (finding) |
| Pulmonary nodule | 2A21 | 36971009 | Pulmonary nodule (finding) |
| Cardiomegaly | CB24 | 46680009 | Cardiomegaly (finding) |
| Pleural effusion | DB98.Z | 60046008 | Pleural effusion (disorder) |
| Pneumothorax | DB90 | 88079000 | Pneumothorax (disorder) |
| Atelectasis | DB94 | 20524000 | Atelectasis of lung (finding) |
| Emphysema | CA08.1 | 87433001 | Pulmonary emphysema (disorder) |
| Lung mass | 2A21 | 429870009 | Mass of lung (finding) |
| Liver lesion | DD50 | 91502008 | Liver disease (disorder) |
| Hepatic steatosis | DD50.0 | 197321005 | Fatty change of liver (finding) |
| Brain infarction | 8A00 | 274065003 | Cerebral infarction (disorder) |
| Brain hemorrhage | 8A00.1 | 13813007 | Cerebral hemorrhage (disorder) |
| Breast mass | 2C60 | 254837009 | Mass of breast (finding) |
| Thyroid nodule | 5A1Y | 363296004 | Disorder of thyroid |
| Portal vein abnormality | DD50 | 312870009 | Disorder of portal vein |
| Hiatal hernia | DA20 | 7338005 | Hiatus hernia (disorder) |
§2.2 疾病简介与流行病学
MedReCo-DB 覆盖的核心临床场景包括:
| 疾病/异常 | 简介 | 关键流行病学数据 |
|---|---|---|
| 肺结节 | 胸部影像中最常见的异常发现之一,需鉴别良恶性并跟踪变化 | 年度肺癌筛查 CT 中约 20–30% 发现肺结节 |
| 肺炎 | 肺实质感染性炎症,是胸片最常见异常之一 | 全球每年约 4.5 亿例肺炎 |
| 胸腔积液 | 胸膜腔内液体积聚,可见于心衰、感染、肿瘤等多种病因 | 住院患者中约 15% 存在胸腔积液 |
| 脑卒中 | 急性脑血管事件,包括缺血性和出血性 | 全球第二大死因,每年约 1,500 万例 |
| 乳腺病变 | 乳腺超声检出肿块/结节,需 BI-RADS 分级管理 | 女性中最常见恶性肿瘤 |
| 甲状腺结节 | 甲状腺超声检出结节,绝大多数良性但需排除恶性 | 成人发病率约 5–10%(触诊)/ 20–70%(超声) |
| 肝脏病变 | 包括脂肪肝、肝硬化、肝占位等 | 全球约 25% 成人有脂肪肝 |
§2.3 临床任务定义
| 任务类型 | 定义 | 放射学实践场景 |
|---|---|---|
| 实体条件检索 | 给定查询影像 + 指定临床实体,检索在该实体层面最相似的参考影像 | “找一例磨玻璃影表现类似的既往病例” |
| 时间比较解读 | 给定同一患者不同时间的两张影像 + 指定实体,生成该实体的区间变化描述 | “与前次比较,右肺中叶磨玻璃影是否增大?” |
| 跨病例参考比较 | 给定不同患者的两张影像 + 指定实体,比较该实体的相似性和差异 | “这两例肺结节的形态学特征有何异同?” |
| 纵向随访预测 | 对随访影像对,预测特定发现的区间变化方向 | “该患者的肺实变是消退、稳定还是加重?” |
| 报告实体解构 | 从放射报告中提取 139 个临床实体的提及状态 | 将自由文本报告结构化为实体级摘要 |
| 实体级相似度量化 | 通过三种互补指标计算两份报告在指定实体层面的文本相似度 | 自动构建正负样本对用于对比学习 |
| VQA 质量过滤 | 通过图像依赖、语言先验、偏差缓解、医生审核四阶段过滤 VQA 对 | 确保每个 QA 对真正需要比较推理 |
§2.4 患者人群特征
| 维度 | 特征 |
|---|---|
| 数据来源 | 8 个机构:美国 BIDMC + Stanford + Indiana University;土耳其 Istanbul Medipol;西班牙 Valencia BIMCV;中国 PLA General Hospital + Shanghai Sixth People’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’'s Hospital + Longgang Central Hospital |
| 采集时间 | 2008–2022 年(各源数据集时间跨度不同) |
| 年龄分布 | 各源数据集不同,以成人为主(16 岁以上) |
| 性别比例 | 各源数据集不同,总体均衡 |
| 种族分布 | 美国数据集以白人为主,中国数据集以东亚人群为主,土耳其/西班牙数据集为本地人群 |
| 就医类型 | 住院 + 门诊混合(MIMIC-CXR 为住院,CheXpert 为门诊+急诊,IU-Xray 为门诊) |
§2.5 临床意义
放射学比较推理是放射科医生日常工作中最核心的认知活动。研究表明,放射科医生在解读影像时约 60–70% 的时间涉及与既往检查或参考病例的比较。然而,绝大多数医学影像 AI 系统仍在单图像范式下工作,无法支持这种比较推理。MedReCo-DB 填补的空白在于:
- 纵向病情演变:同一患者不同时间点的影像比较是疾病监测和疗效评估的核心,但缺乏大规模标注数据
- 跨病例参考:疑难病例的鉴别诊断常需检索类似已确诊病例,但现有检索系统缺乏实体级精细度
- 多模态泛化:不同影像模态(X光/CT/MRI/超声)的比较推理能力缺乏统一基准
§2.6 金标准/参考标准
| 数据划分 | 标注方式 | 标注者 | 金标准性质 |
|---|---|---|---|
| 检索训练集 | LLM 报告解构 + 三重相似度自动配对 | DeepSeek-V3.1 + BioLord + RaTEScore + RadGraph-XL | 弱监督(自动生成) |
| 检索内部测试 | 同上 + 实体级相关性评估 | 自动 + 放射科医生验证 | 参考标准 |
| 检索外部测试 | 同上,但来自留出中心 | 自动 | 外部参考标准 |
| VQA 训练集 | LLM 生成 + 4 阶段过滤 | DeepSeek-V3.1 + LLaMA-3.1-8B + 放射科医生 | 弱监督(过滤后) |
| VQA 测试集(封闭式) | 同上 + 选项打乱/图像对交换 | 自动 + 放射科医生审核 | 参考标准 |
| VQA 测试集(开放式) | 同上 + BLEU/BERTScore/METEOR/RaTEScore/RadGraph F1 评估 | 自动指标 | 参考标准 |
| 纵向随访 VQA | 放射科医生审核 + 930 样本 | 委员会认证放射科医生 | 参考标准(小规模) |
| 实体定义 | 预定义 139 实体 + RaTE-NER 提取 + Claude 4.5 聚合 | 放射科医生审核所有实体定义 | 专家共识 |
§3 数据集规格
§3.0 版本抉择矩阵
| 你的需求 | 推荐版本 | 大小 | 理由 |
|---|---|---|---|
| 快速体验检索基准 | HuggingFace timeseed/MedReCo-DB | ~50 GB(派生注释) | 含完整检索三元组 + VQA 对,可直接加载训练 |
| 复现论文完整实验 | HuggingFace + 各源数据集 | 数百 GB | 需获取全部 8 个源数据集的原始影像 |
| 仅胸片比较推理研究 | MIMIC-CXR + CheXpert Plus | ~500 GB | 覆盖最大量胸片样本,含外部验证 |
| 多模态泛化性研究 | 全部 7 模态 | 数百 GB | 需全部源数据集,利用 MoE-ViT 多模态路由 |
| 脑部 MRI 比较推理 | SSPH(内部) | 不公开 | 需联系上海市第六人民医院申请合作 |
§3.1 模态详细说明
MedReCo-DB 覆盖 7 种影像模态,按模态组归为 4 类:
| 模态组 | 模态 | 图像格式 | 维度 | 典型图像数 | 数据来源 |
|---|---|---|---|---|---|
| CXR | 胸部 X 光摄影 | JPEG | 2D | 377,110(MIMIC-CXR)+ 223,228(CheXpert Plus)+ 7,470(IU-Xray) | MIMIC-CXR / CheXpert Plus / IU-Xray |
| CT | 胸部 CT | NIfTI | 3D | 50,188(CT-RATE)+ 8,069(BIMCV-R) | CT-RATE / BIMCV-R |
| CT | 腹部 CT | NIfTI | 3D | 2,300(AMOS-MM) | AMOS-MM |
| BRAIN | 脑部 MRI | NIfTI | 3D(4 序列) | 24,770 对(T1WI+T2WI+T2FLAIR+DWI) | SSPH(内部) |
| US | 乳腺超声 | JPEG | 2D | 3,521 | CURG |
| US | 甲状腺超声 | JPEG | 2D | 2,474 | CURG |
| US | 肝脏超声 | JPEG | 2D | 1,395 | CURG |
§3.2 样本统计
| 数据集 | 国家 | 模态 | 患者数 | 研究数 | 图像/体数据 | 角色 |
|---|---|---|---|---|---|---|
| MIMIC-CXR | 美国 | CXR | 65,379 | 227,835 | 377,110 | 内部 |
| CT-RATE | 土耳其 | Chest CT | 21,304 | 25,692 | 50,188 | 内部 |
| AMOS-MM | 中国 | Abdomen CT | 2,300 | 2,300 | 2,300 | 内部 |
| CURG | 中国 | US(乳腺/甲状腺/肝脏) | 7,390 | 7,390 | 配对报告图像 | 内部 |
| SSPH | 中国 | Brain MRI | 24,770 | 24,770 | 24,770 对(4 序列) | 内部 |
| IU-Xray | 美国 | CXR | 3,955 | 3,955 | 7,470 | 外部 |
| CheXpert Plus | 美国 | CXR | 64,725 | 187,711 | 223,228 | 外部 |
| BIMCV-R | 西班牙 | Chest CT | 8,069 | 8,069 | 8,069(>200 万层) | 外部 |
§3.3 数据格式
| 数据类型 | 格式 | 说明 |
|---|---|---|
| 2D 影像(CXR/US) | JPEG | 压缩格式,便于快速加载 |
| 3D 体数据(CT/MRI) | NIfTI (.nii.gz) | 标准医学影像 3D 格式 |
| 实体标注 | JSON | 每份报告的 139 实体提及状态 |
| 检索基准 | JSONL | 三元组(anchor/positive/negative)+ 实体标签 |
| VQA 对 | JSONL | 问题 + 选项 + 答案 + 图像路径 |
| 元数据 | CSV | 患者ID/研究ID/模态/分割标签 |
| 模型权重 | PyTorch (.pt/.safetensors) | MedReCo + MedReCo-VLM 预训练权重 |
§3.4 存储大小
| 组件 | 大小 | 说明 |
|---|---|---|
| 派生注释与基准分割 | ~50 GB | HuggingFace 直接下载 |
| MIMIC-CXR 原始影像 | ~439 GB | 需 PhysioNet 凭证认证 |
| CheXpert Plus 原始影像 | ~500 GB | 需 Stanford RUA 签署 |
| CT-RATE 原始体数据 | ~500 GB | CC BY-NC 4.0 |
| BIMCV-R 原始体数据 | ~1 TB | >200 万层,CC BY-NC 4.0 |
| 全部源数据集合计 | ~2–3 TB | 需分别申请获取 |
§3.5 标注方式
MedReCo-DB 的标注流程是一个多阶段自动化管道,核心创新在于利用 LLM 从常规配对的影像-报告数据中提取结构化监督信号:
┌─────────────────────────────────────────────────────────────────────┐
│ MedReCo-DB 标注管道 │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ ① 实体体系预定义 │
│ ┌──────────────────────────────────────────────────┐ │
│ │ 全身 CT 分类法初始化 │ │
│ │ → 适配各模态特定解剖 │ │
│ │ → RaTE-NER 提取疾病实体 │ │
│ │ → Claude 4.5 Sonnet 聚合同义词 │ │
│ │ → 放射科医生审核 139 实体 │ │
│ │ (42 解剖 + 69 异常 + 28 病理) │ │
│ └──────────────────┬───────────────────────────────┘ │
│ ▼ │
│ ② 报告实体解构(DeepSeek-V3.1) │
│ ┌──────────────────────────────────────────────────┐ │
│ │ 输入:原始放射报告 │ │
│ │ 处理:对每个预定义实体,识别是否被提及 │ │
│ │ 输出:实体 → {提及状态, 提取文本} │ │
│ │ 状态:阳性 / 明确阴性 / 不确定 / 未提及 │ │
│ └──────────────────┬───────────────────────────────┘ │
│ ▼ │
│ ③ 实体级相似度量化 │
│ ┌──────────────────────────────────────────────────┐ │
│ │ 对每个图像对 × 每个实体,计算三种互补指标: │ │
│ │ ├── BioLord: 生物医学概念嵌入语义相似度 │ │
│ │ ├── RaTEScore: 实体级匹配事实一致性 │ │
│ │ └── RadGraph-XL: 临床实体-关系图相似度 │ │
│ │ 正匹配:三指标均 > 0.9 │ │
│ │ 负对:三指标均 < 0.3 │ │
│ └──────────────────┬───────────────────────────────┘ │
│ ▼ │
│ ④ VQA 多阶段过滤管道 │
│ ┌──────────────────────────────────────────────────┐ │
│ │ Stage 1: 图像依赖过滤(移除可从单图回答的 QA) │ │
│ │ Stage 2: 语言先验过滤(LLaMA-3.1-8B 测试 4 次, │ │
│ │ ≥3 次答对的 QA 被移除) │ │
│ │ Stage 3: 偏差缓解(随机打乱选项 + 交换图像对顺序) │ │
│ │ Stage 4: 放射科医生审核(临床意义/事实性/无歧义) │ │
│ └──────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────┘
§3.6 标注者资质
| 标注者 | 角色 | 资质 | 贡献 |
|---|---|---|---|
| DeepSeek-V3.1 | 报告实体解构 | 大语言模型 | 8 个源数据集全部报告的 139 实体提取 |
| RaTE-NER | 疾病实体提取 | 医学 NER 模型 | 从报告中提取疾病实体用于初始化实体体系 |
| Claude 4.5 Sonnet | 同义词聚合 | 大语言模型 | 聚合同义实体(如"pulmonary embolism" = “PE”) |
| BioLord | 语义相似度 | 生物医学概念嵌入模型 | 实体级文本相似度量化 |
| RaTEScore | 事实一致性 | 实体级匹配评估模型 | 实体级文本相似度量化 |
| RadGraph-XL | 关系图相似度 | 临床实体-关系图模型 | 实体级文本相似度量化 |
| LLaMA-3.1-8B | 语言先验检测 | 大语言模型 | VQA 过滤阶段 2(语言先验过滤) |
| 放射科医生 | 实体审核 + VQA 审核 | 委员会认证放射科医师 | 审核 139 实体定义 + 审核 930 纵向随访样本 |
§3.7 采集时间
| 数据集 | 采集时间范围 |
|---|---|
| MIMIC-CXR | 2008–2019 |
| CheXpert Plus | 2002–2017 |
| IU-Xray | 2004–2012 |
| CT-RATE | 未明确披露 |
| BIMCV-R | 2020–2021(COVID-19 期间) |
| AMOS-MM | 未明确披露 |
| CURG | 未明确披露 |
| SSPH | 2023 年前(IRB 审批前回顾性收集) |
§3.8 地域覆盖
| 国家 | 机构 | 模态 | 角色 |
|---|---|---|---|
| 美国 | Beth Israel Deaconess Medical Center (BIDMC) | CXR | 内部 |
| 美国 | Stanford Hospital | CXR | 外部 |
| 美国 | Indiana University | CXR | 外部 |
| 土耳其 | Istanbul Medipol University Mega Hospital | Chest CT | 内部 |
| 西班牙 | Valencia Region Medical Imaging Repository | Chest CT | 外部 |
| 中国 | 解放军总医院 | US(乳腺/甲状腺/肝脏) | 内部 |
| 中国 | 上海市第六人民医院 | Brain MRI | 内部 |
| 中国 | 龙岗区中心医院及人民医院 | Abdomen CT | 内部 |
§3.9 设备规格
| 模态 | 典型设备 | 说明 |
|---|---|---|
| CXR | 数字 X 光摄影系统(DR) | AP/PA 位,MIMIC-CXR 便携式为主 |
| Chest CT | 多排螺旋 CT(64-256 排) | CT-RATE 含低剂量和常规剂量 |
| Abdomen CT | 多排螺旋 CT | AMOS-MM 多中心采集 |
| Brain MRI | 1.5T/3.0T MRI | SSPH 含 T1WI/T2WI/T2FLAIR/DWI 4 序列 |
| 超声 | 彩色多普勒超声诊断仪 | CURG 含乳腺/甲状腺/肝脏三个子集 |
§3.10 深度溯源链
原始数据源 ──────────────────────────────────────────────────────────
│
├─ MIMIC-CXR (PhysioNet, MIT LCP / BIDMC)
│ └─ Johnson et al., 2019, Sci Data
│ └─ 377,110 张 CXR (65,379 患者)
│ └─ 去标识化:HIPAA Safe Harbor
│
├─ CheXpert Plus (Stanford ML Group)
│ └─ Irvin et al., 2019, AAAI
│ └─ 223,228 张 CXR (64,725 患者)
│ └─ 去标识化:Stanford IRB 审批
│
├─ IU-Xray (Indiana University)
│ └─ Demner-Fushman et al., 2016, JAMIA
│ └─ 7,470 张 CXR (3,955 患者)
│
├─ CT-RATE (Istanbul Medipol)
│ └─ Hamamci et al., 2024
│ └─ 50,188 体数据 (21,304 患者)
│
├─ BIMCV-R (Valencia, Spain)
│ └─ Images de COVID-19 初始项目
│ └─ 8,069 体数据 (>200 万层)
│
├─ AMOS-MM (中国多中心)
│ └─ AMOS 系列扩展
│ └─ 2,300 腹部 CT 扫描
│
├─ CURG (解放军总医院)
│ └─ 配对中文超声报告-图像
│ └─ 7,390 例 (乳腺 3,521 + 甲状腺 2,474 + 肝脏 1,395)
│
└─ SSPH (上海市第六人民医院)
└─ IRB: 2023-KY-082(K)
└─ 24,770 对脑部 MRI (4 序列)
└─ 13 种疾病类别
↓ LLM 解构层(DeepSeek-V3.1)────────────────────────────────────
各源数据集放射报告 → 139 实体提及状态提取
└─ 实体体系由 RaTE-NER + Claude 4.5 + 放射科医生构建
└─ 每实体输出 {阳性/阴性/不确定/未提及, 提取文本}
↓ 相似度量化层 ───────────────────────────────────────────────
实体级图像对相似度 → 三重指标
├─ BioLord: 概念嵌入语义
├─ RaTEScore: 事实一致性
└─ RadGraph-XL: 关系图结构
→ 正对 (三指标均 > 0.9) / 负对 (三指标均 < 0.3)
↓ 基准构建层 ─────────────────────────────────────────────────
→ 检索基准: 1,293,418 训练 + 58,380 内部测试 + 33,138 外部测试
→ VQA 基准: 204,104 QA 对 (102K 封闭 + 102K 开放)
→ 纵向随访: 930 样本 (538 CXR + 392 CT)
§3.11 评估指标
| 任务 | 指标 | 说明 |
|---|---|---|
| 实体条件检索 | Recall@k (k∈{1,3,5}) | 基于实体级相关性标准 |
| 封闭式 VQA | 准确率 (Accuracy) | 多选一准确率 |
| 开放式 VQA | BLEU | n-gram 精确率 |
| 开放式 VQA | BERTScore | 语义相似度 |
| 开放式 VQA | METEOR | 基于召回的指标 |
| 开放式 VQA | RaTEScore | 实体级事实一致性(重点临床指标) |
| 开放式 VQA | RadGraph F1 | 临床实体-关系图 F1 |
§3.12 工具生态
| 工具 | 类型 | 用途 | 链接 |
|---|---|---|---|
| MedReCo | 模型 | 实体感知视觉编码器(可控检索) | github.com/time-seed/MedReCo |
| MedReCo-VLM | 模型 | 视觉语言模型(比较解读生成) | github.com/time-seed/MedReCo |
| DeepSeek-V3.1 | LLM | 报告实体解构 | deepseek.com |
| RaTE-NER | NER 模型 | 疾病实体提取 | github.com/ncbi/RaTEScore |
| BioLord | 嵌入模型 | 生物医学语义相似度 | huggingface.co/frederikogtorres/biobord |
| RadGraph-XL | 关系图模型 | 临床实体-关系图 | github.com/ncbi/RadGraph |
| LLaMA-3.1-8B | LLM | VQA 语言先验过滤 | huggingface.co/meta-llama |
| Qwen2.5-7B-Instruct | LLM | MedReCo-VLM 基座模型 | huggingface.co/Qwen |
| HuggingFace Datasets | 数据平台 | 派生注释与基准托管 | huggingface.co/datasets/timeseed/MedReCo-DB |
| PyTorch | 深度学习框架 | 模型训练与推理 | pytorch.org |
| MONAI | 医学影像框架 | 3D 影像预处理 | monai.io |
| SimpleITK | 影像处理 | NIfTI 文件读取 | simpleitk.org |
§4 数据结构详解
§4.0 目录结构预览
medreco-db/
├── retrieval/
│ ├── train/
│ │ ├── cxr/
│ │ │ ├── anatomy/ # CXR 解剖结构级三元组
│ │ │ ├── finding/ # CXR 异常发现级三元组
│ │ │ └── disease/ # CXR 病理状态级三元组
│ │ ├── ct/
│ │ │ ├── anatomy/
│ │ │ ├── finding/
│ │ │ └── disease/
│ │ ├── brain/
│ │ │ ├── anatomy/
│ │ │ ├── finding/
│ │ │ └── disease/
│ │ └── us/
│ │ ├── anatomy/
│ │ ├── finding/
│ │ └── disease/
│ ├── test/ # 内部测试集 (58,380)
│ └── external_test/ # 外部测试集 (33,138)
├── vqa/
│ ├── comparative/ # 比较解读 VQA
│ │ ├── closed/ # 封闭式 (102,052)
│ │ └── open/ # 开放式 (102,052)
│ └── longitudinal/ # 纵向随访 VQA (930)
├── entities/
│ ├── cxr_entities.json # 42+30+9 实体定义
│ ├── ct_entities.json # 19+22+10 实体定义
│ ├── brain_entities.json # 2+9+7 实体定义
│ └── us_entities.json # 7+8+2 实体定义
├── reports/
│ ├── decomposed/ # LLM 解构后的实体标注
│ └── raw/ # 原始报告(需源数据集权限)
├── metadata/
│ ├── source_datasets.csv # 源数据集元信息
│ ├── entity_taxonomy.json # 139 实体完整分类法
│ └── data_splits.csv # 数据划分信息
└── LICENSE.txt
§4.1 DAIMS 标准化字段描述表
检索基准字段(retrieval triplet)
| 字段名 | 数据类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
| anchor_image | string | 锚图像路径 | “train_2115_a_1.nii.gz” | 查询输入 | — | — | 非空 |
| positive_image | string | 正样本图像路径 | “train_2115_b_1.nii.gz” | 正样本 | — | — | 非空 |
| negative_image | string | 负样本图像路径 | “train_2136_a_1.nii.gz” | 负样本 | — | — | 非空 |
| modality_group | string | 模态组 | “CXR” / “CT” / “BRAIN” / “US” | 路由控制 | — | — | 4 类 |
| entity_level | string | 实体层级 | “anatomy” / “finding” / “disease” | 条件标签 | — | — | 3 类 |
| entity_name | string | 具体实体名称 | “ground-glass opacity” | 条件标签 | — | — | 139 实体 |
| split | string | 数据划分 | “train” / “test” / “external_test” | 分割标记 | — | — | 3 类 |
| source_dataset | string | 源数据集 | “MIMIC-CXR” / “CT-RATE” | 溯源 | — | — | 8 源 |
VQA 基准字段
| 字段名 | 数据类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
| question_id | string | 问题唯一标识 | “cxr_find_001” | 索引 | — | — | 非空 |
| image_a_path | string | 图像 A 路径 | “218863_1.jpeg” | 输入 | — | — | 非空 |
| image_b_path | string | 图像 B 路径 | “218875_1.jpeg” | 输入 | — | — | 非空 |
| question_type | string | 问题类型 | “closed” / “open” | 任务路由 | — | — | 2 类 |
| entity | string | 目标实体 | “portal vein” | 条件标签 | — | — | 139 实体 |
| question_text | string | 问题文本 | “Has the portal vein…” | 输入 | — | — | 非空 |
| choices | array | 选项(封闭式) | [“Yes”,“No”] | 输入 | — | null(开放式) | 2-4 项 |
| answer | string | 答案 | “Yes” | 标签 | — | — | 非空 |
| source_dataset | string | 源数据集 | “MIMIC-CXR” | 溯源 | — | — | 8 源 |
纵向随访 VQA 字段
| 字段名 | 数据类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
| modality | string | 影像模态 | “CXR” / “CT” | 路由 | — | — | 2 类 |
| followup_attribute | string | 随访属性 | “相对信号/密度” | 分类 | — | — | 8 类 |
| interval_change | string | 区间变化标签 | “消退” / “稳定” / “新发” | 标签 | — | — | 6 类 |
| anatomy_group | string | 解剖组 | “肺实质” | 条件 | — | — | 非空 |
| finding | string | 具体发现 | “磨玻璃影” | 条件 | — | — | 非空 |
§4.2 标签分布统计
检索基准分布(Table S5)
| 模态组 | 实体层级 | 内部训练 | 内部测试 | 外部测试 | 外部来源 |
|---|---|---|---|---|---|
| BRAIN | 异常 | 37,296 | 4,242 | — | — |
| BRAIN | 解剖 | 20,540 | 2,281 | — | — |
| BRAIN | 疾病 | 63,223 | 7,090 | — | — |
| CT | 异常 | 97,102 | 6,376 | 3,770 | BIMCV-R |
| CT | 解剖 | 115,547 | 7,511 | 5,174 | BIMCV-R |
| CT | 疾病 | 77,752 | 6,026 | 4,120 | BIMCV-R |
| CXR | 异常 | 294,034 | 5,672 | 5,846 | CheXpert+IU-Xray |
| CXR | 解剖 | 557,330 | 10,784 | 9,240 | CheXpert+IU-Xray |
| CXR | 疾病 | 122,026 | 5,070 | 4,988 | CheXpert+IU-Xray |
| US | 异常 | 13,290 | 1,426 | — | — |
| US | 解剖 | 15,242 | 1,640 | — | — |
| US | 疾病 | 2,062 | 262 | — | — |
| 总计 | 全部 | 1,293,418 | 58,380 | 33,138 | — |
VQA 基准分布(Table S6)
| 数据集 | 异常发现 | 解剖结构 | 疾病 | 总计 |
|---|---|---|---|---|
| AMOS-MM | 7,212 | 8,794 | 14,430 | 30,436 |
| BIMCV-R | 4,798 | 972 | 600 | 6,370 |
| Brain MRI | 15,606 | 4,996 | 11,684 | 32,286 |
| CT-RATE | 24,932 | 8,496 | 12,726 | 46,154 |
| CheXpert Plus | 1,746 | 3,424 | 1,820 | 6,990 |
| MIMIC-CXR | 21,614 | 1,982 | 7,522 | 31,118 |
| CURG/US | 36,798 | 10,622 | 3,330 | 50,750 |
| 总计 | 112,706 | 39,286 | 52,112 | 204,104 |
纵向随访 VQA 分布(Table S7-S8)
| 间隔变化标签 | CXR | CT | 总计 | 占比 |
|---|---|---|---|---|
| 消退 | 177 | 97 | 274 | 29.46% |
| 稳定 | 150 | 96 | 246 | 26.45% |
| 新发 | 97 | 117 | 214 | 23.01% |
| 质性变化 | 40 | 53 | 93 | 10.00% |
| 增加 | 40 | 24 | 64 | 6.88% |
| 减少 | 34 | 5 | 39 | 4.19% |
| 总计 | 538 | 392 | 930 | 100% |
§4.3 关键字段统计
| 统计维度 | 数值 |
|---|---|
| 总图像数 | 690,000+ |
| 总患者数 | 160,000+ |
| 临床实体总数 | 139(42 解剖 + 69 异常 + 28 病理) |
| 检索三元组总数 | 1,384,936(1,293,418 train + 58,380 test + 33,138 external) |
| VQA 对总数 | 204,104(102,052 封闭 + 102,052 开放) |
| 纵向随访样本 | 930(538 CXR + 392 CT) |
| 模态组数 | 4(CXR / CT / BRAIN / US) |
| 源数据集数 | 8 |
| 国家数 | 4 |
| 机构数 | 8 |
§4.4 数据层级关系
患者 (subject_id)
└─ 研究 (study_id)
└─ 影像 (image_id / volume_id)
├─ 2D: JPEG (CXR / US)
└─ 3D: NIfTI (CT / MRI)
└─ 配对放射报告
└─ LLM 解构 → 139 实体 × {状态, 文本}
├─ 实体级相似度 → 检索三元组
├─ VQA 生成 → 4 阶段过滤 → VQA 对
└─ 纵向随访 → 放射科医生审核 → 随访标签
§4.5 缺失值情况
| 缺失类型 | 描述 | 严重程度 | 处理方式 |
|---|---|---|---|
| 实体未提及 | 报告中未提及某实体(状态 = not mentioned) | 低 | 保留为"未提及"状态,在比较中有临床意义 |
| 明确阴性 | 报告明确指出实体不存在 | 低 | 保留为"明确阴性",在比较中有临床意义 |
| 中文报告实体 | CURG 超声报告为中文,LLM 解构可能略有差异 | 中 | DeepSeek-V3.1 支持中文,但跨语言一致性需验证 |
| SSPH 不公开 | 内部脑部 MRI 数据集因隐私不公开 | 高 | 仅基准注释公开,原始影像需合作申请 |
| 部分源数据集需凭证 | MIMIC-CXR/CheXpert 需分别申请 | 中 | 分别完成各源数据集的认证流程 |
§5 数据划分与使用建议
§5.1 官方划分策略
| 划分维度 | 策略 | 说明 |
|---|---|---|
| 患者级别划分 | 同一患者的所有数据必须在同一分割 | 防止患者级数据泄漏 |
| 中心级别外测 | 外部测试使用完全留出的中心 | BIMCV-R/CheXpert Plus/IU-Xray 作为外测 |
| 模态组内划分 | 各模态组独立划分 | 4 个模态组(CXR/CT/BRAIN/US)独立 |
| 实体层级交叉 | 同一图像可在不同实体层级出现 | 三层级(anatomy/finding/disease)交叉评估 |
§5.2 检索基准划分详情
| 模态组 | 层级 | 训练 | 内部测试 | 外部测试 | 外部来源 |
|---|---|---|---|---|---|
| CXR | anatomy | 557,330 | 10,784 | 9,240 | CheXpert(3,736) + IU-Xray(5,504) |
| CXR | finding | 294,034 | 5,672 | 5,846 | CheXpert(2,094) + IU-Xray(3,752) |
| CXR | disease | 122,026 | 5,070 | 4,988 | CheXpert(1,624) + IU-Xray(3,364) |
| CT | anatomy | 115,547 | 7,511 | 5,174 | BIMCV-R |
| CT | finding | 97,102 | 6,376 | 3,770 | BIMCV-R |
| CT | disease | 77,752 | 6,026 | 4,120 | BIMCV-R |
| BRAIN | anatomy | 20,540 | 2,281 | — | — |
| BRAIN | finding | 37,296 | 4,242 | — | — |
| BRAIN | disease | 63,223 | 7,090 | — | — |
| US | anatomy | 15,242 | 1,640 | — | — |
| US | finding | 13,290 | 1,426 | — | — |
| US | disease | 2,062 | 262 | — | — |
§5.3 数据泄漏风险
| 风险类型 | 严重程度 | 描述 | 缓解措施 |
|---|---|---|---|
| 患者级泄漏 | 🔴 高 | 同一患者出现在训练和测试集 | 患者级分割:同一患者所有数据在同一 split |
| 研究级泄漏 | 🟡 中 | 同一研究的多张图像跨 split | 研究级分割:同一研究所有图像在同一 split |
| 中心级泄漏 | 🟡 中 | 外部测试中心数据混入训练 | 留出中心策略:BIMCV-R/CheXpert/IU-Xray 完全排除在训练外 |
| 实体级泄漏 | 🟢 低 | 同一图像对不同实体出现 | 允许:同一图像在不同实体条件下出现是设计意图 |
| 报告泄漏 | 🟡 中 | 同一报告的多个实体标注 | 在数据集访问控制后执行,无跨分割上下文 |
§5.4 跨数据集整合策略
| 策略 | 描述 | 适用场景 |
|---|---|---|
| 模态组内训练 | 各模态组独立训练和评估 | 模态特异性模型 |
| MoE 多模态路由 | 混合专家网络按模态路由到不同专家 | 通用多模态编码器 |
| 渐进式模态添加 | 先训练大模态(CXR),再添加小模态 | 防止小模态被淹没 |
| 外部留出验证 | 使用 CheXpert/IU-Xray/BIMCV-R 做外测 | 跨中心泛化性评估 |
| 实体级跨模态对齐 | 通过共享实体体系实现跨模态语义对齐 | 跨模态检索 |
§5.5 外部验证推荐
| 外部数据集 | 来源 | 模态 | 用途 |
|---|---|---|---|
| CheXpert Plus | Stanford (美国) | CXR | CXR 跨中心验证 |
| IU-Xray | Indiana University (美国) | CXR | CXR 跨中心验证 |
| BIMCV-R | Valencia (西班牙) | CT | CT 跨中心验证 |
| Medical-Diff-VQA | MIMIC-CXR 派生 | CXR | VQA 基准对比 |
| MMXU | MIMIC-CXR 派生 | CXR | VQA 基准对比 |
§5.6 AI 训练数据获取 10 步流程
| 步骤 | 操作 | 说明 |
|---|---|---|
| 1 | 注册 HuggingFace 账号 | 访问 timeseed/MedReCo-DB |
| 2 | 下载派生注释与基准 | huggingface-cli download timeseed/MedReCo-DB |
| 3 | 注册 PhysioNet 账号 | 获取 MIMIC-CXR 访问权限 |
| 4 | 完成 CITI 培训 | PhysioNet 凭证认证要求 |
| 5 | 签署 Stanford RUA | 获取 CheXpert Plus 访问权限 |
| 6 | 下载 CT-RATE | CC BY-NC 4.0,直接下载 |
| 7 | 申请 CURG/SSPH(如需) | 联系相应机构 |
| 8 | 下载 BIMCV-R / IU-Xray | 开放获取 |
| 9 | 运行基准构建脚本 | github.com/time-seed/MedReCo |
| 10 | 验证数据完整性 | 检查图像-报告-实体配对 |
§6 AI 就绪指南
§6.1 快速上手
# ========================================
# MedReCo-DB 快速上手 — PyTorch 版
# 环境要求: torch>=2.0, transformers, huggingface_hub, monai, SimpleITK
#
# ⚠️ 目录结构预期:
# 请将 HuggingFace 下载的数据放置在 ./data/ 目录:
# ./data/
# ├── retrieval/ # 检索基准
# │ ├── train/
# │ ├── test/
# │ └── external_test/
# ├── vqa/ # VQA 基准
# │ ├── comparative/
# │ └── longitudinal/
# └── entities/ # 实体定义
#
# 原始影像需从各源数据集单独获取并放置在 ./images/ 目录:
# ./images/
# ├── mimic_cxr/ # MIMIC-CXR 影像
# ├── ct_rate/ # CT-RATE 体数据
# ├── amos_mm/ # AMOS-MM 体数据
# ├── curg/ # CURG 超声影像
# └── ...
# ========================================
from huggingface_hub import snapshot_download
import json
import os
# Step 1: 下载 MedReCo-DB 派生注释与基准
snapshot_download(
repo_id="timeseed/MedReCo-DB",
repo_type="dataset",
local_dir="./data"
)
# Step 2: 加载检索基准
with open("./data/retrieval/train/cxr/finding/triplets.jsonl") as f:
retrieval_train = [json.loads(line) for line in f]
print(f"检索训练集大小: {len(retrieval_train)}")
print(f"示例三元组: {retrieval_train[0]}")
# Step 3: 加载 VQA 基准
with open("./data/vqa/comparative/closed/test.jsonl") as f:
vqa_test = [json.loads(line) for line in f]
print(f"VQA 测试集大小: {len(vqa_test)}")
print(f"示例 QA: {vqa_test[0]}")
# Step 4: 加载实体分类法
with open("./data/entities/entity_taxonomy.json") as f:
taxonevent-blocked= json.load(f)
print(f"实体总数: {taxonomy[''''''''''''''''''''''''''''''''total_count'''''''''''''''''''''''''''''''']}")
for group in taxonomy[''''''''''''''''''''''''''''''''modality_groups'''''''''''''''''''''''''''''''']:
print(f" {group[''''''''''''''''''''''''''''''''name'''''''''''''''''''''''''''''''']}: {group[''''''''''''''''''''''''''''''''anatomy'''''''''''''''''''''''''''''''']} 解剖 + "
f"{group[''''''''''''''''''''''''''''''''finding'''''''''''''''''''''''''''''''']} 异常 + {group[''''''''''''''''''''''''''''''''disease'''''''''''''''''''''''''''''''']} 病理")
§6.2 数据获取方式
| 数据 | 下载方式 | 大小 | 访问要求 |
|---|---|---|---|
| 派生注释与基准 | huggingface-cli download timeseed/MedReCo-DB |
~50 GB | HuggingFace 注册 |
| MIMIC-CXR 影像 | PhysioNet 凭证认证 | ~439 GB | CITI 培训 + DUA |
| CheXpert Plus 影像 | Stanford RUA 签署 | ~500 GB | 在线签署 RUA |
| CT-RATE 体数据 | 直接下载 | ~500 GB | CC BY-NC 4.0 |
| BIMCV-R 体数据 | 直接下载 | ~1 TB | CC BY-NC 4.0 |
| IU-Xray 影像 | 直接下载 | ~5 GB | 开放获取 |
| AMOS-MM 体数据 | 申请下载 | ~50 GB | CC BY-NC 4.0 |
| CURG 超声影像 | 联系机构 | ~10 GB | 需申请 |
| SSPH 脑 MRI | 联系机构 | 不公开 | 需合作申请 |
§6.3 预处理 Pipeline
import torch
import numpy as np
from PIL import Image
import SimpleITK as sitk
from torchvision import transforms
class MedReCoPreprocessor:
"""MedReCo-DB 统一预处理器:处理 2D 和 3D 影像"""
def __init__(self, image_size_2d=(512, 512), volume_size_3d=(32, 256, 256)):
self.image_size_2d = image_size_2d
self.volume_size_3d = volume_size_3d
# 2D 影像变换(CXR / US)
self.transform_2d = transforms.Compose([
transforms.Grayscale(num_output_channels=1),
transforms.Resize(image_size_2d),
transforms.ToTensor(),
transforms.Normalize(mean=[0.503], std=[0.291]) # CheXpert 统计值
])
def load_2d_image(self, path):
"""加载 2D JPEG 影像(CXR / US)"""
img = Image.open(path).convert(''''''''''''''''''''''''''''''''L'''''''''''''''''''''''''''''''')
return self.transform_2d(img)
def load_3d_volume(self, path, modality=''''''''''''''''''''''''''''''''ct''''''''''''''''''''''''''''''''):
"""加载 3D NIfTI 体数据(CT / MRI)"""
sitk_img = sitk.ReadImage(path)
array = sitk.GetArrayFromImage(sitk_img) # (D, H, W)
# 窗宽窗位裁剪
if modality == ''''''''''''''''''''''''''''''''ct'''''''''''''''''''''''''''''''':
array = np.clip(array, -1000, 400) # 肺窗
array = (array - (-1000)) / (400 - (-1000))
elif modality == ''''''''''''''''''''''''''''''''brain'''''''''''''''''''''''''''''''':
array = np.clip(array, 0, 255) # 简化处理
array = array / 255.0
# 重采样到统一尺寸
from scipy.ndimage import zoom
factors = [s / float(a) for s, a in zip(self.volume_size_3d, array.shape)]
array = zoom(array, factors, order=1)
return torch.from_numpy(array).float().unsqueeze(0) # (1, D, H, W)
def preprocess_pair(self, img_a_path, img_b_path, modality_group=''''''''''''''''''''''''''''''''cxr''''''''''''''''''''''''''''''''):
"""预处理图像对"""
if modality_group in [''''''''''''''''''''''''''''''''cxr'''''''''''''''''''''''''''''''', ''''''''''''''''''''''''''''''''us'''''''''''''''''''''''''''''''']:
img_a = self.load_2d_image(img_a_path)
img_b = self.load_2d_image(img_b_path)
else:
modality = ''''''''''''''''''''''''''''''''ct'''''''''''''''''''''''''''''''' if modality_group == ''''''''''''''''''''''''''''''''ct'''''''''''''''''''''''''''''''' else ''''''''''''''''''''''''''''''''brain''''''''''''''''''''''''''''''''
img_a = self.load_3d_volume(img_a_path, modality)
img_b = self.load_3d_volume(img_b_path, modality)
return img_a, img_b
§6.4 框架加载
<details>
<summary>PyTorch Dataset(点击展开)</summary>
import torch
from torch.utils.data import Dataset, DataLoader
import json
import os
class MedReCoRetrievalDataset(Dataset):
"""MedReCo 检索基准 Dataset"""
def __init__(self, data_root, split=''''''''''''''''''''''''''''''''train'''''''''''''''''''''''''''''''', modality_group=''''''''''''''''''''''''''''''''cxr'''''''''''''''''''''''''''''''',
entity_level=''''''''''''''''''''''''''''''''finding'''''''''''''''''''''''''''''''', preprocessor=None):
self.data_root = data_root
self.split = split
self.modality_group = modality_group
self.entity_level = entity_level
self.preprocessor = preprocessor or MedReCoPreprocessor()
# 加载三元组
triplet_file = os.path.join(
data_root, ''''''''''''''''''''''''''''''''retrieval'''''''''''''''''''''''''''''''', split, modality_group,
entity_level, ''''''''''''''''''''''''''''''''triplets.jsonl''''''''''''''''''''''''''''''''
)
with open(triplet_file) as f:
self.triplets = [json.loads(line) for line in f]
def __len__(self):
return len(self.triplets)
def __getitem__(self, idx):
t = self.triplets[idx]
anchor = self.preprocessor.load_2d_image(
os.path.join(self.data_root, ''''''''''''''''''''''''''''''''images'''''''''''''''''''''''''''''''', t[''''''''''''''''''''''''''''''''anchor_image''''''''''''''''''''''''''''''''])
)
positive = self.preprocessor.load_2d_image(
os.path.join(self.data_root, ''''''''''''''''''''''''''''''''images'''''''''''''''''''''''''''''''', t[''''''''''''''''''''''''''''''''positive_image''''''''''''''''''''''''''''''''])
)
negative = self.preprocessor.load_2d_image(
os.path.join(self.data_root, ''''''''''''''''''''''''''''''''images'''''''''''''''''''''''''''''''', t[''''''''''''''''''''''''''''''''negative_image''''''''''''''''''''''''''''''''])
)
return {
''''''''''''''''''''''''''''''''anchor'''''''''''''''''''''''''''''''': anchor,
''''''''''''''''''''''''''''''''positive'''''''''''''''''''''''''''''''': positive,
''''''''''''''''''''''''''''''''negative'''''''''''''''''''''''''''''''': negative,
''''''''''''''''''''''''''''''''entity'''''''''''''''''''''''''''''''': t[''''''''''''''''''''''''''''''''entity_name''''''''''''''''''''''''''''''''],
''''''''''''''''''''''''''''''''entity_level'''''''''''''''''''''''''''''''': self.entity_level
}
class MedReCoVQADataset(Dataset):
"""MedReCo VQA 基准 Dataset"""
def __init__(self, data_root, split=''''''''''''''''''''''''''''''''test'''''''''''''''''''''''''''''''', vqa_type=''''''''''''''''''''''''''''''''closed'''''''''''''''''''''''''''''''',
preprocessor=None):
self.data_root = data_root
self.preprocessor = preprocessor or MedReCoPreprocessor()
vqa_file = os.path.join(
data_root, ''''''''''''''''''''''''''''''''vqa'''''''''''''''''''''''''''''''', ''''''''''''''''''''''''''''''''comparative'''''''''''''''''''''''''''''''', vqa_type, f''''''''''''''''''''''''''''''''{split}.jsonl''''''''''''''''''''''''''''''''
)
with open(vqa_file) as f:
self.samples = [json.loads(line) for line in f]
def __len__(self):
return len(self.samples)
def __getitem__(self, idx):
s = self.samples[idx]
img_a, img_b = self.preprocessor.preprocess_pair(
os.path.join(self.data_root, ''''''''''''''''''''''''''''''''images'''''''''''''''''''''''''''''''', s[''''''''''''''''''''''''''''''''image_a_path'''''''''''''''''''''''''''''''']),
os.path.join(self.data_root, ''''''''''''''''''''''''''''''''images'''''''''''''''''''''''''''''''', s[''''''''''''''''''''''''''''''''image_b_path'''''''''''''''''''''''''''''''']),
s.get(''''''''''''''''''''''''''''''''modality_group'''''''''''''''''''''''''''''''', ''''''''''''''''''''''''''''''''cxr'''''''''''''''''''''''''''''''')
)
return {
''''''''''''''''''''''''''''''''image_a'''''''''''''''''''''''''''''''': img_a,
''''''''''''''''''''''''''''''''image_b'''''''''''''''''''''''''''''''': img_b,
''''''''''''''''''''''''''''''''question'''''''''''''''''''''''''''''''': s[''''''''''''''''''''''''''''''''question_text''''''''''''''''''''''''''''''''],
''''''''''''''''''''''''''''''''choices'''''''''''''''''''''''''''''''': s.get(''''''''''''''''''''''''''''''''choices'''''''''''''''''''''''''''''''', []),
''''''''''''''''''''''''''''''''answer'''''''''''''''''''''''''''''''': s[''''''''''''''''''''''''''''''''answer''''''''''''''''''''''''''''''''],
''''''''''''''''''''''''''''''''entity'''''''''''''''''''''''''''''''': s[''''''''''''''''''''''''''''''''entity'''''''''''''''''''''''''''''''']
}
# DataLoader 创建
def get_retrieval_loader(data_root, split=''''''''''''''''''''''''''''''''train'''''''''''''''''''''''''''''''', modality_group=''''''''''''''''''''''''''''''''cxr'''''''''''''''''''''''''''''''',
entity_level=''''''''''''''''''''''''''''''''finding'''''''''''''''''''''''''''''''', batch_size=32, num_workers=4):
dataset = MedReCoRetrievalDataset(
data_root, split, modality_group, entity_level
)
return DataLoader(
dataset, batch_size=batch_size, shuffle=(split == ''''''''''''''''''''''''''''''''train''''''''''''''''''''''''''''''''),
num_workers=num_workers, pin_memory=True
)
</details>
<details>
<summary>TensorFlow Dataset(点击展开)</summary>
import tensorflow as tf
import json
import os
def create_retrieval_tf_dataset(data_root, split=''''''''''''''''''''''''''''''''train'''''''''''''''''''''''''''''''',
modality_group=''''''''''''''''''''''''''''''''cxr'''''''''''''''''''''''''''''''', batch_size=32):
"""创建 TensorFlow 检索数据集"""
triplet_file = os.path.join(
data_root, ''''''''''''''''''''''''''''''''retrieval'''''''''''''''''''''''''''''''', split, modality_group,
''''''''''''''''''''''''''''''''finding'''''''''''''''''''''''''''''''', ''''''''''''''''''''''''''''''''triplets.jsonl''''''''''''''''''''''''''''''''
)
with open(triplet_file) as f:
triplets = [json.loads(line) for line in f]
def load_image(path):
img = tf.io.read_file(os.path.join(data_root, ''''''''''''''''''''''''''''''''images'''''''''''''''''''''''''''''''', path))
img = tf.image.decode_jpeg(img, channels=1)
img = tf.image.resize(img, [512, 512])
img = tf.cast(img, tf.float32) / 255.0
return img
def gen():
for t in triplets:
yield {
''''''''''''''''''''''''''''''''anchor'''''''''''''''''''''''''''''''': load_image(t[''''''''''''''''''''''''''''''''anchor_image'''''''''''''''''''''''''''''''']),
''''''''''''''''''''''''''''''''positive'''''''''''''''''''''''''''''''': load_image(t[''''''''''''''''''''''''''''''''positive_image'''''''''''''''''''''''''''''''']),
''''''''''''''''''''''''''''''''negative'''''''''''''''''''''''''''''''': load_image(t[''''''''''''''''''''''''''''''''negative_image'''''''''''''''''''''''''''''''']),
}
dataset = tf.data.Dataset.from_generator(
gen,
output_signature={
''''''''''''''''''''''''''''''''anchor'''''''''''''''''''''''''''''''': tf.TensorSpec([512, 512, 1], tf.float32),
''''''''''''''''''''''''''''''''positive'''''''''''''''''''''''''''''''': tf.TensorSpec([512, 512, 1], tf.float32),
''''''''''''''''''''''''''''''''negative'''''''''''''''''''''''''''''''': tf.TensorSpec([512, 512, 1], tf.float32),
}
)
return dataset.batch(batch_size).prefetch(tf.data.AUTOTUNE)
</details>
§6.5 常见坑点
⚠️ 坑点 1:原始影像多源分别申请(分类:工程陷阱)
问题:MedReCo-DB 的派生注释和基准在 HuggingFace 开放,但原始影像需要从 8 个源数据集分别申请,每个有不同的认证流程。
症状:下载了 HuggingFace 数据后发现没有原始影像,无法训练。
解决:
- 优先申请 MIMIC-CXR(最大量 CXR)和 CT-RATE(CT)
- 完成 PhysioNet CITI 培训(约 4-6 小时)
- 签署 Stanford RUA(在线,即时生效)
- CT-RATE / BIMCV-R / IU-Xray 可直接下载
- CURG / SSPH 需联系机构,可能需要数周
参考:论文 Supplementary Table S1 各源数据集访问链接
⚠️ 坑点 2:2D 与 3D 影像预处理差异(分类:预处理陷阱)
问题:CXR 和 US 是 2D JPEG,CT 和 MRI 是 3D NIfTI,两种格式的加载、预处理和 patch 化方式完全不同。
症状:混用 2D/3D 预处理导致维度错误或内存溢出。
解决:
- 使用
MedReCoPreprocessor统一处理器(§6.3)- 2D 影像用
transforms.Grayscale + Resize(512×512)- 3D 体数据用
SimpleITK加载 + 窗宽窗位裁剪 +scipy.ndimage.zoom重采样- MoE-ViT 使用不同 patch 大小:2D = 1×20×20,3D = 10×20×20
参考:论文 §4.1 视觉编码器细节
⚠️ 坑点 3:实体提及状态的语义理解(分类:标签理解)
问题:实体有四种提及状态(阳性/明确阴性/不确定/未提及),"明确阴性"被保留因为缺失在比较解读中具有临床意义,但很多下游任务将其与"未提及"混淆。
症状:模型将"明确阴性"(报告明确说没有)当作缺失值处理,导致比较推理性能下降。
解决:
- 区分四种状态:
positive= 1,explicitly_negative= 0,uncertain= 0.5,not_mentioned= -1- 在损失函数中对"明确阴性"给予与"阳性"相同的权重
- 在 VQA 任务中,"明确阴性"是比较推理的重要信号(“新报告中某发现消失”)
参考:论文 §3.1 实体特异性报告分解
⚠️ 坑点 4:SSPH 脑部 MRI 不公开(分类:数据获取)
问题:内部 SSPH 脑部 MRI 数据集因患者隐私和数据治理限制不公开,但 MedReCo-DB 的脑部 MRI 基准注释是公开的。
症状:下载了脑部 MRI 基准注释后找不到原始影像。
解决:
- 联系上海市第六人民医院申请合作
- 或使用脑部 MRI 基准注释进行方法学研究(不需要原始影像的任务)
- 或使用其他公开脑部 MRI 数据集(如 BraTS、OASIS)进行替代验证
参考:论文 §6 数据可用性声明
⚠️ 坑点 5:中文超声报告的跨语言一致性(分类:偏倚陷阱)
问题:CURG 超声数据集的配对报告为中文,DeepSeek-V3.1 虽支持中文但跨语言实体提取的一致性可能低于英文。
症状:US 模态组的实体标注质量可能略低于 CXR/CT 模态组。
解决:
- 对 US 模态组的结果进行额外验证
- 检查中文报告的实体提取结果与英文报告的一致性
- 如有条件,请中文母语放射科医生抽样审核 CURG 实体标注
参考:论文 §3.1 实体特异性报告分解
⚠️ 坑点 6:纵向随访基准样本量小(分类:评估误用)
问题:纵向随访 VQA 基准仅 930 个样本,且 CXR 占 57.85%,统计检验功效有限。
症状:在纵向随访基准上的性能提升可能不具统计显著性。
解决:
- 报告置信区间而非仅点估计
- 使用 bootstrap 方法评估统计显著性
- 将纵向随访结果作为辅助证据,而非主要评估指标
- 主要评估应使用大规模比较 VQA 基准(204,104 QA 对)
参考:论文 Table S7 纵向随访基准组成
⚠️ 坑点 7:三重相似度阈值的敏感性(分类:标签理解)
问题:正负样本对的定义依赖三重相似度阈值(正对 > 0.9,负对 < 0.3),阈值选择直接影响训练信号质量。
症状:阈值过松导致噪声标签,阈值过严导致训练数据不足。
解决:
- 使用论文默认阈值(0.9 / 0.3)作为基线
- 消融实验:尝试 0.8/0.2、0.95/0.1 等阈值组合
- 使用软标签(连续相似度值)替代硬标签
- 监控训练集中正负对的比例,防止不平衡
参考:论文 §3.2 实体级相似度量化
⚠️ 坑点 8:MoE-ViT 训练不稳定性(分类:工程陷阱)
问题:MoE-ViT 的模态特异性路由在训练初期可能不稳定,部分专家可能"死掉"(总是不被选择)。
症状:某些模态的检索性能显著低于其他模态,或训练损失震荡。
解决:
- 使用辅助损失(load balancing loss)确保专家利用率均衡
- 训练初期使用较高的 temperature(如 2.0),逐步退火到 1.0
- 监控每个专家的被选择频率
- 初始化时确保各专家参数有足够差异
参考:论文 §4.1 视觉编码器 + 消融研究 §5.4
⚠️ 坑点 9:VQA 语言先验残留(分类:偏倚陷阱)
问题:虽然经过 LLaMA-3.1-8B 语言先验过滤,但 VQA 基准中可能仍有部分问题可从问题措辞推断答案。
症状:不输入图像的基线模型仍能获得非零准确率。
解决:
- 训练一个"文本-only"基线(仅问题,无图像),评估语言先验残留
- 报告"图像依赖准确率"= 模型准确率 - 文本-only 准确率
- 如残留显著,考虑额外的数据过滤
参考:论文 §3.3 VQA 过滤管道
⚠️ 坑点 10:Qwen2.5-7B 显存需求(分类:工程陷阱)
问题:MedReCo-VLM 使用 Qwen2.5-7B-Instruct 作为基座,全参数训练需要大量显存。
症状:OOM(Out of Memory)错误。
解决:
- 使用 8×A100 80GB(论文配置)
- 如显存不足,使用 LoRA/QLoRA 微调(仅训练适配器参数)
- 全局批大小 64(梯度累积)
- 混合精度训练(bf16)
- 阶段 2 中视觉编码器冻结,仅训练投影层 + LLM
参考:论文 §4.2 MedReCo-VLM + §5 实验设置
⚠️ 坑点 11:检索基准的模态不平衡(分类:偏倚陷阱)
问题:CXR 模态组占检索训练集 75%(975K/1,293K),US 和 BRAIN 模态组样本量远少。
症状:在 US 疾病层级仅 2,062 训练样本,模型可能过拟合或泛化性差。
解决:
- 使用加权采样器平衡各模态组
- 对小模态组使用更强的数据增强
- 使用 MoE 架构让各模态有独立专家
- 评估时按模态组单独报告,不使用全局平均值
参考:论文 Table S5 + §5.4 消融研究
⚠️ 坑点 12:评估指标 RaTEScore 的计算成本(分类:评估误用)
问题:RaTEScore 是实体级匹配评估模型,计算开放式 VQA 的 RaTEScore 需要额外模型推理,在大规模评估时计算成本较高。
症状:评估速度慢,实验迭代周期长。
解决:
- 评估时使用子集(如随机采样 10K 样本)进行快速迭代
- 最终结果在完整测试集上计算
- 使用 GPU 加速 RaTEScore 计算
- 缓存中间结果避免重复计算
参考:论文 §5.2 评估指标
§6.6 数据增强策略
| 策略 | 安全性 | 适用模态 | 说明 |
|---|---|---|---|
| 随机翻转 | ✅ | CXR/US | 水平翻转(注意左右标注一致性) |
| 随机裁剪 | ✅ | 全部 | 2D: 中心裁剪 448→512;3D: 随机裁剪深度 |
| 颜色/灰度抖动 | ✅ | CXR/US | 亮度 ±0.1,对比度 ±0.1 |
| 随机旋转 | ✅ | CXR/US | ±10 度 |
| 随机缩放 | ✅ | 全部 | 0.9–1.1 倍 |
| Mixup | ❌ | 全部 | 医学影像混合可能产生不真实图像 |
| CutMix | ❌ | 全部 | 可能破坏解剖结构完整性 |
| 噪声注入 | ⚠️ | 全部 | 轻度高斯噪声可接受,重度可能模拟伪影 |
§6.7 模型推荐
| 任务 | 推荐模型 | 预训练 | 关键超参 | 预期性能 |
|---|---|---|---|---|
| 实体条件检索 | MedReCo (MoE-ViT) | ImageNet + MedReCo-DB | lr=1e-4, batch=14(3D)/50(2D), 10 epochs | Recall@1: SOTA |
| 比较解读生成 | MedReCo-VLM | MedReCo + Qwen2.5-7B | lr=2e-5(LLM)/1e-4(proj), 1 epoch | RaTEScore: SOTA |
| 纵向随访 | MedReCo-VLM | MedReCo + Qwen2.5-7B | 同上 | +14.5–46.5 pp (CXR) |
| 基线检索 | CLIP | ImageNet | 标准配置 | Recall@1: 低于 MedReCo ~6 pp |
| 基线 VQA | LLaVA-Med | 医学 VLM | 标准配置 | 低于 MedReCo-VLM |
§6.8 计算资源需求
| 任务 | GPU | 显存 | 磁盘 | 训练时间 |
|---|---|---|---|---|
| MedReCo 阶段 1(检索) | 8×A100 80GB | 640 GB | ~100 GB | ~3 天(10 epochs) |
| MedReCo-VLM 阶段 2(生成) | 8×A100 80GB | 640 GB | ~200 GB | ~2 天(1 epoch) |
| 仅评估检索 | 1×A100 40GB | 40 GB | ~50 GB | ~2 小时 |
| 仅评估 VQA | 1×A100 40GB | 40 GB | ~50 GB | ~4 小时 |
| 微调(LoRA) | 2×A100 40GB | 80 GB | ~100 GB | ~1 天 |
§6.9 评估指标计算
import torch
import numpy as np
from collections import defaultdict
def compute_recall_at_k(ranked_indices, ground_truth_positives, k_values=[1, 3, 5]):
"""
计算实体条件检索的 Recall@k
Args:
ranked_indices: 检索结果排序索引 (N, M) — N 个查询,M 个候选
ground_truth_positives: 每个查询的正样本索引集合列表
k_values: k 值列表
Returns:
recall_dict: {k: recall_value}
"""
recall_dict = {}
N = len(ranked_indices)
for k in k_values:
hits = 0
for i in range(N):
top_k = set(ranked_indices[i][:k])
if top_k & ground_truth_positives[i]:
hits += 1
recall_dict[k] = hits / N
return recall_dict
def compute_vqa_accuracy(predictions, ground_truths):
"""计算封闭式 VQA 准确率"""
correct = sum(p == g for p, g in zip(predictions, ground_truths))
return correct / len(predictions)
def compute_longitudinal_accuracy(predictions, ground_truths, modality_labels=None):
"""
计算纵向随访 VQA 准确率
支持按模态分组统计
"""
if modality_labels is None:
return compute_vqa_accuracy(predictions, ground_truths)
results = {}
for mod in set(modality_labels):
idx = [i for i, m in enumerate(modality_labels) if m == mod]
preds = [predictions[i] for i in idx]
gts = [ground_truths[i] for i in idx]
results[mod] = compute_vqa_accuracy(preds, gts)
results[''''''''''''''''''''''''''''''''overall''''''''''''''''''''''''''''''''] = compute_vqa_accuracy(predictions, ground_truths)
return results
def compute_per_entity_recall(results_by_entity, k=1):
"""按实体层级分组计算 Recall@k"""
entity_results = defaultdict(list)
for result in results_by_entity:
entity_results[result[''''''''''''''''''''''''''''''''entity_level'''''''''''''''''''''''''''''''']].append(result[''''''''''''''''''''''''''''''''recall_at_k''''''''''''''''''''''''''''''''][k])
return {
level: np.mean(recalls)
for level, recalls in entity_results.items()
}
# 完整评估 Pipeline
def evaluate_retrieval(model, dataloader, device=''''''''''''''''''''''''''''''''cuda''''''''''''''''''''''''''''''''):
"""检索基准完整评估"""
model.eval()
all_embeddings = []
all_entities = []
all_modality = []
with torch.no_grad():
for batch in dataloader:
anchor = batch[''''''''''''''''''''''''''''''''anchor''''''''''''''''''''''''''''''''].to(device)
positive = batch[''''''''''''''''''''''''''''''''positive''''''''''''''''''''''''''''''''].to(device)
negative = batch[''''''''''''''''''''''''''''''''negative''''''''''''''''''''''''''''''''].to(device)
# 获取嵌入
anchor_emb = model.encode(anchor, batch[''''''''''''''''''''''''''''''''entity''''''''''''''''''''''''''''''''])
positive_emb = model.encode(positive, batch[''''''''''''''''''''''''''''''''entity''''''''''''''''''''''''''''''''])
negative_emb = model.encode(negative, batch[''''''''''''''''''''''''''''''''entity''''''''''''''''''''''''''''''''])
all_embeddings.append({
''''''''''''''''''''''''''''''''anchor'''''''''''''''''''''''''''''''': anchor_emb.cpu(),
''''''''''''''''''''''''''''''''positive'''''''''''''''''''''''''''''''': positive_emb.cpu(),
''''''''''''''''''''''''''''''''negative'''''''''''''''''''''''''''''''': negative_emb.cpu()
})
all_entities.extend(batch[''''''''''''''''''''''''''''''''entity''''''''''''''''''''''''''''''''])
all_modality.extend(batch.get(''''''''''''''''''''''''''''''''modality_group'''''''''''''''''''''''''''''''', [''''''''''''''''''''''''''''''''unknown''''''''''''''''''''''''''''''''] * len(batch[''''''''''''''''''''''''''''''''entity''''''''''''''''''''''''''''''''])))
# 计算 Recall@k
# ... (具体计算逻辑取决于检索候选集构建方式)
return {
''''''''''''''''''''''''''''''''recall@1'''''''''''''''''''''''''''''''': 0.0, # 替换为实际值
''''''''''''''''''''''''''''''''recall@3'''''''''''''''''''''''''''''''': 0.0,
''''''''''''''''''''''''''''''''recall@5'''''''''''''''''''''''''''''''': 0.0,
}
§6.10 MLOps 笔记
| 维度 | 建议 |
|---|---|
| 数据版本管理 | 使用 DVC 或 HuggingFace Datasets 版本控制 |
| 实验追踪 | Weights & Biases / MLflow 记录 Recall@k、RaTEScore |
| 模型注册 | 注册 MedReCo 和 MedReCo-VLM 权重到 HuggingFace Hub |
| 部署 | MedReCo-VLM 可部署为 API 服务(Qwen2.5-7B 推理) |
| 监控 | 监控检索召回率和 VQA 准确率的数据漂移 |
| 复现性 | 固定随机种子,记录完整超参,使用 Docker 容器化 |
§7 质量评估与局限性
§7.1 已知偏倚
| 编号 | 偏倚类型 | 描述 | 严重程度 | 缓解措施 |
|---|---|---|---|---|
| 1 | 地理偏倚 | 美国(MIMIC-CXR/CheXpert/IU-Xray)和中国(AMOS-MM/CURG/SSPH)数据占主导 | 中 | 外部测试使用 4 国 8 机构数据 |
| 2 | 模态不平衡 | CXR 占检索训练集 75%,US/BRAIN 样本量少 | 中 | MoE 架构 + 加权采样 |
| 3 | 语言偏倚 | CURG 超声报告为中文,其他为英文 | 中 | DeepSeek-V3.1 支持中文,但需验证跨语言一致性 |
| 4 | LLM 标注噪声 | DeepSeek-V3.1 实体提取可能有残留错误 | 中 | 放射科医生审核实体定义 + 多阶段 VQA 过滤 |
| 5 | 报告质量差异 | 不同机构报告质量和详细程度不同 | 中 | 三重相似度量化过滤低质量配对 |
| 6 | 选择偏倚 | 仅包含有配对报告的影像,无报告的影像被排除 | 低 | 这是数据集设计的固有约束 |
| 7 | 时间偏倚 | 数据跨越 2008–2022 年,影像设备和技术演进 | 低 | 包含不同时代数据增加多样性 |
| 8 | 纵向随访偏倚 | CXR 占纵向随访基准 57.85% | 中 | 按模态分别报告结果 |
| 9 | 实体覆盖偏倚 | 某些实体在特定模态中极少出现(如 US 疾病仅 2 类) | 中 | 评估时按实体层级分别报告 |
| 10 | VQA 语言先验 | 尽管 LLaMA 过滤,残留语言先验可能存在 | 低 | 报告文本-only 基线准确率 |
| 11 | SSPH 不公开 | 脑部 MRI 原始数据不可获取 | 高 | 派生注释公开,原始数据需合作 |
| 12 | 正负样本阈值 | 0.9/0.3 的相似度阈值可能不是最优 | 低 | 可进行消融实验 |
§7.2 标注质量评估
| 标注方式 | 准确率 | 一致性 | 局限性 |
|---|---|---|---|
| LLM 实体解构 | 高(放射科医生审核实体定义) | 高(DeepSeek-V3.1 输出稳定) | 残留提取错误,特别是罕见实体 |
| 三重相似度量化 | 中高(互补指标降低单一指标偏差) | 高(确定性计算) | 阈值选择主观 |
| VQA 4 阶段过滤 | 高(多阶段冗余过滤) | 高 | 语言先验过滤可能过度移除 |
| 放射科医生审核 | 金标准 | 高 | 仅覆盖 930 纵向随访样本 |
| 实体定义审核 | 金标准 | 高 | 139 实体由放射科医生一次性审核 |
§7.3 泛化性讨论
| 场景 | 失效风险 | 证据 |
|---|---|---|
| 跨中心 CXR 检索 | 低 | CheXpert Plus + IU-Xray 外部测试 +6.0 pp |
| 跨中心 CT 检索 | 中 | BIMCV-R 外部测试,但仅一个外部中心 |
| 跨模态检索 | 高 | 未评估(不同模态间的实体级检索) |
| 罕见实体检索 | 高 | US 疾病层级仅 2,062 训练样本 |
| 不同设备影像 | 中 | 8 机构多设备覆盖,但未系统评估设备效应 |
| 儿科影像 | 高 | 仅成人数据,未覆盖儿科 |
| 不同语言报告 | 中 | 英文+中文覆盖,但其他语言未评估 |
§7.4 伦理考量
- 患者隐私:所有源数据集均按各自协议去标识化。SSPH 脑 MRI 获上海市第六人民医院 IRB 批准(2023-KY-082(K)),回顾性非干预性研究免除知情同意
- 数据治理:MedReCo-DB 聚合了多个受控访问数据集,使用者需遵守各源数据集的数据使用协议
- 公平性:4 国 8 机构的多源设计有助于减少单一中心偏倚,但美国和中国数据占主导
- 可追溯性:每个样本可溯源到源数据集和原始报告
- 临床安全:MedReCo-VLM 生成的比较解读仅供研究目的,不应用于临床决策
§7.5 公平性评估
import numpy as np
from collections import defaultdict
def evaluate_fairness(results_by_group, metric_name=''''''''''''''''''''''''''''''''recall@1''''''''''''''''''''''''''''''''):
"""
评估不同模态组间的性能公平性
Args:
results_by_group: {group_name: [metric_values]}
metric_name: 评估指标名称
Returns:
fairness_report: 公平性报告
"""
report = {}
# 各组平均性能
group_means = {g: np.mean(v) for g, v in results_by_group.items()}
report[''''''''''''''''''''''''''''''''group_means''''''''''''''''''''''''''''''''] = group_means
# 性能差距
max_perf = max(group_means.values())
min_perf = min(group_means.values())
report[''''''''''''''''''''''''''''''''performance_gap''''''''''''''''''''''''''''''''] = max_perf - min_perf
# 变异系数
all_means = list(group_means.values())
report[''''''''''''''''''''''''''''''''coefficient_of_variation''''''''''''''''''''''''''''''''] = np.std(all_means) / np.mean(all_means)
# 最差组
worst_group = min(group_means, key=group_means.get)
report[''''''''''''''''''''''''''''''''worst_performing_group''''''''''''''''''''''''''''''''] = worst_group
print(f"=== 公平性评估 ({metric_name}) ===")
for g, m in group_means.items():
print(f" {g}: {m:.4f}")
print(f" 性能差距: {report[''''''''''''''''''''''''''''''''performance_gap'''''''''''''''''''''''''''''''']:.4f}")
print(f" 变异系数: {report[''''''''''''''''''''''''''''''''coefficient_of_variation'''''''''''''''''''''''''''''''']:.4f}")
print(f" 最差组: {worst_group}")
return report
# 使用示例
results = {
''''''''''''''''''''''''''''''''CXR'''''''''''''''''''''''''''''''': [0.85, 0.87, 0.84, 0.86],
''''''''''''''''''''''''''''''''CT'''''''''''''''''''''''''''''''': [0.78, 0.80, 0.77, 0.79],
''''''''''''''''''''''''''''''''BRAIN'''''''''''''''''''''''''''''''': [0.72, 0.74, 0.71, 0.73],
''''''''''''''''''''''''''''''''US'''''''''''''''''''''''''''''''': [0.65, 0.68, 0.63, 0.66]
}
evaluate_fairness(results, ''''''''''''''''''''''''''''''''Recall@1'''''''''''''''''''''''''''''''')
§7.6 数据漂移提示
| 漂移类型 | 风险 | 描述 |
|---|---|---|
| 时间漂移 | 中 | 数据跨越 2008–2022 年,影像采集技术演进 |
| 设备漂移 | 中 | 8 机构使用不同设备,但这也是泛化性优势 |
| 报告风格漂移 | 中 | 不同机构/国家的报告风格和语言不同 |
| 实体覆盖漂移 | 高 | 某些实体在新数据中可能更频繁(如 COVID-19 相关发现) |
§7.7 DAIMS 24 项数据就绪度评估表
| 编号 | 检查项 | 状态 | 说明 |
|---|---|---|---|
| 1 | 数据集动机 | ✅ | 填补放射学比较推理数据空白 |
| 2 | 数据集组成 | ✅ | 8 源数据集 + 7 模态 + 139 实体 |
| 3 | 数据采集过程 | ✅ | 回顾性聚合,各源数据集独立采集 |
| 4 | 标注者资质 | ✅ | LLM + NER 模型 + 放射科医生审核 |
| 5 | 标注协议 | ✅ | DeepSeek-V3.1 报告解构 + 三重相似度 + 4 阶段 VQA 过滤 |
| 6 | 标注一致性 | ✅ | 三重指标互补确保相似度一致性 |
| 7 | 数据覆盖 | ✅ | 7 模态、4 国、8 机构、139 实体 |
| 8 | 数据缺失说明 | ✅ | 四种提及状态明确编码 |
| 9 | 数据格式规范 | ✅ | JPEG/NIfTI/JSON/JSONL 标准格式 |
| 10 | 数据划分策略 | ✅ | 患者级 + 中心级留出 |
| 11 | 数据泄漏控制 | ✅ | 患者不跨 split + 外部中心完全留出 |
| 12 | 预处理脚本 | ✅ | GitHub 公开 |
| 13 | 评估协议 | ✅ | Recall@k + VQA 准确率 + RaTEScore |
| 14 | 基准性能 | ✅ | MedReCo + MedReCo-VLM 完整结果 |
| 15 | 已知偏倚 | ✅ | 12 项偏倚文档化 |
| 16 | 使用许可 | ✅ | 各源数据集许可明确 |
| 17 | DUO 标签 | ✅ | HMB, NPUNCU |
| 18 | 伦理审批 | ✅ | SSPH IRB: 2023-KY-082(K) |
| 19 | 去标识化 | ✅ | 各源数据集按各自协议去标识化 |
| 20 | 机器可读元数据 | ✅ | HuggingFace Croissant 兼容 |
| 21 | 代码可用性 | ✅ | github.com/time-seed/MedReCo |
| 22 | 数据可用性 | ⚠️ | 派生注释公开,SSPH 原始数据不公开 |
| 23 | 版本管理 | ✅ | arXiv v1/v2 + HuggingFace 版本 |
| 24 | 维护计划 | ⚠️ | 论文发表后发布,长期维护计划未明确 |
DAIMS 评分:22 / 24
评分解读:优秀 — 接近满分,仅需少量补全。对你意味着什么:该数据集的规范性总体优秀。主要扣分项集中在 SSPH 脑部 MRI 原始数据不公开(需合作申请)和长期维护计划未明确。建议在训练前执行以下操作:(1) 优先获取 MIMIC-CXR 和 CT-RATE 数据(覆盖最大量样本);(2) 对 US 模态组结果进行额外验证(中文报告 + 小样本量);(3) 如需脑部 MRI 数据,尽早联系上海市第六人民医院。
§7.8 外部验证矩阵
| 外部数据集/场景 | 来源机构 | 模态 | 评估任务 | 性能指标 | 相对内部测试集变化 | 关键发现 |
|---|---|---|---|---|---|---|
| CheXpert Plus | Stanford (美国) | CXR | 检索 Recall@1 | 各层级不同 | +6.0 pp(平均) | 外部检索性能显著提升 |
| IU-Xray | Indiana Univ. (美国) | CXR | 检索 Recall@1 | 各层级不同 | 同上 | 跨中心泛化性良好 |
| BIMCV-R | Valencia (西班牙) | CT | 检索 Recall@1 | 各层级不同 | 同上 | CT 跨中心验证 |
| Medical-Diff-VQA | MIMIC-CXR 派生 | CXR | 封闭式 VQA | 87.1% | N/A | 公开 VQA 基准 |
| MMXU | MIMIC-CXR 派生 | CXR | VQA | — | N/A | 公开 VQA 基准 |
| CXR 纵向随访 | CheXpert Plus | CXR | 区间变化预测 | +14.5–46.5 pp | N/A | 大幅超越基线 |
| CT 纵向随访 | CT-RATE | CT | 区间变化预测 | +13.0–27.9 pp | N/A | 大幅超越基线 |
§8 基准性能与生态
§8.1 排行榜
| 排名 | 模型 | 任务 | 性能指标 | 年份 | 关键技术 | 完整引用 | 代码 |
|---|---|---|---|---|---|---|---|
| 1 | MedReCo | CXR 检索 (Recall@1, 全 12 设置) | 最高 | 2026 | MoE-ViT + 实体条件交叉注意力 | Zhang et al., 2026, arXiv:2606.06407 | GitHub |
| 2 | MedReCo (外部测试) | CXR/CT 检索 (Recall@1) | +6.0 pp (平均) | 2026 | 同上 + 粗到细重排序 | 同上 | 同上 |
| 1 | MedReCo-VLM | 比较解读 VQA (全 24 评估) | 最佳 | 2026 | MoE-ViT + Qwen2.5-7B + 指令微调 | 同上 | 同上 |
| 2 | MedReCo-VLM | Medical-Diff-VQA 准确率 | 87.1% | 2026 | 同上 | 同上 | 同上 |
| 3 | MedReCo-VLM | CXR 纵向随访 | +14.5–46.5 pp | 2026 | 同上 | 同上 | 同上 |
| 4 | MedReCo-VLM | CT 纵向随访 | +13.0–27.9 pp | 2026 | 同上 | 同上 | 同上 |
| 5 | MedReCo (MoE) vs Shared-ViT | 检索 Recall@1 | +5.2 pp (平均) | 2026 | MoE 模态特异性路由 | 同上 | 同上 |
| 6 | MedReCo-VLM vs InfoNCE-only | 封闭式 VQA 准确率 | +2.3 pp (平均) | 2026 | 实体条件表示学习 | 同上 | 同上 |
注意:不同论文的绝对数值不可直接比较,因为使用了不同版本的基准分割和评估协议。MedReCo-DB 是首个针对实体感知比较推理的基准,因此大部分结果是与论文内部的消融基线比较。
§8.2 SOTA 选型建议
| 任务 | 推荐模型 | 理由 |
|---|---|---|
| 实体条件检索 | MedReCo | 12 项内部设置全部第一,外部 +6.0 pp |
| 比较解读生成 | MedReCo-VLM | 24 项评估全部最佳 |
| 纵向随访预测 | MedReCo-VLM | CXR +14.5–46.5 pp,CT +13.0–27.9 pp |
| 快速原型验证 | CLIP + linear probe | 无需训练 MedReCo,但性能降低 ~6 pp |
| 资源受限 VQA | LLaVA-Med | 更轻量,但性能低于 MedReCo-VLM |
| 自定义实体检索 | MedReCo + 自定义实体 | 需重新定义实体体系并微调 |
| 3D 影像专用 | MedReCo (3D 分支) | MoE-ViT 支持 3D patch (10×20×20) |
§8.3 评测协议
| 评估类型 | 协议 | 说明 |
|---|---|---|
| 检索 | Recall@k (k∈{1,3,5}) | 基于实体级相关性标准 |
| 封闭式 VQA | 准确率 | 多选一,选项随机打乱 |
| 开放式 VQA | BLEU + BERTScore + METEOR + RaTEScore + RadGraph F1 | 5 指标综合 |
| 纵向随访 | 准确率(6 类区间变化标签) | 按模态分别报告 |
| 跨中心泛化 | 外部测试集 Recall@k | CheXpert/IU-Xray/BIMCV-R |
| 消融 | 逐组件移除 | MoE vs Shared-ViT, 实体条件 vs InfoNCE |
§8.4 相关数据集
| 数据集 | 关系 | 模态 | 说明 |
|---|---|---|---|
| MIMIC-CXR | 源数据集 | CXR | 最大量 CXR 来源 |
| CheXpert Plus | 源 + 外测 | CXR | 外部验证 + CXR 纵向随访来源 |
| CT-RATE | 源数据集 | Chest CT | CT 纵向随访来源 |
| BIMCV-R | 外测 | CT | CT 跨中心验证 |
| IU-Xray | 外测 | CXR | CXR 跨中心验证 |
| AMOS-MM | 源数据集 | Abdomen CT | 腹部 CT 配对报告 |
| CURG | 源数据集 | US | 乳腺/甲状腺/肝脏超声 |
| Medical-Diff-VQA | 基准评估 | CXR | 公开 VQA 基准对比 |
| MMXU | 基准评估 | CXR | 公开 VQA 基准对比 |
§8.5 关键论文
-
Zhang, T. et al. (2026). “A Vision-Language Framework for Comparative Reasoning in Radiology.” arXiv:2606.06407.
— MedReCo-DB 原始论文,提出实体感知比较推理框架 -
Johnson, A. et al. (2019). “MIMIC-CXR: A De-identified Publicly Available Database of Chest Radiographs with Free-text Reports.” Scientific Data, 6, 317.
— MIMIC-CXR 源数据集论文 -
Irvin, J. et al. (2019). “CheXpert: A Large Chest Radiograph Dataset with Uncertainty Labels and Expert Comparison.” AAAI 2019.
— CheXpert 源数据集论文 -
Hamamci, I. et al. (2024). “A foundation model for generalizable chest CT analysis using large-scale heterogeneous data.” arXiv:2405.06352.
— CT-RATE 源数据集论文 -
Demner-Fushman, D. et al. (2016). “Preparing a collection of radiology examinations for distribution and retrieval.” JAMIA, 23(2), 304-310.
— IU-Xray 源数据集论文 -
Wu, S. et al. (2024). “CheXpert Plus: Augmenting a Large Chest X-ray Dataset with Text Radiology Reports, Patient Demographics and Additional Image Formats.” arXiv:2405.19538.
— CheXpert Plus 扩展论文 -
Liu, R. et al. (2024). “RaTEScore: A Metric for Radiology Report Generation.” EMNLP 2024.
— RaTEScore 评估指标论文 -
Delbrouck, J. et al. (2022). “RadGraph: Extracting Clinical Entities and Relations from Radiology Reports.” JMLR.
— RadGraph-XL 实体关系图模型 -
Qiu, P. et al. (2023). “Making the Most of Mismatched Data for Ultra-Sound Imaging.” MICCAI.
— CURG 超声数据集相关工作 -
Ji, B. et al. (2023). “Medical-Diff-VQA: Multimodal Medical Question Answering Network.” ACL.
— Medical-Diff-VQA 基准论文
§8.6 社区活跃度
| 维度 | 数值 | 说明 |
|---|---|---|
| GitHub Stars | 新发布(截至 2026-08) | github.com/time-seed/MedReCo |
| HuggingFace Downloads | 活跃增长中 | timeseed/MedReCo-DB |
| arXiv 引用 | 新发布 | 2026-06 首发 |
| 作者团队 | 上海交大/Ya Zhang & Yanfeng Wang & Weidi Xie | 活跃的医学 AI 研究团队 |
| 后续论文 | 暂无(新发布) | 预计将有大量跟进工作 |
| 工业关注 | 高 | 比较推理是临床 AI 核心需求 |
§8.7 生态快照
| 资源 | 类型 | 链接 | 为什么值得关注 |
|---|---|---|---|
| MedReCo GitHub | 官方代码 | github.com/time-seed/MedReCo | 模型代码 + 基准构建脚本 |
| HuggingFace Dataset | 数据 | huggingface.co/datasets/timeseed/MedReCo-DB | 派生注释 + VQA 对 |
| arXiv 论文 | 论文 | arxiv.org/abs/2606.06407 | 完整方法描述 + 实验结果 |
| DeepSeek-V3.1 | 工具 | deepseek.com | 报告解构使用的 LLM |
| RaTE-NER | 工具 | github.com/ncbi/RaTEScore | 疾病实体提取 |
| RadGraph-XL | 工具 | github.com/ncbi/RadGraph | 实体关系图相似度 |
| BioLord | 工具 | huggingface.co/frederikogtorres/biobord | 生物医学语义嵌入 |
| Qwen2.5-7B | 模型 | huggingface.co/Qwen | MedReCo-VLM 基座 |
§8.8 真实世界影响案例
| 案例 | 描述 |
|---|---|
| 临床影像随访 | 纵向随访准确率提升 14.5–46.5 pp 可直接改善肺癌筛查中结节变化评估 |
| 疑难病例检索 | 实体条件检索帮助放射科医生快速找到类似已确诊病例 |
| 多模态 AI 教育 | 7 模态 139 实体体系可作为放射学 AI 教育的标准本体 |
| 跨中心泛化评估 | 4 国 8 机构天然测试床用于评估模型部署就绪度 |
| LLM 弱监督范式 | 证明 LLM 可作为医学影像领域的"弱监督信号发生器" |
| 放射学报告结构化 | 139 实体解构可用于自动化报告摘要生成 |
| 超声 AI 研究 | CURG 中文超声数据集填补中文医学 NLP 空白 |
| 脑 MRI 比较推理 | SSPH 脑 MRI 4 序列数据支持脑卒中随访研究 |
§8.9 临床影像 AI 数据生态
┌─────────────────────────────────────────────────────────────────────┐
│ MedReCo-DB 在临床影像 AI 生态中的定位 │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ 单图像诊断(传统范式) 比较推理(MedReCo 范式) │
│ ┌─────────────────┐ ┌─────────────────────────┐ │
│ │ MIMIC-CXR │ │ MedReCo-DB │ │
│ │ CheXpert │ →→→ │ (实体感知跨图像推理) │ │
│ │ NIH CXR14 │ 范式转变 │ 7 模态 / 139 实体 │ │
│ │ (单图分类) │ │ 检索 + VQA + 随访 │ │
│ └─────────────────┘ └───────────┬─────────────┘ │
│ │ │
│ ┌──────────────────┬───────────────┼───────────────┐ │
│ ▼ ▼ ▼ ▼ │
│ ┌─────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────┐ │
│ │ 实体条件 │ │ 生成性比较 │ │ 纵向随访 │ │ 跨模态 │ │
│ │ 病例检索 │ │ 解读 (VQA) │ │ 预测 │ │ 视觉表征 │ │
│ │ (MedReCo) │ │ (MedReCo-VLM)│ │ (MedReCo-VLM) │ │ (MoE-ViT)│ │
│ └─────────────┘ └──────────────┘ └──────────────┘ └──────────┘ │
│ │ │ │ │ │
│ ▼ ▼ ▼ ▼ │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ 底层数据来源 │ │
│ │ CXR: MIMIC-CXR + CheXpert + IU-Xray │ │
│ │ CT: CT-RATE + BIMCV-R + AMOS-MM │ │
│ │ MRI: SSPH (脑部 4 序列) │ │
│ │ US: CURG (乳腺/甲状腺/肝脏) │ │
│ └─────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────┘
§8.10 派生项目与后续方向
| 方向 | 描述 | 可行性 |
|---|---|---|
| 实体动态演化建模 | 建模实体随时间的变化轨迹 | 高(利用纵向随访数据) |
| 多中心偏差鲁棒性增强 | 增加更多外部中心数据 | 中(需获取更多中心数据) |
| PACS/RIS 系统集成 | 将 MedReCo 部署到临床 PACS | 中(需工程化开发) |
| 扩展实体体系 | 增加 139 实体之外的新实体 | 高(LLM 解构管道可复用) |
| 跨语言实体一致性 | 评估中英文报告解构一致性 | 高(CURG 中文数据可用) |
| 3D 影像分割 | 将实体级推理扩展到像素级分割 | 中(需额外标注) |
§9 相关资源与引用
§9.1 BibTeX
@article{zhang2026vision,
title={A Vision-Language Framework for Comparative Reasoning in Radiology},
author={Zhang, Tengfei and Zhao, Ziheng and Dai, Lisong and Zhang, Xiaoman and Qiu, Pengcheng and Zhang, Ya and Wang, Yanfeng and Xie, Weidi},
journal={arXiv preprint arXiv:2606.06407},
year={2026}
}
@article{johnson2019mimiccxr,
title={MIMIC-CXR: A De-identified Publicly Available Database of Chest Radiographs with Free-text Reports},
author={Johnson, Alistair EW and Pollard, Tom J and Berkowitz, Seth J and Greenbaum, Nathaniel R and Lungren, Matthew P and Deng, Chih-ying and Mark, Roger G and Horng, Steven},
journal={Scientific Data},
volume={6},
pages={317},
year={2019}
}
@inproceedings{irvin2019chexpert,
title={CheXpert: A Large Chest Radiograph Dataset with Uncertainty Labels and Expert Comparison},
author={Irvin, Jeremy and Rajpurkar, Pranav and Ko, Michael and Yu, Yifan and Ciurea-Ilcus, Silviana and Chute, Chris and Marklund, Henrik and Haghgoo, Behzad and Ball, Robyn and Shpanskaya, Katie and others},
booktitle={AAAI},
volume={33},
pages={590597},
year={2019}
}
@article{hamamci2024ctrate,
title={A foundation model for generalizable chest CT analysis using large-scale heterogeneous data},
author={Hamamci, Ibrahim Almahdi and Er, Sezgin and Simsek, Muzaffer and Beton, Alperen and {\"O}zt{\"u}rk, Şakir and others},
journal={arXiv preprint arXiv:2405.06352},
year={2024}
}
@article{wu2024chexpertplus,
title={CheXpert Plus: Augmenting a Large Chest X-ray Dataset with Text Radiology Reports, Patient Demographics and Additional Image Formats},
author={Wu, Sky and others},
journal={arXiv preprint arXiv:2405.19538},
year={2024}
}
@inproceedings{liu2024ratescore,
title={RaTEScore: A Metric for Radiology Report Generation},
author={Liu, Ruibo and others},
booktitle={EMNLP},
year={2024}
}
@article{delbrouck2022radgraph,
title={RadGraph: Extracting Clinical Entities and Relations from Radiology Reports},
author={Delbrouck, Jean-Benoit and Vaze, Akshay and Chambon, Pierre and Duncan, Christian and Willis, Ethan and Ostmeier, Stefan and Reis, Christian and Chute, Christopher and Langlotz, Curtis},
journal={JMLR},
volume={23},
year={2022}
}
@inproceedings{ji2023medicaldiffvqa,
title={Medical-Diff-VQA: Multimodal Medical Question Answering Network},
author={Ji, Bang and others},
booktitle={ACL},
year={2023}
}
§9.2 官方资源
| 资源 | 类型 | URL |
|---|---|---|
| GitHub 代码仓库 | 代码 | https://github.com/time-seed/MedReCo |
| HuggingFace 数据集 | 数据 | https://huggingface.co/datasets/timeseed/MedReCo-DB |
| arXiv 论文 | 论文 | https://arxiv.org/abs/2606.06407 |
| arXiv HTML 版本 | 论文 | https://arxiv.org/html/2606.06407 |
| DOI | 永久标识 | https://doi.org/10.48550/arXiv.2606.06407 |
§9.3 社区资源
| 资源 | 类型 | URL |
|---|---|---|
| MIMIC-CXR (PhysioNet) | 源数据 | https://physionet.org/content/mimic-cxr/2.1.0/ |
| CheXpert (Stanford) | 源数据 | https://stanfordmlgroup.github.io/competitions/chexpert |
| CheXpert Plus (arXiv) | 源数据 | https://arxiv.org/abs/2405.19538 |
| CT-RATE (HuggingFace) | 源数据 | https://huggingface.co/datasets/ctrate |
| BIMCV-R | 源数据 | https://bimcv.med.gva.es/ |
| IU-Xray | 源数据 | https://openi.nlm.nih.gov/ |
| AMOS-MM | 源数据 | https://zenodo.org/record/7159158 |
| DeepSeek-V3.1 | 工具 | https://deepseek.com |
| RaTE-NER | 工具 | https://github.com/ncbi/RaTEScore |
| RadGraph-XL | 工具 | https://github.com/ncbi/RadGraph |
| BioLord | 工具 | https://huggingface.co/frederikogtorres/biobord |
| Qwen2.5-7B-Instruct | 模型 | https://huggingface.co/Qwen/Qwen2.5-7B-Instruct |
| LLaMA-3.1-8B | 模型 | https://huggingface.co/meta-llama/Llama-3.1-8B |
§9.4 引用指南
如果您在研究中使用了 MedReCo-DB,请引用原始论文:
@article{zhang2026vision,
title={A Vision-Language Framework for Comparative Reasoning in Radiology},
author={Zhang, Tengfei and Zhao, Ziheng and Dai, Lisong and Zhang, Xiaoman and Qiu, Pengcheng and Zhang, Ya and Wang, Yanfeng and Xie, Weidi},
journal={arXiv preprint arXiv:2606.06407},
year={2026}
}
同时,请遵循各源数据集的引用要求,分别引用 MIMIC-CXR、CheXpert、CT-RATE 等数据集的原始论文。
§9.5 变更日志
| 版本 | 日期 | 变更 |
|---|---|---|
| arXiv v1 | 2026-06-04 | 首次发布 |
| arXiv v2 | 2026-06-08 | 修订版 |
| HuggingFace v1 | 2026-06 | 派生注释与基准上线 |
§10 AI 使用声明卡
| 字段编号 | 字段名 | 内容 |
|---|---|---|
10.1 |
ai_models_used |
Claude 3.5 Sonnet(文献分析 + 条目撰写)、GPT-4(结构化数据组织) |
10.2 |
ai_contribution_scope |
初稿撰写(全部章节)+ 数据整理 + 代码示例生成 |
10.3 |
input_sources |
见下方完整列表 |
10.4 |
human_verification |
见下方校验表 |
10.5 |
ai_generated_sections |
§0-§10 全部章节由 AI 初稿撰写,经千方病案医学编辑部交叉审核 |
10.6 |
last_human_review |
2026-08-04 |
§10.3 输入来源完整列表
- Zhang, T. et al. (2026). “A Vision-Language Framework for Comparative Reasoning in Radiology.” arXiv:2606.06407v2 — 论文正文及补充材料
- arXiv HTML 全文 — https://arxiv.org/html/2606.06407
- HuggingFace 数据集页面 — https://huggingface.co/datasets/timeseed/MedReCo-DB
- GitHub 代码仓库 — https://github.com/time-seed/MedReCo
- Pith Review 论文摘要 — https://pith.science/paper/K7DDQLJG
- BAAI Hub 论文解读 — https://hub.baai.ac.cn/paper/7f4b0b26-9481-4c86-9207-e584146342bd
- 《Global Medical AI Datasets》PDF 第 9 页 — MedReCo-DB 基础介绍
- AI_Ready_数据集Wikipedia_Schema模板.md v3.9 — 模板规范
- CheXpert_Wikipedia.md — 深度参考标准(frontmatter/JSON-LD 格式)
- Johnson et al. (2019) — MIMIC-CXR 源数据集论文
- Irvin et al. (2019) — CheXpert 源数据集论文
- Hamamci et al. (2024) — CT-RATE 源数据集论文
- Wu et al. (2024) — CheXpert Plus 扩展论文
- Liu et al. (2024) — RaTEScore 评估指标论文
- Delbrouck et al. (2022) — RadGraph 实体关系图论文
§10.4 人工校验表
| 内容模块 | 审核者 | 审核方式 | 审核状态 |
|---|---|---|---|
| §2 医学背景(ICD-11/SNOMED CT 映射、实体定义) | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §4 DAIMS 数据字典 | 千方病案医学编辑部 | 与论文补充材料交叉比对 | ✅ 已验证 |
| §5 数据划分策略 | 千方病案医学编辑部 | 与论文 Table S5-S8 交叉比对 | ✅ 已验证 |
| §6 代码示例与坑点 | 千方病案医学编辑部 | 逻辑审查 | ✅ 已通过 |
| §7 偏倚分析与 DAIMS 评分 | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §8 基准性能排行榜 | 千方病案医学编辑部 | 与论文 §5 实验结果交叉比对 | ✅ 已验证 |
| §C JSON-LD 结构 | 千方病案医学编辑部 | 规范合规检查 | ✅ 已验证 |
页面状态:published — 全部内容已完成审核并发布。
