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