4. 验证数据集构建工程

验证数据集是医学影像AI性能验证的“量具”。量具本身若存在偏倚、泄漏或版本混乱,后续所有AUC、敏感度、特异度数字都会失去意义。本节把验证数据集构建当作一项工程任务来拆解:从数据来源选择开始,经过纳入排除、标注、多中心采集、隐私脱敏,最终落到可追溯的数据版本管理。核心目标是让验证集在统计上独立、在临床上代表目标人群、在工程上可复现。

一、数据来源:先明确“验证什么人群”

验证集来源必须与器械预期用途(Intended Use)对齐。常见来源包括:前瞻性多中心采集、回顾性院内队列、公开数据集(如LIDC-IDRI、CheXpert、BraTS)、以及厂商自建数据集。选择时需回答三个问题:目标人群的患病率是多少?设备与扫描协议是否覆盖真实使用场景?阳性与阴性病例是否来自同一时间窗和同一入组路径?

回顾性数据成本低但易引入选择偏倚,例如只纳入有病理确诊的病例,会系统性高估模型性能。前瞻性采集更贴近真实,但需伦理审批、知情同意与站点协调。公开数据集适合做预实验或算法对比,但需核查其标注标准、采集设备与目标场景是否一致,不能直接当作注册验证集。

二、纳入排除标准:把临床问题翻译成可执行规则

纳入排除标准应写成可被数据工程师执行的布尔条件,而不是模糊描述。以肺结节CT验证集为例,可定义:

  • 纳入:年龄≥18岁;胸部CT层厚≤1.5 mm;含至少一个直径≥6 mm的实性结节;有病理或12个月随访作为参考标准。
  • 排除:既往肺部手术史;严重呼吸运动伪影;结节已被治疗;同一患者重复扫描仅保留首次。

关键原则是“先定标准,再看数据”。若先看数据再补标准,容易产生事后选择偏倚。建议在方案中记录每条标准的执行顺序与冲突处理规则,例如同一患者多次检查时按时间最近且质量合格者入组。

三、标注规范:参考标准决定验证上限

医学影像AI的参考标准(Reference Standard)通常来自病理、随访、多专家共识或复合标准。标注规范需明确:标注对象(病灶/图像级/像素级)、标注工具、窗宽窗位、最小可标注尺寸、是否允许修改、争议解决机制。对于分割任务,还需定义边界规则,例如结节分割是否包含胸膜牵拉、是否包含钙化。

多阅片者设计可降低单读者偏倚。常见做法是双读者独立标注,分歧由第三位高年资医师仲裁;或采用多数投票。应记录读者资质、阅片顺序、是否可见临床信息,并计算读者间一致性(如Cohen's κ、Dice系数)。若一致性过低,说明标注规范本身需要修订,而不是直接进入模型评估。

四、多中心采集:让验证集覆盖真实变异

多中心采集的价值在于引入设备、协议、人群和操作者差异。工程上需为每个站点建立采集清单:设备型号、探测器、重建算法、层厚、管电压、对比剂方案、扫描范围。站点间差异既是挑战也是验证目标——模型若只在单一设备上表现好,泛化能力就存疑。

建议按站点分层抽样,保证每个站点在验证集中有足够样本量,并记录站点来源以便后续做亚组分析。若某站点阳性率显著偏离预期,应核查入组流程而非直接合并。

五、隐私脱敏:DICOM层与像素层都要处理

DICOM文件包含大量受保护健康信息(PHI),如患者姓名、ID、出生日期、检查日期、机构名称、设备序列号。脱敏需覆盖:

  • DICOM标签:按DICOM PS3.15基本应用级保密性配置文件,清除或替换患者标识、日期偏移、机构信息。
  • 像素层:超声、X线、CT定位像中可能烧录姓名或ID,需OCR检测并遮盖。
  • 面部重建:头颅CT/MRI需评估是否可重建面部,必要时做去面部处理。

脱敏后应保留一个内部映射表,用于必要时回溯,但映射表必须与影像数据物理隔离并加密存储。日期偏移应保持时间间隔一致,避免破坏随访时序。

六、数据版本管理:让每次验证可复现

验证集一旦用于正式评估,就应冻结为不可变版本。推荐采用“数据版本号+清单文件+校验和”的方式管理。每次变更(新增病例、修正标注、重新脱敏)都生成新版本,并记录变更原因、操作人、时间戳。清单文件应包含每个病例的匿名ID、站点、入组日期、标注版本、脱敏版本、文件SHA-256。

下面给出一个验证集版本清单的示例结构,可直接作为模板使用:

dataset_version: v1.2.0
freeze_date: 2025-03-15
intended_use: 肺结节CT良恶性分类辅助诊断
sites: [S01, S02, S03]
inclusion: age>=18; slice_thickness<=1.5mm; nodule_diameter>=6mm
reference_standard: pathology_or_12m_followup
annotation_version: anno_v2.1
deid_version: deid_v1.0
cases:
  - anon_id: S01-0001
    site: S01
    label: malignant
    sha256: 3f2a...c9
  - anon_id: S02-0017
    site: S02
    label: benign
    sha256: 8b1d...4e

版本管理还应与模型评估记录绑定:每次评估报告需注明所用验证集版本、清单校验和、评估脚本版本。这样当监管或临床质疑结果时,可以完整复现。

验证数据集构建工程:从来源到版本冻结 数据来源 前瞻性多中心 回顾性院内队列 公开数据集 厂商自建集 纳入 / 排除标准 年龄、层厚、病灶尺寸 参考标准可得性 伪影 / 治疗史排除 先定标准再看数据 标注规范 病理 / 随访 / 共识 双读者 + 仲裁 边界与窗宽窗位 一致性 κ / Dice 多中心采集 设备 / 协议差异 站点分层抽样 采集清单登记 亚组分析预留 隐私脱敏(DICOM + 像素层) 清除 PHI 标签 · 日期偏移 · 机构/设备信息替换 OCR 检测烧录文字 · 面部重建评估 · 映射表加密隔离 脱敏版本号:deid_v1.0 数据版本管理(冻结与可追溯) 版本号 v1.2.0 · 冻结日期 · 清单文件 · SHA-256 校验和 变更记录:新增病例 / 标注修正 / 重新脱敏 与评估报告绑定:验证集版本 + 脚本版本 可复现验证集 独立 · 代表 · 可追溯 支持监管核查 支持亚组分析 注:图中参数与版本号为教学示例,实际项目应按机构伦理与监管要求设定
验证集构建的常见陷阱:用训练集同源数据做验证、脱敏不彻底导致PHI残留、标注版本与影像版本不对应、多中心数据未分层直接合并。建议在方案阶段就建立“数据卡”(Datasheet),记录来源、标准、标注、脱敏和版本信息,随验证报告一并归档。