2. 医学影像数据基础与敏感属性
在医学影像模型公平性评估中,数据层决定了偏差能否被“看见”。如果敏感属性没有进入数据表,后续无论怎样调整损失函数或阈值,都无法回答“模型对哪一类人群更差”。本节把影像数据拆成四条相互关联的信息链:DICOM元数据、影像组学特征、患者人口学变量、设备参数,并说明敏感属性标注规范如何把它们串成可审计的数据集。
一、DICOM元数据:影像自带的“身份档案”
DICOM文件由文件元信息(File Meta Information)和数据集(Dataset)组成。数据集按标签(Tag)组织,标签由组号(Group)和元素号(Element)构成,例如 (0010,0010) 是患者姓名,(0010,0040) 是性别,(0010,1010) 是年龄,(0008,0070) 是制造商,(0018,1000) 是设备序列号,(0018,5100) 是患者体位,(0028,0030) 是像素间距,(0028,1050) 是窗位。这些标签是敏感属性抽取的第一来源,但必须注意:DICOM中的性别、年龄常为自由文本或区间值,不能直接当作建模标签。
实际抽取时,建议先建立“标签—字段—类型”映射表,再统一单位与缺失编码。例如年龄 067Y 需解析为 67,010D 解析为 0 岁;性别 M/F/O 需映射为统一枚举,O 与空值要区分“未知”和“未填写”。像素间距、层厚、KVP、曝光时间等设备参数也应从元数据中提取,用于后续偏差归因。
二、影像组学特征:从像素到可计算表型
影像组学特征是把感兴趣区(ROI)内的像素强度、形状和纹理转成数值向量。常见类别包括:一阶统计(均值、方差、偏度、峰度、熵)、形状特征(体积、表面积、球形度、最大径)、纹理特征(GLCM对比度、相关性、能量、同质性;GLRLM游程长度;GLSZM区域大小)、以及小波或LoG滤波后的高阶特征。以PyRadiomics为例,一次提取可得到上千维特征,但并非全部稳定。
公平性评估更关心特征是否在不同设备、不同人群间发生系统性漂移。例如同一CT协议下,不同制造商重建核会导致GLCM对比度整体偏移;若某一人群更多使用某一设备,模型就可能把“设备差异”误学成“人群差异”。因此,影像组学特征必须与设备参数、层厚、像素间距、重建核一起入表,并在分析前做批次效应检查,如按设备分层计算特征均值与方差,或使用ComBat类方法做协调,但协调后需保留原始特征用于审计。
三、患者人口学变量:敏感属性的主表
人口学变量通常来自医院信息系统(HIS)或登记表,包括年龄、性别、种族、民族、语言、保险类型、邮编或收入分层、合并症等。它们与DICOM中的性别、年龄可能不一致,例如DICOM写“M”而HIS记录为“男性”,或年龄按检查日期与出生日期计算后与DICOM区间不同。处理原则是:以HIS或登记表为主表,DICOM作为交叉校验来源,冲突时记录差异而不是静默覆盖。
敏感属性标注规范应明确字段名、数据类型、允许值、缺失编码、来源系统和置信度。例如:sex_at_birth 允许 female/male/intersex/unknown;race 采用国家或机构标准分类,并允许“多选”与“其他,请说明”;age_at_exam 为整数,缺失记为 NA,不得用 0 代替。所有敏感属性应去标识化存储,访问需权限控制,并保留版本号与变更记录,确保评估可复现。
四、设备参数:偏差归因的分层变量
设备参数不是敏感属性本身,却是解释偏差来源的关键。同一患者群体若集中在某台设备或某个扫描协议,模型性能差异可能来自设备而非人群。因此,数据表应至少包含:制造商、型号、设备序列号、KVP、mAs、曝光时间、层厚、像素间距、重建核、磁场强度、序列类型、扫描协议名称。分析时可按设备分层计算AUC、敏感度、特异度,观察不同设备下同一人群的指标波动;若某设备样本量过小,应标注“样本不足,结论谨慎”。
五、可执行的数据表字段示例
下面给出一份可直接参考的字段清单,用于把四类信息合并为一行一检查的分析表。字段名可按机构习惯调整,但语义必须清晰。
| 字段名 | 类型 | 示例值 | 来源 | 说明 |
|---|---|---|---|---|
| patient_id | 字符串 | P000123 | HIS | 去标识化唯一编号 |
| study_uid | 字符串 | 1.2.840... | DICOM | 检查级唯一标识 |
| sex_at_birth | 枚举 | female | HIS/DICOM | 敏感属性,冲突需记录 |
| age_at_exam | 整数 | 67 | HIS | 检查日期减出生日期 |
| race | 枚举 | Asian | 登记表 | 按机构标准分类 |
| manufacturer | 字符串 | SIEMENS | DICOM | 设备分层变量 |
| kvp | 数值 | 120 | DICOM | 单位 kV |
| slice_thickness | 数值 | 1.25 | DICOM | 单位 mm |
| reconstruction_kernel | 字符串 | B30f | DICOM | 影响纹理特征 |
| radiomics_glcm_contrast | 数值 | 12.47 | PyRadiomics | 示例特征值 |
| label | 二值 | 1 | 病理/随访 | 模型目标变量 |