信息速览
INbreast — 高精度标注乳腺钼靶数据集 AI-Ready Wikipedia
INFOBOX
| 数据集名称 | INbreast |
| 英文全称 | INbreast: Toward a Full-field Digital Mammographic Database |
| 别名/简称 | INbreast、INBreast、INbreast Release 1.0 |
| 疾病分类 | 乳腺恶性肿瘤(ICD-11:2C60-2C6Z 乳腺恶性肿瘤家族,如 2C61.0 浸润性导管癌;对照 ICD-10:C50)/ 乳腺良性肿瘤(ICD-11 形态学方位编码;对照 ICD-10:D24) |
| SNOMED CT | 254837009 Malignant tumor of breast / 399606004 Breast cancer screening / 71651007 Mammography / 25315004 Mammogram (procedure)(详见 §2.1b) |
| 数据模态 | 乳腺钼靶(X 线)——全视野数字乳腺摄影(FFDM)二维灰阶影像 |
| AI 任务类型 | 病灶分割、肿块/钙化检测、良恶性二分类、BI-RADS 分类、ACR 乳腺密度分级、跨中心外部验证、合成数据生成 |
| 样本总数 | 115 例患者 / 410 张图像(90 例双乳受累每例 4 张;25 例乳房切除术后每例 2 张) |
| 数据大小 | 约 9.01 GB(含 DICOM、XML 标注与 extras 掩膜共 1619 个文件) |
| 数据格式 | DICOM(原始影像)+ XML(OsiriX 轮廓标注)+ PNG(二值掩膜)+ PDF(说明文档) |
| 许可证 | 未明确指定具体条款(作者声明研究者与商业厂商均可免费获取);Kaggle 镜像标注 CC BY-NC 4.0 |
| 访问级别 | 开放获取(原始申请页已下线,社区经 Kaggle 等镜像分发) |
| DUO 标签 | GRU, NPUNCU |
| 语言 | 英文(XML 标签与随附 PDF 文档) |
| 首发日期 | 2012-02(Academic Radiology 19(2):236-248;2011-11-14 在线发表) |
| 最后更新 | 2012-02(Release 1.0,官方后续扩充计划未见公开新版本) |
| 发布机构 | INESC TEC & Centro Hospitalar de S. João(葡萄牙波尔图) |
| 官方主页 | https://www.pubmed.ncbi.nlm.nih.gov/22078258/ |
| 下载地址 | https://www.kaggle.com/datasets/tommyngx/inbreast2012/data |
| DOI | 10.1016/j.acra.2011.09.014 |
| 引用次数 | 1,300+(Google Scholar,截至 2026-09) |
| AI 就绪度评分 | ⭐⭐⭐⭐(4/5)— 像素级专家标注 + 完整 DICOM 元数据 + 丰富第三方基准;扣分项:规模仅 410 张、无官方划分、原始下载页失效、许可条款缺位 |
| 页面状态 | published |
§0 E-E-A-T 信任声明与免责声明
医学审核者:千方病案医学编辑部交叉审核:§2 医学背景(ICD-11 与 SNOMED CT 映射、BI-RADS 与 ACR 密度分级体系、乳腺筛查与诊断任务定义)、§7 偏倚分析。
数据工程审核者:千方病案医学编辑部交叉审核:§4 DAIMS 数据字典(DICOM 元数据映射、XML 轮廓解析)、§5 数据划分策略、§6 预处理 Pipeline 和坑点。
审核日期:2026-09-05
审核方式:交叉审核
利益冲突声明:千方病案医数集与 INESC TEC、Centro Hospitalar de S. João 及任何镜像托管平台无商业利益关联。本页面不销售 INbreast 数据集本身,仅提供 AI 就绪指南与学术信息服务。编辑者未接受上述机构的任何形式资助。
医疗免责声明:本页面提供的医学信息仅供研究和教育目的,不构成医疗建议、诊断或治疗方案。数据集的医学描述基于公开发表的文献,未经逐一临床验证。任何基于该数据集训练的 AI 模型在应用于临床决策前,必须经过独立的临床验证和监管审批。
技术免责声明:本页面的代码示例、预处理建议和基准性能数据基于公开资料整理,不保证在特定环境下的准确性和适用性。使用者应自行验证代码安全性和数据预处理流程的正确性。千方病案医数集不对因使用本页面信息而导致的任何直接或间接损失承担责任。
数据使用合规:使用本页面描述的数据集前,请务必阅读并遵守数据集原始许可协议。INbreast 的作者未发布明确的具体许可条款,仅声明面向研究者与商业厂商免费开放;第三方镜像(如 Kaggle)可能附加 CC BY-NC 4.0 等额外限制。DUO 标签仅供参考,具体使用限制以数据集官方协议与当地伦理要求为准。
§1 数据集概览
§1.0 30 秒速览
这是什么? INbreast 是一套乳腺钼靶(乳腺 X 线)影像数据集,2012 年由葡萄牙波尔图大学的团队在《Academic Radiology》上正式发布。它收录 115 位女性患者的 410 张数字乳腺摄影图像,每张都是原始 DICOM 格式的完整检查影像,包含头尾位(CC)和内外斜位(MLO)两个标准体位。与更早的 MIAS、DDSM 不同,这些图像由现代数字探测器直接采集,而非把胶片扫描成电子文件,因此没有扫描仪引入的二次失真。
为什么重要? 乳腺钼靶 AI 研究长期受困于一个矛盾:大规模数据集(如 DDSM)标注粗糙,而标注精确的数据集(如 MIAS)只有近似圆圈。INbreast 的关键贡献在于提供了像素级精确的病灶轮廓:由一名专科医师在 OsiriX 工作站上逐点勾画,再由第二名专科医师独立验证,有分歧就讨论到共识为止;所有病灶还都经过粗针活检或术后标本的组织学确认。这让它成为衡量分割算法真实精度的"试金石",长期被当作跨中心外部验证集使用。
我能用它做什么? 典型用途有三类:训练和评测乳腺病灶分割模型(输入影像、输出病灶掩膜);做肿块/钙化的良恶性分类与 BI-RADS 分级预测;作为外部验证集,检验在 CBIS-DDSM、VinDr-Mammo 等大型数据上训练的模型能否跨设备、跨人群泛化。需注意 410 张的规模不足以从零训练深度模型,实践中通常配合强数据增强、迁移学习,或纯粹作为测试集使用。
§1.1 摘要
INbreast 的构建目标在论文中写得很直白:为计算机辅助检测与诊断(CAD)研究提供一套"真正适合研究用途"的乳腺摄影数据库。作者指出现有公开数据库普遍不满足研究需求——要么是数字化胶片带来的信息损失,要么是标注精度不足以支撑算法评估。
数据集在葡萄牙波尔图的 Centro Hospitalar de S. João(CHSJ)乳腺中心采集,使用 MammoNovation Siemens 全视野数字乳腺摄影系统,探测器为非晶硒(amorphous selenium)固态平板,像素间距 70 微米,灰度深度 14-bit(16,384 级),输出分辨率依乳房尺寸分为 3328 × 4084 与 2560 × 3328 两种。采集周期为 2008 年 8 月至 2010 年 7 月,全程获得葡萄牙国家数据保护委员会与医院伦理委员会的许可。
样本构成为 115 例患者、410 张图像:其中 90 例双乳均有异常,每例提供 4 张图像(左右乳各含 CC 与 MLO 两个体位);另 25 例为乳房切除术后患者,每例仅提供 2 张。病灶类型覆盖肿块(mass)、钙化(calcification)、不对称(asymmetry)与结构扭曲(distortion),并额外标注了微钙化簇(cluster)、毛刺区(spiculated region)与胸大肌(pectoral muscle,仅 MLO 视图)。
标注工作在 2010 年 4 月至 12 月间完成,使用开源 PACS 工作站 OsiriX,以 XML 格式保存。每个 ROI 记录面积(Area)、中心点(Center)、发现类型(Name)以及完整的轮廓点列表。除图像标注外,数据集还提供患者采集时年龄、家族史、ACR 乳腺密度分级与 BI-RADS 分类,BI-RADS 3 至 6 且实际执行活检的病例附有活检结果。
§1.2 战略价值
价值维度一:标签精度的稀缺性。 在乳腺影像 AI 领域,标签质量往往比数据规模更能决定研究的可信度。DDSM 虽有两万余张图像,但其像素级轮廓在后续研究中被反复指出存在偏差,会把目标像素错划为背景、反之亦然,直接污染分割与分类的准确率度量。INbreast 反其道而行,用双专家验证 + 共识仲裁的流程换取精度,代价是规模只有 410 张。这种"重质不重量"的取舍,使它成为社区公认最可靠的开源乳腺摄影数据集之一,也让它的定位天然偏向验证集与基准集,而非训练主力。
价值维度二:现代设备的保真度。 多数早期公开乳腺数据集建立在数字化胶片(SFM)基础上,存在扫描分辨率损失、动态范围压缩与扫描伪影。INbreast 是首批完全基于全视野数字乳腺摄影(FFDM)的公开数据集,保留了原始 14-bit 灰阶与 70 微米像素间距的完整信息。这对研究影像质量与算法表现的关系极为关键:当模型在胶片数据上学到的纹理特征遇到数字探测器输出时会显著退化,而 INbreast 提供了一个干净的"上层参照点"。
价值维度三:跨中心验证的锚点。 由于 INbreast 来自单一葡萄牙中心、设备型号统一、标注标准明确,它成为检验模型泛化能力的理想靶场。文献中大量出现"在 CBIS-DDSM 训练、在 INbreast 验证"的实验范式,例如一项早期工作以 ImageNet 预训练的 InceptionV3 在 CBIS-DDSM 上训练后在 INbreast 验证,仅得到 84.16% 的聚合验证准确率——远低于同数据集内的报告值,直观暴露了跨中心泛化落差。
§1.3 同类数据集横向对比
| 数据集 | 年份 | 规模 | 模态 | 标注方式 | 核心差异化 |
|---|---|---|---|---|---|
| INbreast | 2012 | 115 例 / 410 张 | FFDM(数字) | 双专家验证的像素级多边形轮廓 + BI-RADS + ACR 密度 | 精度最高的小样本基准,跨中心验证首选 |
| DDSM | 1996-1999 | 约 2,620 例 / 10,480 张 | SFM(胶片数字化) | 像素级轮廓,但精度被后续研究质疑 | 规模大、历史久,但标注噪声高 |
| CBIS-DDSM | 2017 | 1,566 例 / 10,239 张 | SFM(胶片数字化) | 重标注 ROI 掩膜 + 病理/BI-RADS 标签 | DDSM 的精选子集,DICOM 化并修正标注 |
| MIAS | 1994 | 322 张 | SFM(胶片数字化) | 仅以近似圆标记异常区域 | 极小、标注粗糙,仅适合原型验证 |
| VinDr-Mammo | 2022 | 5,000 例 / 20,000 张 | FFDM(数字) | 病灶级包围框 + 检查/乳腺级 BI-RADS 与密度 | 规模大、含亚洲人群,无像素级掩膜 |
| CMMD | 2021 | 1,775 例 / 5,202 张 | FFDM(数字) | 仅检查/患者级标签(无病灶定位) | 有分子亚型元数据,可用于预后研究 |
| KAU-BCMD | 2021 | 1,416 例 / 5,662 张 | FFDM(数字) | 图像级 BI-RADS + 密度,无病灶定位 | CC0 公共领域许可,低分辨率 JPG |
| BCDR-D | 2019 | 逾 3,600 张 | FFDM(数字) | 病灶级标注,符合 BI-RADS 标准 | 16-bit TIFF,3328 × 2560,申请周期约两个月 |
读表要点:INbreast 在"规模"维度全面落后,却在"标注精度"与"设备保真度"两个维度同时居首。这决定了它的正确用法是验证与基准而非主力训练。任何声称"在 INbreast 上训练出可临床部署模型"的工作,都需要用 VinDr-Mammo 或 CMMD 一类更大、更具人群多样性的数据集做外部验证。
§1.4 版本时间轴
| 时间 | 事件 | 说明 |
|---|---|---|
| 2008-08 至 2010-07 | 影像采集 | 于 CHSJ 乳腺中心使用 MammoNovation Siemens FFDM 系统采集 115 例 |
| 2010-04 至 2010-12 | 病灶标注 | 在 OsiriX 上完成轮廓勾画,双专家验证并共识仲裁 |
| 2011-09-26 | 论文接收 | Academic Radiology 接收 |
| 2011-11-14 | 论文在线发表 | Elsevier 在线首发 |
| 2012-02 | 正式发表 + Release 1.0 | Academic Radiology 19(2):236-248;数据集随论文公开 |
| 2012 至今 | 社区镜像扩散 | 官方申请页 medicalresearch.inescporto.pt 失效,Kaggle、Google Drive 等镜像承接分发 |
| 2019 | GAN 合成数据研究 | Zhang 等使用 INbreast 训练 GAN 生成合成数据 |
| 2020 | 强增强扩增 | Huang 等通过激进增强将 410 张扩至 7,632 张并发布于 Zenodo(CC BY 4.0) |
版本提示:社区中流传的"INbreast 7,632 张"版本是 Huang 与 Lin(2020)的增强扩展版,不是官方发布内容。它引入了大量人工变换样本,用于训练会严重高估跨数据集泛化能力,务必与官方 410 张版本区分。
§1.5 典型应用场景
| 场景 | 任务定义 | 输入 → 输出 | 推荐理由 |
|---|---|---|---|
| 乳腺病灶分割 | 逐像素划分病灶与背景 | 单张 DICOM → 二值掩膜 | 像素级专家轮廓是分割任务的黄金标准 |
| 肿块良恶性分类 | 二分类(benign / malignant) | 病灶 ROI 或整图 → 概率 | 病理经组织学确认,标签可靠 |
| BI-RADS 分级预测 | 多分类(2/3/4/5/6) | 整图 → BI-RADS 类别 | 原生提供 BI-RADS 标签,可直接监督 |
| ACR 乳腺密度分级 | 四分类(a/b/c/d) | 整图 → 密度等级 | 与 FDA 强制告知制度直接对应,临床意义明确 |
| 跨中心外部验证 | 域泛化评估 | 外部模型 → 性能落差 | 单中心、单设备、高标注质量,落差来源清晰 |
| 合成数据与增强研究 | 生成 / 增广 | 训练集 → 合成样本 | 小样本特性使其成为 GAN 研究的天然试验场 |
§2 医学背景
§2.1 ICD-11 编码映射
| 标签 | ICD-11 编码 | 中文名称 | 说明 |
|---|---|---|---|
| 乳腺恶性肿瘤 | 2C60-2C6Z | 乳腺恶性肿瘤家族 | ICD-11 采用族编码 + 后期组合,可叠加侧别、象限、组织学亚型 |
| 浸润性导管癌 | 2C61.0 | 浸润性导管癌 | 最常见的乳腺浸润性癌亚型,可作为 2C61 的后期组合示例 |
| 乳腺良性肿瘤 | 形态学方位编码 | 乳腺良性肿瘤 | ICD-11 对良性肿瘤采用形态学 + 解剖学的不同编码逻辑;ICD-10 对照为 D24 |
编码说明:ICD-11 相较 ICD-10 的关键变化在于后期组合(post-coordination)能力。ICD-10 中乳腺恶性肿瘤集中编码于 C50(C50.0-C50.9 按象限细分),而 ICD-11 用 2C60-2C6Z 家族加侧别、象限、组织学亚型的组合表达,显著提升了研究数据的可比性。INbreast 自身提供的是 BI-RADS 与 ACR 密度标签而非 ICD 编码,实际建模中需研究者自行完成"影像发现 → 病理诊断 → ICD 编码"的映射链。
§2.1b SNOMED CT 映射
| 标签 | ICD-11 | SNOMED CT | 术语 |
|---|---|---|---|
| 乳腺恶性肿瘤 | 2C60-2C6Z | 254837009 | Malignant tumor of breast |
| 乳腺癌筛查 | 无直接对应(属预防性服务) | 399606004 | Breast cancer screening |
| 乳腺 X 线摄影 | 无直接对应(属影像检查) | 71651007 | Mammography |
| 乳腺摄影操作 | 无直接对应(属影像检查) | 25315004 | Mammogram (procedure) |
| 乳腺密度分级 | 无直接对应(属影像发现) | 与 BI-RADS 密度类别对应 | Breast density (observable entity) |
映射注意:SNOMED CT 中的 71651007(Mammography)与 25315004(Mammogram procedure)在部分实现中并存,前者偏重方法学概念、后者偏重操作事件。在构建影像-诊断关联表时建议统一到操作编码,避免同一检查产生两套语义节点。
§2.2 疾病简介与流行病学
乳腺癌是全球女性最常见的恶性肿瘤,其发生是多因素共同作用的结果:不可改变的风险因素包括年龄、家族史、BRCA1/BRCA2 等基因的致病性变异、影像学所示的乳腺高密度,以及初潮早与绝经晚;可改变的因素包括肥胖、饮酒、缺乏体力活动,以及长期暴露于内源性与外源性雌激素。
从筛查角度看,乳腺钼靶是筛查与诊断乳腺癌最常用的影像模态,典型异常发现包括肿块、钙化与结构扭曲。钼靶的固有局限在于致密型乳腺会显著降低其敏感度——致密腺体会掩盖小肿块,导致漏诊(假阴性);因此对致密型乳腺人群,临床常联合超声或进一步以 MRI 检查。美国 FDA 已要求乳腺摄影机构必须向患者告知其乳腺密度类别,正是基于这一临床现实。
假阳性同样是筛查体系的重要负担。单次钼靶检查约有 10% 的女性会被召回做进一步检查,而经过额外影像学评估(加压点片、局部放大、超声)或活检后,绝大多数(约 80%)最终排除恶性。这一"高召回、低确诊"的现实,正是 CAD 与 AI 辅助诊断试图改善的核心问题——在不漏诊的前提下降低不必要的召回。
辐射剂量方面,单次乳腺钼靶的辐射量约 0.4 mSv,大致相当于人在自然环境中约 7 周所接受的本底辐射,或约 4 次常规胸部 X 线检查。世界卫生组织与国际权威机构均认为,对适龄女性而言,筛查带来早期发现与降低死亡风险的获益远大于辐射的潜在微小风险。
§2.3 临床任务定义
| 任务层级 | 任务名称 | 临床目标 | INbreast 中的对应监督信号 |
|---|---|---|---|
| 筛查 | 病灶检出(detection) | 在无症状人群中找出可疑区域 | 有无 ROI 标注、病灶类型 Name 标签 |
| 诊断 | 病灶良恶性判别 | 区分需活检与可随访的病灶 | 病理结果(BI-RADS 3-6 且执行活检者)+ BI-RADS 类别 |
| 分级 | BI-RADS 评估 | 标准化风险分层(0-6 类) | 原生 BI-RADS 字段 |
| 分级 | ACR 乳腺密度分级 | 评估腺体致密程度(a-d) | 原生 ACR density 字段 |
| 定位 | 病灶分割(segmentation) | 精确勾勒病灶边界 | XML 多边形轮廓点列表 + extras 二值掩膜 |
| 预后 | 风险预测 | 预测个体未来患癌风险 | 家族史字段(信号较弱,非主任务) |
任务选择建议:INbreast 最适配的是分割与二分类。BI-RADS 多分类虽然标签原生存在,但子集分布严重不均(4 类占 45.5%、6 类仅 4.5%),直接训练多分类模型容易在稀有类别上塌陷。若必须做,建议合并 3 类以下为"低风险"、4 类以上为"高风险",转化为二分类任务。
§2.4 患者人群表
| 维度 | 内容 |
|---|---|
| 来源 | 葡萄牙波尔图 Centro Hospitalar de S. João 乳腺中心单中心 |
| 采集时间 | 2008 年 8 月至 2010 年 7 月 |
| 患者数 | 115 例(90 例双乳受累,25 例乳房切除术后) |
| 性别 | 全部为女性 |
| 年龄 | 影像 DICOM 与 XML 中记录采集时年龄(个体值见元数据,本文不逐一列出) |
| 种族/民族 | 未提供该字段 |
| 就医类型 | 乳腺中心临床就诊人群(含诊断性与随访性检查,非纯筛查队列) |
| 病灶类型 | 肿块、钙化、不对称、结构扭曲,另有微钙化簇、毛刺区与胸大肌的独立标注 |
| 病理确认 | 全部病灶经粗针活检或术后标本组织学确认 |
人群解读的关键提醒:这不是一个筛查队列。25 例乳房切除术后患者的存在,说明队列中包含大量已确诊并在接受治疗随访的病例,疾病谱偏向重症。以此训练"筛查场景"模型会产生频谱偏倚(spectrum bias),即模型学到的是"在已知有病人群中区分良恶性",而非"在健康人群中筛查异常"。这一区别在论文与部署场景中必须明确。
§2.5 临床价值
INbreast 的临床价值主要体现在算法研发环节的可信度校准上。CAD 系统在临床上要解决的核心矛盾是敏感度与特异度的取舍:提高敏感度会带来更多假阳性召回,增加患者焦虑与医疗成本;降低敏感度则可能漏掉早期病灶。要量化这个取舍,必须知道算法在"真值"上的真实表现,而真值质量直接决定评估结论的可靠性。
INbreast 提供的像素级病理确认轮廓,让研究者能够区分两类不同的失败模式:一类是"检测到了但边界不准"(分割误差),另一类是"根本没检测到"(漏检)。在粗标注数据集上,这两类错误常常被混在一起,导致模型改进方向被误导。而在 INbreast 上,由于轮廓精度高,Dice 系数的下降可以较明确地归因到边界偏移,而非标注噪声。
此外,ACR 密度分级标签让研究者能够按密度分层评估模型表现。鉴于致密型乳腺是钼靶敏感度下降的主因,能否报告"在 C/D 型致密乳腺上的敏感度"已经成为乳腺 AI 论文的方法学门槛。INbreast 提供这一分层能力,尽管各层样本量偏小,仅适合作为定性分析。
§2.6 金标准定义
| 维度 | 内容 |
|---|---|
| 参考标准类型 | 影像轮廓标注(分割金标准)+ 组织病理学(诊断金标准) |
| 分割标注方式 | 在 OsiriX 工作站上手工逐点勾画多边形轮廓 |
| 分割标注者 | 1 名乳腺影像专科医师勾画,第 2 名专科医师独立验证 |
| 分歧处理 | 双方意见不一致时讨论至达成共识 |
| 标注时间窗 | 2010 年 4 月至 2010 年 12 月 |
| 标注类型数 | 7 类:不对称、钙化、微钙化簇、肿块、结构扭曲、毛刺区、胸大肌(仅 MLO) |
| 特殊标注规则 | 微钙化簇用包围椭圆;毛刺状肿块在致密区轮廓外另加包围全部毛刺的椭圆 |
| 诊断金标准 | 粗针活检或术后标本的组织学评估 |
| 诊断标签完整性 | BI-RADS 3-6 且实际执行活检者提供病理结果,其余缺失 |
| 一致性度量 | 未报告 Kappa 等定量一致性指标 |
方法学评价:双专家验证 + 共识仲裁是当时该领域较严谨的流程,明显优于 MIAS 的单一近似圆标注。但流程存在两个可改进处:一是仅 2 名标注者,无法计算组内相关系数;二是未报告各标注类型的分层一致性。这意味着下游使用者无法量化"轮廓本身的误差下限"。实践中建议把专家轮廓视为强标签而非绝对真值,尤其在病灶边界模糊的致密型乳腺影像上。
§3 数据集规格
§3.0 版本抉择矩阵
| 你的需求 | 推荐版本 | 大小 | 理由 |
|---|---|---|---|
| 分割/检测基准评测 | 官方 Release 1.0(410 张原始 DICOM + XML) | 约 9.01 GB | 保有原始像素级轮廓与完整元数据,无可替代 |
| 快速原型验证 | Kaggle 镜像 INbreast 2012 | 约 9.01 GB | 无需邮件申请,下载即用,内容与官方一致 |
| 深度学习训练(数据不足) | 官方集 + 自行增强 / 联合 CBIS-DDSM | 约 9.01 GB + 外部 | 410 张不足以从零训练,需迁移学习或联合训练 |
| 与文献数值直接对比 | 按原论文划分复现或引用其报告的划分 | 依实现 | 官方无划分文件,各文献划分口径不同,不可跨文比较 |
| 合成数据 / 增强研究 | 官方集(唯一正确起点) | 约 9.01 GB | 增强版(7,632 张)含人工变换样本,不能作为评测集 |
| 跨中心外部验证 | 官方 Release 1.0,整集作测试 | 约 9.01 GB | 单中心单设备特性使域偏移来源清晰可控 |
强烈建议:不要在网上随意使用"INbreast 7,632 张"打包版。该版本由第三方增强生成,同一原始图像的多个变体极易同时落入训练集与测试集,造成严重泄漏。任何以它为评测基准的结论都不可信。
§3.1 模态详情
INbreast 属单一模态数据集:乳腺钼靶 X 线二维灰阶影像。采集设备为 MammoNovation Siemens 全视野数字乳腺摄影系统,探测器为非晶硒(amorphous selenium)固态平板,通过 X 线穿过压缩后的乳腺组织后在探测器上直接转电信号成像,避免胶片数字化路径。
每个标准检查包含四个体位:左乳 CC(craniocaudal,头尾位,自上而下投照)、左乳 MLO(mediolateral oblique,内外斜位,45 度斜向投照)、右乳 CC、右乳 MLO。CC 位对乳腺内侧与中央区显示好,MLO 位覆盖范围更广、包含腋尾与胸大肌。胸大肌仅在 MLO 位可见,因此数据集中胸大肌轮廓标注也只出现在 MLO 图像上。
影像为 14-bit 灰度(16,384 级),像素间距 70 微米。这一空间分辨率显著高于常见胸部 X 线的数字化输出,也是微钙化(可小至 100-200 微米)能被可靠辨认的前提。数据集的 DICOM 文件已被预处理:套用了适配西门子设备的 VOI LUT(value of interest lookup table),以便在标准阅片环境下呈现合理对比度。
§3.2 按子集样本数
| 子集划分 | 例数 | 图像数 | 说明 |
|---|---|---|---|
| 双乳受累患者 | 90 | 360 | 每例 4 张(左右乳各 CC + MLO) |
| 乳房切除术后患者 | 25 | 50 | 每例 2 张(保留侧或重建侧的 2 个体位) |
| 合计 | 115 | 410 | 覆盖 CC 与 MLO 双体位 |
| 无任何发现的正常图像 | 不适用 | 约 67 | 社区复核结论,用于构成阴性样本 |
| 含标注病灶的图像 | 不适用 | 约 343 | 其中部分仅含钙化,无二值掩膜 |
| 含肿块的图像 | 不适用 | 约 107 | 约占全集 26.1% |
病灶类型分布(88 张含标注子集):肿块 53 例(60.2%)、钙化簇 26 例(29.5%)、结构扭曲 7 例(8.0%)、不对称 2 例(2.3%)。
BI-RADS 分布(88 张含标注子集):BI-RADS 2 共 13 例(14.8%)、3 类 22 例(25.0%)、4 类 40 例(45.5%)、5 类 9 例(10.2%)、6 类 4 例(4.5%)。
分布解读:病灶类型与 BI-RADS 双重不均。肿块与钙化簇合计占比接近 90%,而结构扭曲与不对称各自不足 10%。这意味着按病灶类型分层评估时,稀有类的置信区间会极宽;直接做四分类分割会导致模型几乎忽略扭曲与不对称类。
§3.3 格式明细
| 内容 | 格式 | 说明 |
|---|---|---|
| 原始影像 | DICOM(.dcm) | 14-bit 灰阶,含完整采集元数据(设备、体位、像素间距等) |
| 病灶轮廓标注 | XML | OsiriX 导出格式,含 NumberOfROIs、Area、Center、Name、轮廓点列表 |
| 二值掩膜 | PNG | 存放于 extras 文件夹,含钙化与肿块的 ground truth 掩膜 |
| 数据集说明 | 随数据集附带的说明文档,描述 XML 结构与字段含义 | |
| 元数据 | DICOM 标签 / XML 内嵌 | 年龄、家族史、ACR 密度、BI-RADS |
解析关键点:XML 中的轮廓点为图像像素坐标系下的点对,字段名常见为 point_px。而 Center 字段在绝大多数文件中恒为 0.0000 0.0000 0.000,这是一个已由社区反复确认的记录缺陷——不能依赖它做居中裁剪。正确做法是从轮廓点自行计算包围盒与外接圆心,或直接使用 extras 中的 PNG 掩膜。
§3.4 存储大小
| 内容 | 大小 | 说明 |
|---|---|---|
| 完整数据集(Kaggle 镜像) | 约 9.01 GB | 含 1619 个文件,DICOM + XML + PNG + PDF |
| 单张 DICOM(大图 3328 × 4084) | 约 20-25 MB | 14-bit 未压缩或轻压缩 |
| 单张 DICOM(小图 2560 × 3328) | 约 12-16 MB | 视乳房尺寸而定 |
| XML 标注文件 | 数 KB 至数十 KB | 取决于轮廓点数量 |
部署提示:9 GB 的原始体量对训练机器不算大,但解压为未压缩数组后会急剧膨胀。以 float32 存储 3328 × 4084 的单通道图像需约 54 MB,410 张即为约 22 GB;若在训练时整批加载并做多尺度增强,内存占用会进一步上升。建议预处理阶段将图像统一重采样为 512 × 512 或 1024 × 1024 后存为内存映射数组。
§3.5 标注方式
INbreast 采用纯人工专家标注,不含任何自动或弱监督成分。流程可分解为四步:
- 轮廓勾画:由一名乳腺影像专科医师在 OsiriX 上对每个发现逐点绘制闭合多边形。肿块、钙化、不对称、结构扭曲、胸大肌均绘制细致轮廓。
- 簇与毛刺的特殊处理:微钙化簇因单个钙化点太小,改用包围全部钙化点的椭圆标注;毛刺状肿块除致密区轮廓外,另加一个包住全部毛刺结构的椭圆,形成"双轮廓"。
- 独立验证:第二位专科医师对全部标注进行复核。两人意见不一致时,通过讨论达成共识后才定稿。
- 病理关联:对 BI-RADS 3、4、5、6 且实际执行了活检的病例,补录活检结果作为诊断金标准。
标注类型覆盖:7 类标签为 asymmetry、calcification、cluster(微钙化簇)、mass、distortion、spiculated region、pectoral muscle。其中 pectoral muscle 只出现在 MLO 视图,其作用是帮助分割算法剔除胸大肌区域,而非病理发现。
§3.6 标注者资质与一致性
| 维度 | 内容 |
|---|---|
| 标注者数量 | 2 名(1 名勾画 + 1 名验证) |
| 专业背景 | 乳腺影像领域专科医师 |
| 标注工具 | OsiriX 开源 PACS 工作站(Macintosh 平台) |
| 共识机制 | 存在分歧时讨论至达成共识后再定稿 |
| 一致性度量 | 未报告 Kappa / ICC 等定量指标 |
| 标注周期 | 2010 年 4 月至 2010 年 12 月(约 9 个月) |
| 标注规模 | 约 343 张含标注图像,覆盖 7 类标签 |
一致性讨论:作者在论文中明确指出,标注是主观、枯燥且极其耗时的任务,需要专科医师参与,这正是当时多数公开数据库缺乏精确轮廓的主要原因。作者也坦承本项目仅有两名专家参与,并计划未来引入更多专家持续改进标注质量。这一自述说明:INbreast 的轮廓质量在当时是领先的,但仍非"多标注者共识真值"级别。对分割任务而言,建议将 Dice 的绝对上限理解为高于 0.92 即已接近标注噪声水平,而非追求无限逼近 1.0。
§3.7 采集周期
| 维度 | 内容 |
|---|---|
| 影像采集 | 2008 年 8 月至 2010 年 7 月(约 24 个月) |
| 标注制作 | 2010 年 4 月至 2010 年 12 月(约 9 个月) |
| 论文接收 | 2011-09-26 |
| 论文在线发表 | 2011-11-14 |
| 期刊正式出版 | 2012-02(Academic Radiology 19(2)) |
时间跨度解读:采集周期长达两年,客观上带来了一定程度的设备状态漂移风险(探测器增益、球管老化等)。但由于缺少分层的时间戳记录与设备校准日志,这一漂移无法被量化,也无法在建模时显式校正。这是使用该数据集时一个无法消除的已知不确定性。
§3.8 地域覆盖
数据集来自葡萄牙波尔图单一大都市区,属于南欧高收入国家的城市临床人群。这一地域特征带来两个必须正视的限制:
其一,人群乳腺密度分布与东亚、南亚人群存在系统性差异。南欧女性中致密型乳腺比例相对较低,而亚洲女性致密型比例更高。由于致密型乳腺会显著影响钼靶敏感度,直接将在 INbreast 上训练的模型部署到亚洲人群会面临域偏移。
其二,设备型号单一。全部影像来自同一台 MammoNovation Siemens 系统。不同厂商的探测器响应曲线、后处理链与灰度映射差异,会让模型学到设备特征而非生物学特征。这解释了为何跨中心验证的准确率通常比同中心低十余个百分点。
§3.9 设备规格
| 参数 | 规格 |
|---|---|
| 设备型号 | MammoNovation Siemens 全视野数字乳腺摄影系统 |
| 探测器类型 | 非晶硒(amorphous selenium)固态平板探测器 |
| 像素间距 | 70 微米 |
| 灰度深度 | 14-bit(16,384 级) |
| 输出分辨率 | 3328 × 4084 像素 或 2560 × 3328 像素 |
| 投照体位 | CC(头尾位)、MLO(内外斜位) |
| 影像后处理 | 已套用适配西门子设备的 VOI LUT 以改善对比度显示 |
| 采集机构 | Centro Hospitalar de S. João 乳腺中心(波尔图) |
设备相关的建模提示:由于文件已套用厂商 VOI LUT,DICOM 中存储的像素值已经过灰度重映射。若研究者按标准 DICOM 流程再次应用窗宽窗位,会造成二次变换,导致对比度异常。正确做法是:先检查 DICOM 标签中的 VOI LUT Sequence 与 Window Center/Width,确认是否已被"烘焙"进像素数据,再决定是否需要额外变换。
§3.10 深度溯源链
| 层级 | 内容 |
|---|---|
| 原始数据产生 | CHSJ 乳腺中心常规临床检查,MammoNovation Siemens FFDM 系统 |
| 伦理授权 | 葡萄牙国家数据保护委员会 + 医院伦理委员会 |
| 影像导出 | 从 PACS 导出 DICOM,套用适配西门子的 VOI LUT |
| 标注制作 | OsiriX 工作站人工勾画(2010-04 至 2010-12),第二专家验证 |
| 打包发布 | 随论文公开,附 PDF 说明文档、XML 标注与 extras 掩膜 |
| 论文发表 | Moreira et al., 2012, Academic Radiology 19(2):236-248 |
| 后续分发 | 官方申请页失效后,社区经 Kaggle / Google Drive 等镜像承接 |
| 衍生版本 | Huang & Lin 2020 增强版(7,632 张,Zenodo,CC BY 4.0);Zhang 等 GAN 合成数据研究 |
溯源链薄弱环节:从"打包发布"到"后续分发"之间出现了官方托管的中断。原始申请页 medicalresearch.inescporto.pt 已失效,这意味着当前流通的所有副本本质上都是社区镜像的副本。版本一致性、文件完整性缺少官方校验手段。建议使用者自行记录镜像来源与文件哈希,以便复现实验时追溯。
§4 数据结构
§4.0 目录树
以下为数据集解压后的典型目录结构预览(Kaggle 镜像「INbreast 2012」的组织方式):
INbreast Release 1.0/
├── AllDICOMs/ # 全部 410 张 DICOM 原始影像
│ ├── 20586908_6c613a14b80a8591_MG_R_CC_ANON.dcm
│ ├── 20586908_6c613a14b80a8591_MG_L_CC_ANON.dcm
│ ├── 20586908_6c613a14b80a8591_MG_R_ML_ANON.dcm
│ ├── 20586908_6c613a14b80a8591_MG_L_ML_ANON.dcm
│ │ # 命名规则:患者匿名ID_检查哈希_模态_MG_侧别_R/L_体位_CC/ML_ANON
│ ├── 20586934_..._MG_R_CC_ANON.dcm
│ └── ... # 共 410 个 .dcm 文件
├── AllXML/ # 病灶轮廓标注(与 DICOM 一一对应)
│ ├── 20586908_6c613a14b80a8591_MG_R_CC_ANON.xml
│ ├── 20586908_6c613a14b80a8591_MG_L_CC_ANON.xml
│ └── ... # 共 410 个 .xml 文件
├── Extras/ # 附加掩膜与元数据
│ ├── Masks/ # 二值掩膜 PNG(部分图像有)
│ │ ├── 20586908_6c613a14b80a8591_MG_R_CC_ANON_Mask.png
│ │ └── ...
│ ├── meta.csv # 逐图像元数据汇总(BI-RADS、ACR 密度等)
│ ├── ROI_Information.csv # 病灶 ROI 汇总表
│ └── INbreast.pdf # 数据集官方说明文档
└── README # 镜像说明
命名解析要点:文件名中的侧别字段为 R / L,体位字段为 CC / ML(注意 MLO 在文件名中常简写为 ML,与内容中的 MLO 等价)。患者匿名 ID 是同一患者多张图像的唯一关联键,这一点对防止数据泄漏至关重要——划分训练/测试集时必须按患者 ID 分组,不能让同一患者的 CC 与 MLO 图像分处两侧。
关于 XML 与 DICOM 的配对:XML 文件名与 DICOM 文件名主体部分一致,仅扩展名不同。因此配对逻辑可简化为"同主名替换扩展名"。但要留意部分镜像中 XML 文件夹命名可能不同(如 AllXML、xml、Annotations),代码中应做兼容。
§4.1 DAIMS 字段字典
表 1:mammogram(每行一张 DICOM 影像,主键 ImageID)
| 字段名 | 类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
| ImageID | string | 影像唯一标识,取自 DICOM 文件名主体 | 20586908_6c613a14b80a8591_MG_R_CC_ANON |
主键、配对 XML 与掩膜 | 无 | 无缺失 | 410 个唯一值 |
| PatientID | string | 匿名患者标识,文件名的首段数字串 | 20586908 |
患者级划分的唯一依据 | 无 | 无缺失 | 115 个唯一值 |
| ViewPosition | string | 投照体位 | CC / ML |
多视图建模、视图分层评估 | 无 | 无缺失 | CC、MLO(文件名为 ML) |
| ImageLaterality | string | 侧别 | R / L |
左右对比分析、侧别偏倚检查 | 无 | 无缺失 | R、L |
| Columns | integer | 图像宽度(像素) | 3328 |
重采样目标尺寸设定 | 无 | 无缺失 | 2560、3328 |
| Rows | integer | 图像高度(像素) | 4084 |
重采样目标尺寸设定 | 无 | 无缺失 | 3328、4084 |
| PixelSpacing | float | 像素间距(毫米) | 0.07 |
病灶物理尺寸换算(70 微米) | 由设备标定,极小 | 无缺失 | 0.07 |
| BitsStored | integer | 存储位深 | 14 |
灰度归一化范围设定 | 无 | 无缺失 | 14 |
| PatientAge | integer | 采集时年龄 | 58 |
风险建模的协变量 | 以年为单位,粒度粗 | 少数记录缺失 | 依 DICOM 记录 |
| ACRDensity | integer | ACR 乳腺密度分级 | 2 |
密度分层评估、密度预测任务 | 阅片者主观判读 | 部分缺失 | 1-4(对应 a-d) |
| BIRADS | integer | BI-RADS 评估类别 | 4 |
风险分级建模、多分类任务 | 阅片者主观判读 | 部分缺失 | 2-6 |
| FamilyHistory | string | 乳腺癌家族史 | Yes / No |
风险因素建模 | 患者自述,回忆偏倚 | 部分缺失 | 二值或多值 |
| BiopsyResult | string | 活检病理结果 | Malignant / Benign |
诊断金标准标签 | 病理判读,误差低 | 仅 BI-RADS 3-6 且实际活检者存在 | 恶性、良性 |
表 2:roi(每行一个标注病灶,主键 ROIID)
| 字段名 | 类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
| ImageID | string | 所属影像 | 20586908_..._MG_R_CC_ANON |
外键关联 mammogram | 无 | 无缺失 | 410 个可能值 |
| ROIID | integer | 该影像内 ROI 序号 | 1 |
多病灶场景的实例区分 | 无 | 无缺失 | 1 至 NumberOfROIs |
| NumberOfROIs | integer | 该影像的 ROI 总数 | 2 |
多病灶任务的目标数 | 无 | 无 ROI 时为 0 | 0 及以上 |
| FindingName | string | 发现类型 | mass / calcification |
病灶类型分类、多任务学习 | 阅片者判读,边界模糊 | 无 ROI 时无此行 | 7 类标签 |
| Area | float | ROI 面积 | 15234.0 |
病灶大小特征、面积回归 | 受轮廓精度影响 | 无缺失 | 正实数 |
| Center | string | ROI 中心坐标 | 0.0000 0.0000 0.000 |
不可用(记录缺陷,恒为零) | 记录错误,非真实值 | 实际不可用 | 全为 0 |
| ContourPx | string | 轮廓点像素坐标列表 | point_px 节点下的点对序列 |
生成二值掩膜的唯一可靠来源 | 双专家共识误差 | 无缺失 | 闭合多边形坐标 |
字段字典的使用警示:roi/Center 这一行是本数据集最著名的数据陷阱。绝大多数 XML 文件中该字段被写成 0.0000 0.0000 0.000。任何直接读取 Center 做 ROI 裁剪的代码都会取到整幅影像的左上角区域,产生看似"能跑通"但完全错误的训练数据。正确的 ROI 裁剪必须基于 ContourPx 自行计算包围盒。
§4.2 标签分布
| 标签字段 | 类别数 | 分布概况 | 主要问题 |
|---|---|---|---|
| FindingName(病灶类型) | 7 | 肿块与钙化簇占含标注子集约 90%;结构扭曲 8.0%、不对称 2.3% | 严重长尾,稀有类样本量不足 |
| BIRADS | 5(2-6) | 4 类占 45.5%、3 类占 25.0%、2 类占 14.8%、5 类占 10.2%、6 类占 4.5% | 中间类集中,两端稀疏 |
| ACRDensity | 4(1-4) | 未在公开文献中给出全集的完整分布 | 密度分布未公开,分层评估受限 |
| 有无病灶(二分类) | 2 | 约 67 张无任何发现(约 16%)、约 343 张含标注(约 84%) | 若把"含钙化无肿块"归为阳性的口径不同,比例会漂移 |
| BiopsyResult | 2 | 仅部分病例有 | 标签完全性随疾病严重度共变 |
分布的核心风险:病灶类型的长尾与 BI-RADS 的中间类聚集叠加,意味着任何多分类任务都会在稀有类上表现不稳。文献中报告的"INbreast 上 99%+ 准确率"几乎全部来自二分类(良恶性或肿块/非肿块),而非四类病灶分类或多类 BI-RADS 分级。跨文献比较数值前,务必先确认其任务定义与类别合并规则。
§4.3 关键统计
| 统计量 | 数值 | 来源 |
|---|---|---|
| 患者数 | 115 | 原始论文 |
| 图像总数 | 410 | 原始论文 |
| 每例图像数 | 4(双乳受累)或 2(乳房切除术后) | 原始论文 |
| 分辨率 | 3328 × 4084 或 2560 × 3328 | 数据集说明 |
| 像素间距 | 70 微米 | 数据集说明 |
| 位深 | 14-bit(16,384 灰阶) | 数据集说明 |
| 无发现图像 | 约 67 张 | 社区复核 |
| 含肿块图像 | 约 107 张(26.1%) | 学术论文统计 |
| 含标注图像 | 约 343 张 | 社区复核 |
| 完整包体量 | 约 9.01 GB / 1619 文件 | Kaggle 镜像元数据 |
§4.4 数据层级
INbreast 的层级结构为四层,正确理解层级是防止数据泄漏的基础:
患者(Patient,115 个)
└── 检查/侧别(Breast / Exam,左右乳分别计数)
└── 体位(View:CC、MLO)
└── 影像(Image,410 张 DICOM)
└── 病灶(ROI,0 至多个)
└── 轮廓点(Contour points,若干像素坐标)
层级关系的建模含义:
- 患者层是划分的最小单位。同一患者的左右乳、CC 与 MLO 图像共享大量组织学特征(腺体分布、密度、病灶性质),把它们分散到训练集与测试集会让模型"提前见过"该患者,造成严重的乐观偏差。
- 病灶层不是独立的。同一张影像可能包含多个 ROI(XML 中的 NumberOfROIs 大于 1),这些 ROI 共享同一背景组织。若按 ROI 而非按影像划分,同一影像的不同 ROI 会跨越划分边界,同样构成泄漏。
- 轮廓点层不是独立样本。一个 ROI 的轮廓点数可达数百,它们是同一个几何对象的不同顶点,绝不能视为多样本。
§4.5 缺失值与信息性缺失编码
| 字段 | 缺失情况 | 缺失性质 | 建议处理方式 |
|---|---|---|---|
| BiopsyResult | BI-RADS 1-2 及未活检病例无值 | 信息性缺失:无活检结果意味着影像评估为低风险,这本身就是信息 | 不要简单删除行;应保留为独立类别"未活检",或明确以 BI-RADS 作为替代标签 |
| ACRDensity | 部分图像未记录 | 随机缺失为主 | 可作为辅助任务;缺失样本从密度分层评估中排除 |
| BIRADS | 少数记录缺失 | 部分与图像无发现的记录方式有关 | 缺失样本不进入 BI-RADS 任务,但可用于分割 |
| FamilyHistory | 部分缺失 | 混合性质:既可能是未询问,也可能是阴性未记录 | 建模时作为弱特征使用,或整体弃用以避免引入偏差 |
| Center(roi 表) | 形式上全有值,但实际全为 0 | 记录缺陷,非真实缺失 | 完全弃用该字段,改由 ContourPx 计算 |
| 二值掩膜(extras) | 仅含钙化、无肿块的图像常缺掩膜 | 缺失与病灶类型强相关 | 分割任务应基于 XML 轮廓自行生成掩膜,而非依赖 extras |
信息性缺失的关键治理原则:BiopsyResult 的缺失绝不能按普通缺失值处理。在 INbreast 中,“没有活检结果"等价于"影像评估认为不需要活检”,即 BI-RADS 1-2 类的低风险判断。如果把有活检结果的病例作为训练集、无结果的丢弃,就等于只保留了中高风险病例,模型会失去对低风险样本的判别能力,在真实筛查场景中大面积误报。正确做法是把缺失编码为显式类别,或用 BI-RADS 作为主标签、活检结果为辅助确认信号。
§5 划分与使用建议
§5.1 官方划分
INbreast 未提供官方训练/验证/测试划分。原始论文与随附说明文档均未给出划分文件或推荐比例。这是其 AI 就绪度的主要扣分项:所有文献报告的划分都是各自实现的,比例、随机种子与分组策略互不相同,数值不可直接横向比较。这也解释了同一数据集上的"准确率"为何能从 78% 跨度到 99.2%——相当一部分差异来自划分方式而非模型能力,尤其是按图像随机划分的工作会因患者级泄漏而系统性偏高。
§5.2 社区惯例划分
| 划分方式 | 典型比例 | 出现场景 | 评价 |
|---|---|---|---|
| 按图像随机划分 | 70/15/15 或 80/20 | 早期文献、快速原型 | ❌ 存在患者级泄漏,指标虚高 |
| 按患者分组划分 | 70/15/15 | 较严谨的研究 | ✅ 推荐基线做法 |
| 按患者分组 + 分层 | 60/20/20 | 需要病例分层的研究 | ✅ 更适合稀有类评估 |
| 交叉验证 | 5 折或 10 折(患者级分组) | 小样本场景的标准做法 | ✅ 强烈推荐 |
| 独立测试集 | 整集作测试 | 跨中心验证类研究 | ✅ 作为外部验证集时的正确用法 |
推荐做法:鉴于 115 例的规模,单次划分的测试集仅约 17-23 例,性能估计的置信区间极宽。建议采用患者级分组的 5 折交叉验证,报告各折均值与标准差,而非单次划分的单一数值。若必须与外文文献对比,应明确说明划分方式并指出可比性限制。
§5.3 泄漏风险(重点)
INbreast 的泄漏风险显著高于一般影像数据集,原因有三层:
第一层:同一患者多视图。 90 例双乳受累患者每例提供 4 张图像(左/右乳 × CC/MLO),不同视图共享腺体密度、组织纹理与病灶性质。若按图像随机划分,约 75% 的概率同一患者的多张图像会分处训练集与测试集,模型可通过记忆该患者的整体组织特征"猜中"测试样本。
第二层:同一病灶多视图。 一个病灶常在 CC 与 MLO 同时可见。即便按乳腺划分,若同一病灶的两个视图落到不同集合,模型在测试时看到的其实是训练时见过的同一病灶的另一角度。
第三层:增强版数据集。 社区流传的 7,632 张增强版由 410 张原图经几何变换与强度扰动生成。若未在增强前完成划分,模型会在测试集上遇到训练样本的变换版本,性能虚高至接近 100%。
防泄漏三条硬规则:① 划分必须发生在增强之前,且以患者 ID 为分组键;② 划分单位是患者,绝不能用图像或 ROI;③ 报告实验时必须写明分区键,并给出训练/测试的患者数而非仅图像数。
§5.4 划分策略建议
针对不同目标,推荐的划分策略如下:
| 目标 | 推荐策略 | 理由 |
|---|---|---|
| 方法论文(追求可比性) | 患者级分组 5 折交叉验证,固定随机种子并公开 | 小样本下减少划分偶然性,便于他人复现 |
| 分割任务 | 患者级分组,按病灶类型分层抽取测试集 | 确保测试集中含全部病灶类型,避免稀有类落空 |
| 良恶性分类 | 患者级分组,按病理结果分层 | 保证训练/测试的良恶性比例接近 |
| BI-RADS 分级 | 患者级分组,合并稀有类别后再分层 | 6 类仅 4 例,独立评估无统计意义 |
| 外部验证 | 整集作测试集,不参与任何训练 | INbreast 的价值主要在此 |
分层抽样的实操提醒:结构扭曲(7 例)与不对称(2 例)极少,按病灶类型分层时这两类在单折测试集中可能只有 1-2 例,报告该类指标意义有限。建议改为报告"含稀有类的样本平均表现",或明确声明这些类别仅参与定性分析。
§5.5 交叉验证建议
对 115 例规模的数据集,交叉验证不是可选项而是必需品:
- 折数选择:5 折是平衡(每折约 23 例)与稳定性的合理选择;10 折会使每折仅约 11 例,方差反而增大。
- 分组键:
GroupKFold或StratifiedGroupKFold(scikit-learn),group 参数传入 PatientID。 - 重复次数:做 3 次不同随机种子的 5 折,报告跨重复的均值±标准差以反映划分敏感性。
- 增强位置:所有增强必须在每折训练集内部进行;验证/测试集只做确定的预处理(重采样、归一化),不做随机变换。
- 指标报告:同时报告均值、标准差与折间极差(max-min),后者能直观暴露划分敏感性。
§5.6 外部验证建议
INbreast 作为外部验证集的价值远大于作为训练集。推荐的使用组合:
| 训练集 | 验证集 | 预期性能落差 | 说明 |
|---|---|---|---|
| CBIS-DDSM(胶片数字化) | INbreast(数字) | 显著下落 | 模态差异(SFM → FFDM)叠加人群差异 |
| VinDr-Mammo(越南人群) | INbreast(葡萄牙人群) | 中度下落 | 人群差异为主,模态一致(均为 FFDM) |
| 自建数据集 | INbreast | 依训练集规模而定 | 作为第三方中立测试集最有说服力 |
报告规范建议:在 INbreast 上做外部验证时,应同时报告 (a) 内部测试集性能、(b) INbreast 上的性能、© 两者的绝对与相对落差——只报绝对值而不报落差,读者无法判断泛化能力。此外应说明是否对 INbreast 做过任何超参数调整;若做过,它就不再是严格的外部验证集,而应称为"验证集"。
§6 AI 就绪指南
§6.0 云端快速启动
若不便本地下载 9 GB 数据,可先用 Kaggle 在线环境做轻量验证。Kaggle 上存在多个 INbreast 镜像(如 tommyngx/inbreast2012、ramanathansp20/inbreast-dataset),挂载为输入数据集后即可直接读取:挂载路径预期为 /kaggle/input/inbreast2012/INbreast Release 1.0/{AllDICOMs,AllXML},用 glob 统计应分别得到 410 个 .dcm 与 410 个 .xml。
云端环境的限制:Kaggle 免费环境的磁盘与内存有限,无法一次性把 410 张原始分辨率的 14-bit 图像全部解压进内存(约 22 GB)。建议云端只做数据探查与小批量验证,正式训练放在本地或付费算力上。
§6.1 快速上手
以下代码假设你把数据集解压到本地 data_root 并保持原始目录结构。拼接关系为 data_root / "INbreast Release 1.0" / "AllDICOMs" / <ImageID>.dcm;若镜像目录名不同,只需修改 INBREAST_SUBDIR 常量。
data_root/INbreast Release 1.0/ # 例如 /data/inbreast
├── AllDICOMs/ 410 个 .dcm
├── AllXML/ 410 个 .xml(与 DICOM 同主名)
└── Extras/ Masks/(部分图像的二值掩膜 PNG)+ meta.csv(元数据汇总)
最小可用子集:若只想快速跑通流程,建议先取含肿块的约 107 张图像(论文口径 26.1%)——这部分影像既有 XML 轮廓又有 extras 掩膜,最适合验证分割与分类流水线是否正确。
# 环境依赖(建议 Python 3.9+):pip install pydicom numpy scikit-learn torch torchvision opencv-python
import os
import glob
import xml.etree.ElementTree as ET
from collections import Counter
DATA_ROOT = "/data/inbreast"
BASE = os.path.join(DATA_ROOT, "INbreast Release 1.0")
XML_DIR = os.path.join(BASE, "AllXML")
def parse_roi_types(xml_path: str) -> list:
"""从 XML 提取该影像所有 ROI 的发现类型(预处理与取图代码见 §6.3)。"""
return [n.text.strip().lower()
for roi in ET.parse(xml_path).getroot().iter("roi")
for n in [roi.find(".//Name")] if n is not None and n.text]
# 快速统计:查看全集的病灶类型分布
all_types = Counter()
for xml_path in sorted(glob.glob(os.path.join(XML_DIR, "*.xml"))):
for t in parse_roi_types(xml_path):
all_types[t] += 1
print("发现类型分布(按 ROI 计数):")
for k, v in all_types.most_common():
print(f" {k}: {v}")
首跑验证清单:DICOM 与 XML 数量均应为 410,发现类型中应出现 mass / calcification / asymmetry / distortion 等标签。若 DICOM 数量不是 410,说明镜像不完整或被额外增强了。
§6.2 数据获取
| 渠道 | 类型 | 大小 | 许可标注 | 获取方式 |
|---|---|---|---|---|
原始官方页 medicalresearch.inescporto.pt |
官方 | 约 9 GB | 未明确指定 | ❌ 页面已失效 |
Kaggle tommyngx/inbreast2012 |
社区镜像 | 约 9.01 GB / 1619 文件 | CC BY-NC 4.0 | 注册 Kaggle 账号后直接下载 |
Kaggle ramanathansp20/inbreast-dataset |
社区镜像 | 依页面 | 未明确 | 注册 Kaggle 账号后直接下载 |
| Google Drive 社区分享链接 | 社区镜像 | 依分享者 | 未明确 | 直接下载,需自行核验完整性 |
Zenodo 10.5281/zenodo.14769221 |
增强衍生版 | 76.7 MB(仅增强图) | CC BY 4.0 | ⚠️ 非官方原始数据,含人工增强样本 |
获取流程(Kaggle 渠道):
# 方式一:网页下载 —— 登录 Kaggle,点击 Download 下载 inbreast2012.zip(约 9.01 GB)
# 方式二:Kaggle CLI(需先配置 API Token 到 ~/.kaggle/kaggle.json)
pip install kaggle && kaggle datasets download -d tommyngx/inbreast2012 -p /data/inbreast
cd /data/inbreast && unzip -q inbreast2012.zip
find . -name "*.dcm" | wc -l # 完整性核验,预期 410
find . -name "*.xml" | wc -l # 预期 410
许可合规提示:原始作者未发布明确的具体许可条款,仅声明面向研究者与商业厂商免费开放;但 Kaggle 镜像页面标注为 CC BY-NC 4.0(禁止商业使用),两个口径存在冲突。用于商业用途前,建议直接联系原始作者团队(INESC TEC)取得书面确认,并保留沟通记录。
§6.3 预处理全流程
以下 Pipeline 按"格式转换 → 清洗 → 标准化 → 增强"四步组织,可直接运行。
import os
import xml.etree.ElementTree as ET
import numpy as np
import pydicom
import cv2
# INbreast 有两种原始分辨率(3328x4084、2560x3328),必须统一重采样
TARGET_SIZE = (1024, 1024) # (宽, 高),兼顾微钙化可见性与显存
def dicom_to_array(dcm_path: str, target_size=TARGET_SIZE) -> np.ndarray:
"""步骤 1 格式转换:读取 DICOM,百分位裁剪后归一化并重采样。返回 float32 [0,1]。
注意:INbreast 的 DICOM 已套用西门子 VOI LUT,此处不得再做窗宽窗位变换。
"""
arr = pydicom.dcmread(dcm_path).pixel_array.astype(np.float32)
lo, hi = np.percentile(arr, [0.5, 99.5]) # 裁剪极值,避免压缩动态范围
arr = (np.clip(arr, lo, hi) - lo) / max(hi - lo, 1e-6)
# 面积插值对降采样更友好,能保留钙化的平均强度
return cv2.resize(arr, target_size, interpolation=cv2.INTER_AREA).astype(np.float32)
def xml_to_mask(xml_path: str, shape=(1024, 1024),
orig_shape=None, findings=None) -> np.ndarray:
"""步骤 2 清洗:从 XML 轮廓点生成二值掩膜。
关键:不要读取 XML 的 Center 字段(恒为 0),必须从 point_px 自算多边形。
orig_shape: 原始 DICOM 尺寸 (H, W),用于坐标缩放;findings: 需保留的发现类型集合。
"""
H, W = shape
mask = np.zeros((H, W), dtype=np.uint8)
sy = H / orig_shape[0] if orig_shape else 1.0
sx = W / orig_shape[1] if orig_shape else 1.0
for roi in ET.parse(xml_path).getroot().iter("roi"):
name_el = roi.find(".//Name")
ftype = name_el.text.strip().lower() if name_el is not None else ""
if findings is not None and ftype not in findings:
continue
pts = []
for tag in ("point_px", "point", "contour"): # 不同镜像标签名可能不同
for p in roi.iter(tag):
parts = [t for t in (p.text or "").strip().strip("()").replace(",", " ").split() if t]
if len(parts) >= 2:
try:
pts.append([float(parts[0]) * sx, float(parts[1]) * sy])
except ValueError:
continue
if pts:
break
if len(pts) >= 3:
cv2.fillPoly(mask, [np.array(pts, dtype=np.int32)], 1)
return mask
def crop_breast_region(arr, bg_quantile: float = 0.02) -> np.ndarray:
"""步骤 3 标准化:裁掉四周近零背景(乳腺钼靶图四周多为近黑背景,裁剪后可减少
随机裁剪落到纯背景的概率,并缩小两种原生分辨率之间的长宽比差异)。"""
ys, xs = np.where(arr > max(bg_quantile, float(arr.mean()) * 0.05))
return arr if len(ys) == 0 else arr[ys.min():ys.max() + 1, xs.min():xs.max() + 1]
def augment_pair(img: np.ndarray, mask: np.ndarray, rng: np.random.Generator):
"""步骤 4 增强:对图像与掩膜施加一致的几何变换,仅限训练集内部且须在划分之后。
安全:水平翻转(左右乳互换解剖学成立)、±10 度旋转、强度微扰。
危险:垂直翻转(解剖学不合理)、强弹性形变(扭曲钙化形态)。
"""
if rng.random() < 0.5: # 水平翻转须同步翻转掩膜
img = np.ascontiguousarray(img[:, ::-1])
mask = np.ascontiguousarray(mask[:, ::-1])
if rng.random() < 0.5: # 小角度旋转
h, w = img.shape
M = cv2.getRotationMatrix2D((w / 2, h / 2), rng.uniform(-10, 10), 1.0)
img = cv2.warpAffine(img, M, (w, h), flags=cv2.INTER_LINEAR)
mask = cv2.warpAffine(mask, M, (w, h), flags=cv2.INTER_NEAREST)
if rng.random() < 0.5: # 强度微扰仅作用于图像
img = np.clip(img * rng.uniform(0.9, 1.1) + rng.uniform(-0.05, 0.05), 0.0, 1.0)
return img, mask
预处理的关键取舍:重采样目标尺寸没有唯一正确答案。512 × 512 显著降低显存占用但会丢失微钙化细节(单个钙化点可能小于 1 像素);2048 × 2048 保留细节但显存开销大。分割任务推荐 1024 × 1024,以肿块为主的分类任务 512 × 512 通常已足够。
§6.4 PyTorch DataLoader
以下为完整可运行的 Dataset 与 DataLoader 实现,包含患者级分组划分逻辑。
# 承接 §6.3 的 dicom_to_array / xml_to_mask / augment_pair;下为增量依赖
from torch.utils.data import Dataset, DataLoader
from sklearn.model_selection import GroupKFold
class INbreastDataset(Dataset):
"""INbreast 乳腺摄影数据集。样本 ID 形如 20586908_6c613a14b80a8591_MG_R_CC_ANON,
首段 20586908 为匿名患者 ID(也是划分分组的依据)。目录结构见 §6.1。
"""
def __init__(self, data_root: str, image_ids: list, mask_findings=("mass",),
target_size=(1024, 1024), train: bool = False):
self.dcm_dir = os.path.join(data_root, "INbreast Release 1.0", "AllDICOMs")
self.xml_dir = os.path.join(data_root, "INbreast Release 1.0", "AllXML")
self.image_ids = list(image_ids)
self.mask_findings = set(mask_findings)
self.target_size = target_size
self.train = train
self._rng = np.random.default_rng(0)
def __len__(self):
return len(self.image_ids)
def __getitem__(self, idx: int):
image_id = self.image_ids[idx]
dcm_path = os.path.join(self.dcm_dir, image_id + ".dcm")
img = dicom_to_array(dcm_path, self.target_size) # §6.3 步骤 1
meta = pydicom.dcmread(dcm_path, stop_before_pixels=True)
xml_path = os.path.join(self.xml_dir, image_id + ".xml")
if os.path.exists(xml_path): # §6.3 步骤 2
mask = xml_to_mask(xml_path, shape=(self.target_size[1], self.target_size[0]),
orig_shape=(int(meta.Rows), int(meta.Columns)),
findings=self.mask_findings)
else:
mask = np.zeros((self.target_size[1], self.target_size[0]), dtype=np.uint8)
if self.train: # §6.3 步骤 4
img, mask = augment_pair(img, mask.astype(np.float32), self._rng)
# 转为张量:(H, W) -> (1, H, W)
return {"image": torch.from_numpy(img).unsqueeze(0),
"mask": torch.from_numpy(mask.astype(np.float32)).unsqueeze(0),
"image_id": image_id}
def build_patient_grouped_folds(data_root: str, n_splits: int = 5):
"""按患者分组构造交叉验证折,彻底避免患者级泄漏。分组键为样本 ID 首段患者号。"""
ids = sorted(os.path.splitext(os.path.basename(p))[0] for p in
glob.glob(os.path.join(data_root, "INbreast Release 1.0", "AllDICOMs", "*.dcm")))
groups = np.array([i.split("_")[0] for i in ids])
return [([ids[i] for i in tr], [ids[i] for i in va])
for tr, va in GroupKFold(n_splits=n_splits).split(ids, groups=groups)]
if __name__ == "__main__":
DATA_ROOT = "/data/inbreast"
train_ids, val_ids = build_patient_grouped_folds(DATA_ROOT)[0]
tr_pat, va_pat = ({i.split("_")[0] for i in ids} for ids in (train_ids, val_ids))
assert not (tr_pat & va_pat), "检测到患者级泄漏!" # 泄漏自检
print(f"训练 {len(train_ids)} 张 / {len(tr_pat)} 例;验证 {len(val_ids)} 张 / {len(va_pat)} 例")
cfg = dict(batch_size=4, num_workers=4, pin_memory=True)
train_loader = DataLoader(INbreastDataset(DATA_ROOT, train_ids, train=True),
shuffle=True, drop_last=True, **cfg)
val_loader = DataLoader(INbreastDataset(DATA_ROOT, val_ids), shuffle=False, **cfg)
batch = next(iter(train_loader))
print("图像张量:", batch["image"].shape, "掩膜张量:", batch["mask"].shape) # (4,1,1024,1024)
批大小与分辨率的关系:在 1024 × 1024 单通道输入下,batch size 4 约需 6-8 GB 显存(取决于模型复杂度);512 × 512 时可将 batch size 提升到 16。分割任务通常需要较高分辨率来保证边界精度,建议优先缩小 batch 而非分辨率。
§6.5 坑点
⚠️ 坑点 1:XML 的 Center 字段恒为零,直接使用会静默产生错误样本(分类:预处理陷阱)
问题:每个 ROI 都带
Center字段,按设计应记录病灶中心坐标,但绝大多数文件中其值为0.0000 0.0000 0.000。若代码按预期语义读取 Center 并据此裁剪 ROI,会取到整幅影像左上角的一小块。
症状:模型能正常训练、损失能下降,但性能异常差——“病灶 ROI"里实际是背景。若裁剪框与病灶尺寸相当,图像看起来仍像正常乳腺组织,肉眼不易发现。含肿块子集上的分割 Dice 长期卡在 0.2 以下。
解决:① 完全不使用 Center 字段,从轮廓点自算轴对齐包围盒(min/max of x,y)并外扩 10-20% 作为 ROI。② 用cv2.minEnclosingCircle求最小外接圆,比包围盒更贴合病灶;校验时比较"XML 轮廓生成的掩膜"与"extras 中的 PNG 掩膜”,差异应在 1-2 像素内。③ 跳过 ROI 裁剪直接做全图分割,U-Net / nnU-Net / Swin-UNETR 已能在全图稳定工作。
参考:社区讨论确认 Center 恒为零 — https://faqs.tips/post/how-do-i-use-contour-points-in-inbreast-database.html
⚠️ 坑点 2:按图像随机划分造成患者级泄漏,指标虚高(分类:数据泄漏)
问题:410 张图像来自 115 例患者,双乳受累者每人贡献 4 张(左右乳 × CC/MLO)。用
train_test_split按图像随机划分时,同一患者的图像会大量跨越划分边界。同患者的腺体纹理、密度与病灶高度相似,模型实际上是在测试集上"认出"了训练时见过的患者。
症状:验证准确率可达 98-99%,但换到 CBIS-DDSM 或 VinDr-Mammo 做外部验证时骤降到 60-70%;或同一批数据换随机种子重跑,测试指标波动远超预期(标准差 5-8 个百分点)。
解决:① 从文件名首段(如20586908)提取患者 ID,用GroupShuffleSplit/GroupKFold分组划分,划分后断言两组患者集合交集为空。② 改用StratifiedGroupKFold,在患者不重叠前提下让各折的良恶性与病灶类型比例接近全集分布。③ 把泄漏检测纳入流水线:每轮训练前用预训练编码器提取特征并算跨集余弦相似度,出现异常高相似度图像对即告警,可捕获患者 ID 提取错误等隐性泄漏。
参考:方法学提醒见 nnU-Net 乳腺分割研究 — https://matematika.pmf.uns.ac.rs/wp-content/uploads/2025/11/Segmentation_of_Breast_Lesions_in_Mammography_Images_using_nnUnet_architecture_Master_Thesis-Beti-Plackov.pdf
⚠️ 坑点 3:使用增强版(7,632 张)作为评测集导致指标接近虚高(分类:数据泄漏)
问题:社区流传的"INbreast 7,632 张"版本由 410 张原图经激进几何与强度增强生成(Huang & Lin, 2020)并发布于 Zenodo。若对整份增强集按图像随机划分,同一原图的多个变体会同时进入训练与测试集,模型在测试时看到的只是训练样本的旋转/翻转版本。
症状:准确率与 AUC 飙升至 0.99 以上甚至 1.00,且不同模型之间差异消失——所有方法都触及天花板,排行榜失去区分度,这类结果在跨中心验证时会崩塌。
解决:① 评测一律使用官方原始 410 张,增强只用于训练集扩充;靠文件数量区分(410 为原始,7,632 为增强版)。② 若确实需要增强,先在划分之前保留原图 ID 映射,按患者分组划出原始训练/测试集,再仅对训练集做增强,测试集永远保持原始形态。③ 对 GAN/扩散模型等生成式增强同样适用"先划分后生成"原则,合成数据只能补充训练集,并应在论文中明确报告合成样本数量及其占比。
参考:Huang 等 2020 年增强工作记录于 Scientific Data 综述 — https://www.nature.com/articles/s41597-023-02430-6
⚠️ 坑点 4:DICOM 已套用 VOI LUT,重复变换导致对比度异常(分类:预处理陷阱)
问题:INbreast 的 DICOM 在导出时已套用适配西门子设备的 VOI LUT 以改善阅片对比度,像素值已被重映射。若再走一遍标准窗宽窗位流程(
apply_voi_lut或手动 WindowCenter/WindowWidth 计算),会造成二次映射。
症状:图像整体过曝或过暗,腺体内部纹理消失、只剩一片灰白;或背景出现明显截断,大面积纯黑/纯白,微钙化点因对比度压缩完全不可见。肉眼可见,但常被误判为"数据质量问题"而非预处理错误。
解决:① 直接读取ds.pixel_array后做百分位裁剪 + 线性归一化,不调用任何窗宽窗位函数——VOI LUT 已给出合理的显示区间。② 先检查ds.VOILUTSequence与ds.WindowCenter/ds.WindowWidth,判断 LUT 是否已"烘焙"进像素数据;若直方图已呈自然分布(而非集中在很窄范围),说明 LUT 已应用,不应重复处理。③ 采用基于百分位的自适应归一化,或在训练时加入随机强度扰动提升对灰度映射差异的鲁棒性,这对跨厂商 FFDM 泛化尤为重要。
参考:论文说明 DICOM 已被修改以适配 VOI LUT — https://oulurepo.oulu.fi/bitstream/10024/19942/1/nbnfioulu-202203171401.pdf
⚠️ 坑点 5:类别极度不平衡导致模型在稀有类上塌陷(分类:偏倚陷阱)
问题:410 张中约 67 张无任何发现,含肿块者仅约 107 张(26.1%)。病灶类型层面更极端:肿块占含标注子集 60.2%、钙化簇 29.5%,而结构扭曲仅 8.0%、不对称仅 2.3%。BI-RADS 分布同样倾斜,4 类占 45.5%、6 类仅 4.5%。用标准交叉熵训练四类病灶分类器,模型会几乎完全忽略扭曲与不对称。
症状:整体准确率看似尚可(模型总猜"肿块"),但混淆矩阵显示结构扭曲与不对称的召回率接近 0;宏平均 F1 远低于准确率,差距可达 0.4 以上。分割任务中稀有类病灶的 Dice 长期低于 0.3。
解决:① 损失函数加类别权重(nn.CrossEntropyLoss(weight=...),权重与类频率成反比)或用 Focal Loss;分割用 Dice Loss + 交叉熵组合,Dice Loss 天然对小目标更敏感。② 把多分类降级为二分类——BI-RADS 3 以下合并为"低风险"、4 以上为"高风险",病灶类型合并为"肿块类"与"钙化类";INbreast 的规模更适合支撑二分类。③ 采用长尾学习策略:解耦训练(先训特征提取器,再对分类头做类别平衡微调)、logit adjustment,或对稀有类重采样 + 强增强,并务必报告每类指标(含样本数)而非只报整体准确率。
参考:分布数据见病灶类型与 BI-RADS 统计 — https://matematika.pmf.uns.ac.rs/wp-content/uploads/2025/11/Segmentation_of_Breast_Lesions_in_Mammography_Images_using_nnUnet_architecture_Master_Thesis-Beti-Plackov.pdf
⚠️ 坑点 6:部分含标注图像缺二值掩膜,直接依赖 extras 会导致样本静默减少(分类:工程陷阱)
问题:
extras文件夹提供二值掩膜 PNG,但并非所有含 ROI 的图像都有对应掩膜。社区已确认:343 张含标注图像中部分没有掩膜,缺失主要集中在"仅有钙化、无肿块"的图像;此外不同镜像的掩膜目录名与文件命名规则可能不一致。
症状:加载器读不到掩膜时若静默返回全零掩膜,训练会被大量假阴性样本污染——模型学到"什么都不是病灶";若直接跳过缺失样本,训练集规模会从预期的 343 张缩水,且减少的样本在病理类型上不随机。
解决:① 不依赖 extras 掩膜,统一从 XML 轮廓自行生成二值掩膜(代码见 §6.3),可覆盖全部含 ROI 图像且与官方掩膜可达像素级一致。② 做一次完整性审计:遍历全部 XML 统计有 ROI 的图像数与 extras 掩膜数,逐一比对输出差异清单并记入实验日志。③ 构建加载时的断言层——若 XML 声明NumberOfROIs > 0但生成掩膜全为零,立即抛异常而非静默通过,可捕获坐标解析错误、文件名配对错误等多种隐患。
参考:掩膜缺失的社区确认 — https://faqs.tips/post/how-do-i-use-contour-points-in-inbreast-database.html
⚠️ 坑点 7:两种分辨率混存,固定尺寸假设会引入形变偏倚(分类:预处理陷阱)
问题:INbreast 的 DICOM 有两种原生分辨率(3328 × 4084 与 2560 × 3328),取决于乳房尺寸与探测器设置。若代码假设所有图像尺寸一致,或不加区分地统一 resize 到正方形,会造成非均匀缩放。
症状:直接 resize 到 512 × 512 时,两种原始尺寸的宽高比不同、拉伸程度随之不同,病灶形状被系统性畸变。这会污染所有以形状为判别依据的任务(肿块边缘规则性、毛刺征识别),且畸变程度与患者乳房尺寸相关,构成一种隐性偏倚。
解决:① 使用保持宽高比的 letterbox 填充(不足部分补背景值 0),再统一到目标尺寸;乳腺钼靶背景本身接近黑色,零值填充与原始背景一致,不引入额外人工边界。② 先做乳腺区域裁剪(依据像素阈值找前景包围盒,见 §6.3 的crop_breast_region)再去 resize,裁剪后区域主要由乳腺轮廓决定,可显著缩小长宽比差异。③ 多尺度训练 + 测试时多尺度推理:训练随机选择输入尺度(512/768/1024 随机采样)提升尺度鲁棒性,推理时多尺度预测融合,对分割任务能提升边界稳定性。
参考:两种分辨率的记录 — https://zenodo.org/records/14769220
⚠️ 坑点 8:文献报告的 99%+ 准确率不可直接比较,跨文数值差异多来自协议分歧(分类:评估误用)
问题:INbreast 在文献中报告的准确率跨度极大,从 78% 到 99.2%,AUC 从 0.79 到 0.9981。这些数值看似可比,实则建立在完全不同的任务定义、数据划分与预处理之上:有的做良恶性二分类、有的做 BI-RADS 多分类、有的在分割后 ROI 上评估、有的在全图上评估;划分方式从按图像随机到按患者分组不等。
症状:在论文中直接引用"INbreast 上 SOTA 为 99.2%"会导致错误的性能预期。实际复现时即使采用同样架构,若划分与预处理不同,结果可能相差 15 个百分点以上;审稿人追问划分细节时会发现无法对齐。
解决:① 引用任何数值时同时记录该文献的任务定义、划分方式、输入是否分割后 ROI、评估指标定义,在对比表中增加这些元信息列,避免同表并列不可比的数字。② 若需公平比较,自行在统一协议下复现全部对比方法:固定患者级分组划分、统一输入分辨率与归一化、统一评估指标(分割用 Dice 与 IoU,分类用 AUC 与敏感度@固定特异度)——复现结果的排序往往与原文报告不同。③ 在论文中明确区分"同协议复现结果"与"原文报告结果"并给出差异分析;同时报告 bootstrap 置信区间,在仅约 23 例的测试集上单点准确率的 95% 置信区间宽度常超 ±15 个百分点,不报告区间的数值对比没有统计意义。
参考:跨文献数值分歧的实例 — https://pmc.ncbi.nlm.nih.gov/articles/pmid/35851592/
§6.6 数据增强
| 增强操作 | 安全性 | 说明 |
|---|---|---|
| 水平翻转(同时翻转掩膜) | ✅ 安全 | 左右乳互换在解剖学上成立,是最可靠的增强 |
| 小角度旋转(±10 度内) | ✅ 安全 | 保持解剖结构合理;角度过大则不再代表真实投照 |
| 亮度/对比度微扰(±10%) | ✅ 安全 | 模拟不同设备的灰度映射差异,有助于跨设备泛化 |
| 乳腺区域裁剪 + 缩放 | ✅ 安全 | 去除背景冗余,提升有效像素占比 |
| 高斯噪声(低强度) | ✅ 安全 | 模拟探测器噪声,强度需控制在不掩盖微钙化的水平 |
| 垂直翻转(上下颠倒) | ❌ 危险 | 乳腺解剖结构上下方向固定,翻转后不符合任何真实投照 |
| 大幅度旋转(大于 30 度) | ❌ 危险 | CC 与 MLO 的投照角度有严格解剖约束 |
| 强弹性形变 | ❌ 危险 | 会扭曲微钙化簇的形态与分布,破坏诊断学特征 |
| 随机擦除病灶区域 | ❌ 危险 | 可能抹掉病灶本身,或制造假阴性样本 |
| 高倍率上采样后 resize | ❌ 危险 | 微钙化的 100-200 微米结构在低分辨率下已接近极限 |
| 混合样本(MixUp / CutMix) | ⚠️ 谨慎 | 在影像上混合两块乳腺组织在解剖学上无意义,分类任务可少量使用,分割任务不建议 |
增强强度的经验法则:对 INbreast 这类小样本高精度数据集,增强应当"保守"。过强的增强虽能提升训练集规模,却会让模型学到现实中不存在的形态,反而损害泛化。建议从水平翻转 + 小角度旋转两类开始,逐步加入强度扰动,每加入一类都验证外部验证集性能是否改善。
§6.7 模型推荐
| 任务 | 推荐模型 | 输入分辨率 | 理由 |
|---|---|---|---|
| 病灶分割 | U-Net / nnU-Net | 1024 × 1024 | 结构简洁、在医学分割任务上稳健,nnU-Net 可自动配置超参 |
| 病灶分割(先进) | TransUNet / Swin-UNETR | 512 × 512 或 1024 × 1024 | 全局注意力有助于捕获乳腺整体的对称性线索 |
| 良恶性分类 | ResNet-50 / EfficientNet-B0 | 512 × 512 | 迁移学习成熟,ImageNet 预训练权重易获取 |
| 良恶性分类(多视图) | 双流网络或超复数网络 | 512 × 512 × 2 视图起 | 同时输入 CC 与 MLO,利用视图互补信息 |
| BI-RADS 分级 | ResNet-50 + 类别权重 | 512 × 512 | 任务难度高、样本少,建议先降级为二分类 |
| ACR 密度分级 | EfficientNet-B0 | 512 × 512 | 密度是全局纹理特征,无需高分辨率 |
| 跨中心验证 | 任意在大型集训练的模型 | 依训练集 | INbreast 作测试集,不参与训练 |
模型选择的核心权衡:分割任务受限于标注规模(约 343 张含标注),参数量过大的模型极易过拟合。实践中,在 ImageNet 或大型乳腺数据集上预训练的 U-Net 变体往往优于从头训练的复杂架构。分类任务同样受益于迁移学习;由于 INbreast 规模小,建议冻结骨干网络前几层,仅微调后段与分类头。
§6.8 硬件需求
| 场景 | 分辨率 | 批大小 | 显存需求 | 建议配置 |
|---|---|---|---|---|
| 快速原型验证 | 256 × 256 | 16 | 4-6 GB | 单卡 8 GB(如 RTX 3060) |
| 分类任务标准配置 | 512 × 512 | 16 | 8-12 GB | 单卡 12-16 GB(如 RTX 4070 / V100) |
| 分割任务标准配置 | 1024 × 1024 | 4 | 12-20 GB | 单卡 24 GB(如 RTX 3090 / A5000) |
| 分割任务高分辨率 | 2048 × 2048 | 2 | 24 GB+ | 单卡 24-48 GB 或梯度累积 |
| 5 折交叉验证(完整) | 512 × 512 | 16 | 依上表 | 单卡即可,总耗时约 5 倍单折 |
| 多视图 / 多尺度融合 | 512 × 512 × 多视图 | 8 | 16-24 GB | 单卡 24 GB |
存储与内存:数据集原始约 9.01 GB。预处理后若以 1024 × 1024 float16 存为内存映射,410 张约需 0.8 GB,uint8 则约 0.4 GB。建议预处理一次后缓存为 .npy 或 .h5,避免每次训练重复解码 DICOM——解码是流水线主要瓶颈,缓存后训练速度可提升数倍。
§6.9 评估指标
以下为分割与分类任务的评估指标参考实现。
import numpy as np
from sklearn.metrics import roc_curve
def dice_coef(pred, target, eps: float = 1e-6) -> float:
"""Dice 相似系数。空掩膜须单独处理,否则全空时得到 0/0。"""
pred, target = pred.astype(bool).ravel(), target.astype(bool).ravel()
if target.sum() == 0 and pred.sum() == 0:
return 1.0 # 正确预测为无病灶
if target.sum() == 0 or pred.sum() == 0:
return 0.0 # 一方为空,完全不匹配
inter = np.logical_and(pred, target).sum()
return float(2.0 * inter / (pred.sum() + target.sum() + eps))
def iou_score(pred, target, eps: float = 1e-6) -> float:
"""交并比(Jaccard 指数)。"""
pred, target = pred.astype(bool).ravel(), target.astype(bool).ravel()
if target.sum() == 0 and pred.sum() == 0:
return 1.0
union = np.logical_or(pred, target).sum()
return 0.0 if union == 0 else float(np.logical_and(pred, target).sum() / (union + eps))
def sensitivity_at_specificity(y_true, y_score, target_spec: float = 0.90) -> float:
"""指定特异度下的敏感度。比单一准确率更有临床意义:筛查要求高特异度(降低
不必要召回),应在此约束下比较敏感度。"""
fpr, tpr, _ = roc_curve(y_true, y_score)
idx = np.where(1.0 - fpr >= target_spec)[0]
return float(tpr[idx].max()) if len(idx) else 0.0
def bootstrap_ci(y_true, y_score, metric_fn, n_boot: int = 1000, alpha: float = 0.05):
"""Bootstrap 置信区间。小测试集上单点指标极不稳定,必须报告区间。"""
rng = np.random.default_rng(42)
y_true, y_score = np.asarray(y_true), np.asarray(y_score)
stats = [metric_fn(y_true[i], y_score[i]) for i in
(rng.integers(0, len(y_true), len(y_true)) for _ in range(n_boot))
if len(np.unique(y_true[i])) >= 2]
return (float(np.mean(stats)), float(np.percentile(stats, 100 * alpha / 2)),
float(np.percentile(stats, 100 * (1 - alpha / 2))))
指标选择的三条建议:
- 分割任务报 Dice 与 IoU,并区分"仅含病灶子集"与"全集(含无病灶图像)"两种口径。全集口径下空掩膜的处理规则必须明确写出,否则数值不可比。
- 分类任务报 AUC 与"敏感度@特异度 90%",而非仅报准确率。筛查场景的核心诉求是高特异度下不丢敏感度,准确率会被类别不平衡严重误导。
- 所有指标都报 bootstrap 95% 置信区间。约 23 例测试集上的准确率,其区间宽度常超过 ±15 个百分点,不报区间等于隐藏了不确定性。
§6.10 MLOps 笔记
| 环节 | 建议做法 | 理由 |
|---|---|---|
| 数据版本 | 记录镜像来源、下载日期与文件哈希(如 md5) | 官方托管已失效,社区镜像可能内容不一致 |
| 预处理缓存 | 首次预处理后存为 .npy / .h5 |
DICOM 解码是瓶颈,缓存可数倍提速 |
| 划分固化 | 把患者级折划分结果存为 JSON 并纳入版本控制 | 保证多次实验划分一致,结果可复现 |
| 划分断言 | 每次训练前断言训练/验证患者集合无交集 | 防止代码改动引入隐性泄漏 |
| 完整性审计 | 统计 DICOM 数(应 410)、XML 数(应 410)、有 ROI 的图像数 | 及早发现镜像不完整或被增强 |
| 实验记录 | 记录划分方式、输入分辨率、归一化方法 | 这些超参比模型架构更影响结果可比性 |
| 指标报告 | 始终附 bootstrap 置信区间与每类样本数 | 小样本下点估计不可靠 |
| 外部验证 | 在 CBIS-DDSM 或 VinDr-Mammo 上做交叉验证 | 单中心数据的泛化能力必须外部检验 |
| 模型卡 | 记录训练集人群(葡萄牙单中心女性)与设备型号 | 部署时明确适用边界,避免超范围使用 |
| 部署边界 | 明确声明不用于临床诊断,仅供研究 | 数据集为研究用途,无监管审批,人群代表性有限 |
关于生产化的严正提醒:INbreast 是研究与教学用途的数据集,115 例单一葡萄牙中心的样本无法支撑任何临床部署主张。以此为基础训练的模型进入临床前必须完成:多中心外部验证(覆盖不同人群与设备)、监管机构要求的临床试验,以及持续的性能监测。把在 INbreast 上达到 0.99 AUC 当作临床就绪的证据,是乳腺 AI 领域最常见也最危险的误读。
§7 质量评估与局限性
§7.1 已知偏倚
| 偏倚类型 | 描述 | 严重程度 | 缓解方式 |
|---|---|---|---|
| 单中心偏倚 | 全部影像来自葡萄牙波尔图一家医院的单台设备 | 高 | 必须配合多中心数据集做外部验证后再下结论 |
| 人群偏倚 | 115 例南欧城市女性,无种族/民族字段,亚洲人群密度分布不同 | 高 | 部署到其他人群前需重新评估,尤其中致密型乳腺占比高的地区 |
| 频谱偏倚 | 含 25 例乳房切除术后患者,疾病谱偏向已确诊重症,非筛查队列 | 高 | 不应把该集上的性能解释为筛查场景性能 |
| 病灶类型偏倚 | 肿块与钙化簇占约 90%,结构扭曲 8.0%、不对称 2.3% | 中 | 分类任务降级为二分类;报告每类指标而非整体准确率 |
| 类别不平衡偏倚 | 约 67 张无发现;含肿块仅 26.1%;BI-RADS 6 类仅 4.5% | 中 | 类别权重、Focal Loss、或任务降级 |
| 视图偏倚 | 25 例乳房切除患者仅 2 张,CC/MLO 分布与双乳受累例不同 | 低 | 按视图分层报告性能 |
| 标签完整性偏倚 | 病理结果仅 BI-RADS 3-6 且实际活检者提供 | 中 | 把缺失编码为显式类别,不以活检结果为唯一标签 |
| 时间偏倚 | 采集跨越 2008-2010 两年,无分层时间戳与校准日志 | 低 | 无法校正,只能作为已知不确定性声明 |
| 标注者偏倚 | 仅 2 名专科医师,未报告一致性指标 | 中 | 多标注者集的对比研究;对边界模糊病例保守解读 |
偏倚的临床后果:这些偏倚叠加起来,会让在 INbreast 上表现优异的模型在真实筛查场景中系统性高估自身能力。最危险的组合是"单中心 + 频谱偏倚":模型学到的是"在已知有病人群中区分良恶性",而临床需要的是"在健康人群中找出异常"。前者显著易做,这正是文献报告中 99% 准确率与临床现实之间的鸿沟来源。
§7.2 标注质量
优势:INbreast 的核心竞争力正在于此。双专家流程(1 名勾画 + 1 名验证)、共识仲裁机制、7 类细粒度标签(含微钙化簇与毛刺区的特殊标注规则)、以及全部病灶的组织学确认,共同构成了当时该领域最高标准的标注体系。作者明确指出,多数既往数据库缺乏精确轮廓的根本原因是标注主观、枯燥、耗时且成本高,而本项目的核心投入正是"确保标注精确"。
不足:一是标注者仅 2 名,无法计算组内相关系数或 Kappa 一致性;二是未报告按病灶类型分层的一致性;三是标注边界本身存在固有的主观性——尤其在致密型乳腺影像上,肿块与周围腺体组织的对比度低,边界判定依赖阅片者经验;四是对微钙化簇采用包围椭圆而非逐点轮廓,这一简化会让簇的精确分割任务失去监督信号(椭圆内包含大量非钙化组织)。
对下游的影响:分割任务应将 Dice 的实际上限理解为略高于 0.92 而非 1.0。文献中 MS-ResCU-Net 报告的 91.78% Dice 已接近这一水平,继续提升的意义需谨慎评估——可能只是在拟合标注噪声。若研究目标是"更高 Dice",建议先做标注噪声估计:由第三位独立专家重新标注一个小子集,量化与原始标注的差异,作为可见的天花板参考。
§7.3 泛化性评估
| 部署场景 | 失效风险 | 证据 |
|---|---|---|
| 东南亚 / 东亚人群筛查 | 高 | 致密型乳腺比例更高会降低钼靶敏感度;INbreast 无该人群样本 |
| 非西门子设备采集 | 中高 | 单一设备型号,探测器响应与后处理链差异会导致域偏移 |
| 胶片数字化(SFM)影像 | 中高 | INbreast 全为 FFDM,模型可能依赖数字探测器特有的噪声模式 |
| 大规模筛查队列 | 高 | 队列中阴性占绝大多数,INbreast 的高病灶比例会严重高估精确率 |
| 良性病变随访 | 中 | 数据集缺少纵向随访影像,无法建模病灶的时间演化 |
| 多视图联合诊断 | 低 | CC 与 MLO 双体位齐备,支撑多视图研究 |
| 病灶分割研究 | 低 | 像素级专家轮廓是核心优势,泛化风险最低 |
跨数据集验证的实证落差:文献中"在 CBIS-DDSM 训练、在 INbreast 验证"的实验给出了直观证据。一项工作用 ImageNet 预训练的 InceptionV3 在 CBIS-DDSM 上训练,在 INbreast 上得到 84.16% 的聚合验证准确率,显著低于同数据集内的报告值。另一项多视图超复数学习的研究在 INbreast 上仅得到 0.759-0.793 的 AUC(准确率 80.0-83.0%),远低于大量同数据集报告值——这正是采用严格患者级划分与跨数据集预训练后的真实水平,比 99% 的数字可信得多。
§7.4 伦理考量
伦理授权的充分性:数据集采集获得葡萄牙国家数据保护委员会与 CHSJ 医院伦理委员会的双重许可,授权范围覆盖研究用途。这一程序层级在 2011 年属于较高标准。
去标识化的边界:DICOM 文件已做图像级去标识,不含直接患者标识符。伴随元数据仅暴露采集时年龄、家族史、ACR 密度与 BI-RADS 类别。但乳腺影像本身的生理特征具有一定生物识别性——已有研究表明乳腺 X 线图像可用于个体匹配。因此该数据集仍属敏感健康数据,不应公开二次分发原始文件。
知情同意的透明度:论文未详细说明是否取得逐例患者的知情同意,也未说明是否有退出机制。这是当时医学影像数据共享的普遍状况,但以今日标准审视属于改进空间。
商业使用的许可缺口:作者未发布明确许可条款,仅声明研究者与商业厂商均可免费获取。但 Kaggle 镜像标注为 CC BY-NC 4.0(禁止商业使用),两者存在直接冲突。任何商业用途在使用前应直接联系 INESC TEC 取得书面授权,不能仅凭论文中的一句声明行事。
使用者的伦理责任:数据集源自真实的患者检查,每位患者都为医学研究做出了贡献。使用者应承诺不尝试重识别、不将数据用于与授权目的无关的场景、不在未经伦理审查的情况下将其纳入临床研究。
§7.5 公平性分析
| 公平性维度 | 状况 | 潜在影响 |
|---|---|---|
| 性别 | 全部为女性(乳腺癌筛查人群) | 与任务定义一致,不构成偏差;但不适用于男性乳腺癌研究 |
| 年龄 | 记录采集时年龄,但未公开完整年龄分布 | 无法评估模型在不同年龄段的性能差异 |
| 种族/民族 | 未提供该字段,全部为葡萄牙人群 | 无法做种族分层的公平性评估,跨人群部署缺少依据 |
| 社会经济状况 | 未提供 | 无法评估医疗可及性相关的偏倚 |
| 乳腺密度 | 提供 ACR a-d 分级 | 可按密度分层评估,是该数据集少有的公平性分析抓手 |
| 地区 | 单一国家、单一城市 | 地域代表性极窄 |
公平性评估的可行路径:尽管缺乏种族与社会经济字段,ACR 密度分级仍提供了有价值的分析维度。由于致密型乳腺会降低钼靶敏感度,模型在 C/D 型上的敏感度通常低于 A/B 型。建议在论文中按密度分层报告敏感度与特异度,这既是方法学严谨性的体现,也直接对应临床上"致密乳腺是否需要补充筛查"的决策需求。需要注意各密度层的样本量偏小,分层结果应附置信区间并谨慎解读。
§7.6 数据漂移
采集期内的潜在漂移:2008-2010 两年的采集周期中,X 线球管老化、探测器增益漂移、软件版本更新都可能改变影像特性。数据集中未记录分层时间戳与设备校准日志,因此这一漂移既无法量化也无法校正。这是使用该数据集时一个必须声明的已知不确定性。
跨设备漂移:不同厂商(西门子、GE、Hologic 等)的探测器材料、像素尺寸、后处理链差异显著。INbreast 全部来自 MammoNovation Siemens,模型学到的可能是该设备的特征映射而非生物学特征。这是跨中心验证性能下降的主因之一。
跨人群漂移:人群体型、乳腺密度分布、患病率的差异都会导致模型性能变化。葡萄牙城市女性与东亚女性在致密型乳腺比例上的差异是已知的重要漂移源。
时间性漂移(标签层面):BI-RADS 标准与临床实践在 2012 年数据集发布后仍在演进(如乳腺密度的报告要求、AI 辅助诊断的引入)。以 2012 年的阅片标准产生的标签,与今日临床实践存在概念漂移。这一点在做历史数据与当代数据联合分析时需要明确声明。
§7.7 DAIMS 24 项评估
| # | 检查项 | 状态 | 说明 |
|---|---|---|---|
| 1 | 宽格式 | ✅ | 影像以 DICOM 存储,元数据以独立 XML 与 CSV 存储,结构清晰无冗余嵌套 |
| 2 | 唯一标识 | ✅ | 影像 ID 全局唯一(410 个),患者匿名 ID 可提取(115 个);但 ROI 无全局唯一 ID,需组合 ImageID + ROI 序号 |
| 3 | 特殊字符 | ⚠️ | 文件名含下划线分隔符,解析逻辑依赖固定位置;若镜像重命名会破坏患者 ID 提取 |
| 4 | 重复行 | ⚠️ | 原始 410 张无重复;但社区流传的增强版(7,632 张)含大量同源变换样本,混用即构成重复 |
| 5 | 缺失编码 | ⚠️ | 活检结果缺失未采用统一的缺失编码,需使用者自行识别;Center 字段的零值属记录缺陷而非真实缺失 |
| 6 | 标签标识 | ✅ | 病灶类型(FindingName)与诊断标签(BIRADS、BiopsyResult)明确分离,无混淆 |
| 7 | 罕见类分组 | ⚠️ | 结构扭曲(8.0%)与不对称(2.3%)样本过少,未提供官方的合并分组建议 |
| 8 | 偏倚评估 | ⚠️ | 单中心、非筛查队列、单一设备、单一国家;论文承认部分影像不满足全部质量评估标准 |
| 9 | 数据字典 | ⚠️ | 随附 PDF 说明 XML 结构,但无标准化的字段字典(类型、取值范围、缺失规则) |
| 10 | 信息性缺失解释 | ❌ | 活检结果的缺失与 BI-RADS 类别强相关(即为信息性缺失),但未在文档中说明 |
| 11 | 设备记录 | ✅ | 设备型号(MammoNovation Siemens)、探测器类型(非晶硒)、像素间距(70 微米)、位深(14-bit)齐备 |
| 12 | 共线性 | ⚠️ | 年龄、ACR 密度、BI-RADS 之间存在相关性;CC 与 MLO 同源视图高度相关 |
| 13 | 编码映射 | ⚠️ | 提供 BI-RADS 与 ACR 密度,但不提供 ICD-10/ICD-11 或 SNOMED CT 映射,需使用者自行构建 |
| 14 | 时间戳处理 | ⚠️ | 仅记录采集年份区间(2008-2010),无逐例时间戳,无法做时间分层分析或漂移校正 |
| 15 | 划分建议 | ❌ | 无官方划分文件或推荐比例,是所有文献结果不可比的根源 |
| 16 | 泄漏讨论 | ❌ | 数据集文档未讨论患者级泄漏风险;这是使用者最容易犯的错误 |
| 17 | 标签分布 | ✅ | 病灶类型与 BI-RADS 分布可由 XML 与元数据统计得出,文献中亦有报告 |
| 18 | 测量偏倚 | ⚠️ | 标注仅 2 名专家,未报告一致性指标;微钙化簇使用包围椭圆而非精确轮廓 |
| 19 | 外部验证建议 | ⚠️ | 论文未提供外部验证指引,但社区已形成"作为外部验证集"的惯例 |
| 20 | 版本记录 | ⚠️ | 仅 Release 1.0,无版本历史记录;官方托管页失效后版本一致性缺少官方校验 |
| 21 | 预处理脚本 | ❌ | 未提供官方预处理脚本或划分代码;社区有零散的 XML 解析脚本 |
| 22 | 合规要求 | ⚠️ | 伦理授权完备,但许可条款未明确;Kaggle 镜像标注 CC BY-NC 4.0 与作者的开放声明冲突 |
| 23 | 多模态对齐 | ⚠️ | CC 与 MLO 双视图齐备,可支撑多视图对齐;但无超声、MRI 或病理切片等跨模态配对 |
| 24 | 去标识化 | ✅ | 图像级去标识,无直接患者标识符;受葡萄牙国家数据保护委员会与伦理委员会双重监督 |
DAIMS 评分:13.5 / 24
评分解读:INbreast 在"数据本身的质量"维度表现优异——宽格式、唯一标识、标签分离、设备记录、去标识化、标签分布六项均为满分 ✅,这与其"高精度专家标注"的定位一致。扣分几乎全部集中在"面向 AI 使用的工程化配套"上:无官方划分、未讨论泄漏风险、未提供预处理脚本、未解释信息性缺失、许可条款缺位。这构成了一个典型的"优质原始数据 + 薄弱的 AI 就绪封装"画像。⚠️ 项偏多(14 项)也说明数据集在多数维度上"可用但不完善",需要使用者自行补齐工程环节。
对你意味着什么:
- 不要指望开箱即用。下载后你不会得到任何划分文件、预处理脚本或数据加载器。这些必须自己写,且要以患者 ID 为分组键(见 §5.3)。
- 先做三项自检再开始建模:核对 DICOM 与 XML 数量均为 410;断言训练/验证患者集合无交集;验证自建掩膜与 extras 掩膜差异在 1-2 像素内。
- 把"缺失"当信息处理。活检结果的缺失不是噪声,而是"影像评估为低风险"的表达。丢弃这些样本会让模型在低风险人群上失效。
- 许可问题先解决再谈商业化。Kaggle 标注的 CC BY-NC 4.0 与作者声明的"商业厂商可免费获取"直接冲突,商业用途务必取得 INESC TEC 的书面确认。
- 论文报告要补足元信息。由于无官方划分,你必须写明划分方式、分区键、每折患者数。缺失这些信息的结果无法被同行复现或比较。
§7.8 外部验证矩阵
| 外部数据集/场景 | 来源机构 | 评估任务 | 性能指标 | 相对内部变化 | 关键发现 |
|---|---|---|---|---|---|
| CBIS-DDSM → INbreast | 美国(DDSM 精选子集) | 肿块 vs 非肿块二分类 | 聚合验证准确率 84.16%(InceptionV3 迁移学习) | 显著低于同集报告值 | 模态差异(SFM→FFDM)叠加标注差异,跨集落差约 10-15 个百分点 |
| 多中心预训练 → INbreast | 多视图超复数学习研究 | 良恶性分类 | PHResNet50 AUC 0.759 ± 0.045;准确率 80.000% ± 6.382 | 显著低于同集报告值 | 采用严格划分与跨集预训练后,真实水平远低于 99% 类报告 |
| 多中心预训练 → INbreast | 同上 | 良恶性分类 | PHResNet18 AUC 0.793 ± 0.071;准确率 83.019% ± 5.723 | 显著低于同集报告值 | 参数量更小的模型反而更优,印证过拟合风险 |
| 患者级 5 折内部评测(参考基线) | 同集内部 | 良恶性分类 | ResNet18 AUC 0.789 ± 0.073;准确率 81.887% ± 1.509 | 内部基准 | 给出可信的起点,说明 90%+ 的报告多含划分乐观偏差 |
读表要点:这三行结果的共同点是 AUC 落在 0.75-0.80、准确率落在 80-84% 区间,且标准差普遍偏大(3-8 个百分点)。这与文献中大量出现的 0.98-0.99 AUC 形成鲜明对比。差异的根源不是模型能力,而是评测协议:采用严格患者级划分、跨数据集预训练、并报告标准差的实验,得到的是可复现的真实水平;而按图像随机划分、在分割后 ROI 上评估、不报告划分细节的实验,报告的是乐观上界。阅读任何 INbreast 相关论文时,先看它的划分方式,再看它的数字。
§8 基准性能与生态
§8.1 基准排行榜
⚠️ 数值可比性声明:下表汇总的数值来自不同论文,其任务定义、数据划分、输入(全图 vs 分割后 ROI)、评估协议与指标口径均不相同。这些数值不可直接横向比较。表格的价值在于展示方法演进脉络与各任务的大致水平区间,而非排名。
| 排名 | 模型 | 性能 | 年份 | 关键技术 | 完整引用 | 代码 |
|---|---|---|---|---|---|---|
| 1 | Bi-CBMSegNet | ACC 0.9951 / AUC 0.9981 / Dice 类分割 0.9908 | 2025 | 双模块编码器-解码器 + 全局/局部引导模块 | Al-Rafidain et al., 2025, Scientific Reports. DOI: 10.1038/s41598-025-09775-5 | 论文内提供架构描述 |
| 2 | ACMSCNet | ACC 0.9884 / AUC 0.9856 | 2025 | 多尺度注意力与通道压缩融合 | 对比于 Al-Rafidain et al., 2025, Scientific Reports. DOI: 10.1038/s41598-025-09775-5 | 未公开 |
| 3 | MTDUNet | AUC 0.9791 / 敏感度 0.9875 | 2025 | 多任务密集 U-Net | 对比于 Al-Rafidain et al., 2025, Scientific Reports. DOI: 10.1038/s41598-025-09775-5 | 未公开 |
| 4 | MS-ResCU-Net | 分割 Dice 91.78% / AUC 94.57%;分类 ACC 94.12% / AUC 96.16% | 2020 | 混合监督引导 + 残差辅助分类 U-Net | Yuan et al., 2020, IEEE Signal Processing Letters. DOI: 10.1109/LSP.2020.3024271 | 未公开 |
| 5 | Stacked ResNet Ensemble | 病理分类 ACC 99.20% / AUC 0.99;BI-RADS 分类 ACC 99% / AUC 1.00 | 2022 | 多 ResNet 模型堆叠集成 | Al-Antari et al., 2022, Scientific Reports. DOI: 10.1038/s41598-022-16258-4 | 未公开 |
| 6 | PHResNet18 | AUC 0.793 ± 0.071 / ACC 83.019% ± 5.723 | 2022 | 多视图超复数学习(Patient/View 复用) | Shen et al., 2022, arXiv:2204.05798 | 未公开 |
| 7 | ResNet18(Patches + CBIS 预训练) | AUC 0.789 ± 0.073 / ACC 81.887% ± 1.509 | 2022 | 两阶段预训练迁移 | Shen et al., 2022, arXiv:2204.05798 | 未公开 |
| 8 | Shams et al. | ACC 93.50% / AUC 92.50% | 2020 | 深度学习分类框架 | 引用自 Yuan et al., 2020, IEEE SPL. DOI: 10.1109/LSP.2020.3024271 | 未公开 |
| 9 | Dhungel et al. | 分割 Dice 90.00% / 分类 ACC 91.00% | 2017 | 多阶段 CNN + 随机森林 | 引用自 Yuan et al., 2020, IEEE SPL. DOI: 10.1109/LSP.2020.3024271 | 未公开 |
| 10 | ICS-ELM | ACC 98.26% | 2020 | 改进乌鸦搜索优化的极限学习机 | Chakravarthy et al., 2020,引用自 Al-Antari et al., 2022, Scientific Reports | 未公开 |
| 11 | NasNet + VGG 迁移 | ACC 90.9% / AUC 0.99 | 2020 | 迁移学习 + 集成 | Falconi et al., 2020,引用自 Al-Antari et al., 2022, Scientific Reports | 未公开 |
| 12 | mResNet(多视图) | AUC 0.80 | 2017 | 多视图深度残差网络 | 引用自 Al-Antari et al., 2022, Scientific Reports | 未公开 |
| 13 | DualCoreNet | AUC 0.93 | 2021 | 纹理与形状特征双核融合 | 引用自 Al-Antari et al., 2022, Scientific Reports | 未公开 |
分组解读:把上表按数值区间分组,可以看到一条清晰的分界线。
- 0.98-1.00 区间:Bi-CBMSegNet、ACMSCNet、Stacked ResNet Ensemble、ICS-ELM。这些工作多在分割后的 ROI 上评估、按图像随机划分、或未完整报告划分细节。
- 0.90-0.96 区间:MS-ResCU-Net、Shams、Dhungel、NasNet。任务定义较明确,输入规格交代较完整。
- 0.75-0.80 区间:PHResNet 系列、ResNet18 跨集预训练。采用严格患者级划分并报告标准差,是最可信的区间。
三个区间的跨度接近 0.25 AUC,而它们描述的是同一个数据集。这一事实本身就说明了 INbreast 评测生态的核心问题:缺乏统一的评测协议。研究者引用数值时务必同时引用协议。
§8.2 SOTA 总结与选型建议
分割任务:可信的高水位在 Dice 0.90-0.92 之间。MS-ResCU-Net 报 91.78% Dice 属优秀水平,Dhungel 的 90.00% 与 Wang 的 91.10% 同处这一区间。由于标注者的边界主观性构成约 0.92 的天花板(见 §7.2),继续追求更高 Dice 的边际价值有限。若要在该任务上做创新,建议转向边界不确定性建模或多标注者一致性学习,而非单纯刷高 Dice。
良恶性分类任务:可信的高水位在 AUC 0.93-0.96。Shams 的 92.50% AUC 与 MS-ResCU-Net 的 96.16% AUC 属合理区间。超过 0.99 的报告需高度警惕划分泄漏。
BI-RADS 分级任务:由于 6 类仅 4 例、2 类仅 13 例,独立评估多分类结果缺乏统计意义。Al-Antari 报的 99% BI-RADS 准确率建立在"未使用分割图像"的前提下,与其他工作不可比。建议该任务先降级为高风险 vs 低风险二分类。
ACR 密度分级任务:文献报告较少,且数据集的密度分布未完整公开。这是一个相对开放的方向,但需注意各密度层样本量小。
选型建议:
| 你的目标 | 推荐做法 |
|---|---|
| 快速建立可信基线 | ResNet18 + 患者级 5 折 + 512×512 输入,预期 AUC 0.78-0.80 |
| 追求分割精度 | U-Net 类架构 + Dice Loss + 患者级划分,预期 Dice 0.88-0.91 |
| 发表方法学论文 | 统一协议复现 3-5 个基线方法,报告 bootstrap 置信区间 |
| 跨中心泛化研究 | 在 CBIS-DDSM 或 VinDr-Mammo 训练,整集 INbreast 作测试 |
| 探索新方向 | 边界不确定性、多标注者学习、多视图融合、密度分层公平性 |
§8.3 评测协议
由于官方无划分,INbreast 的评测协议需要社区自行约定。以下是一套可推荐的最小协议,用于让不同工作的结果具备可比性:
协议要素:
- 划分:患者级分组 5 折交叉验证。公开折划分的 JSON(含每折的图像 ID 列表)以便他人复用。
- 输入:明确是全图还是分割后 ROI。若为 ROI,说明 ROI 的生成方式(XML 轮廓包围盒 / 最小外接圆 / extras 掩膜)。
- 分辨率:明确目标分辨率与插值方式;说明是否保持宽高比。
- 归一化:说明是否应用了百分位裁剪、是否重复应用了窗宽窗位。
- 增强:仅作用于训练集;列出所有使用的增强操作。
- 指标:分割报 Dice 与 IoU,并说明空掩膜处理规则;分类报 AUC 与敏感度@特异度 90%;全部指标报 bootstrap 95% 置信区间。
- 报告粒度:报告各折均值、标准差与折间极差;分类任务附每类样本数与每类指标。
为什么这些要素重要:上表 0.75 到 0.9981 的 AUC 跨度,绝大部分可由三个要素的差异解释——划分方式(患者级 vs 图像级)、输入范围(ROI vs 全图)、报告方式(单次 vs 交叉验证均值)。把这三点固定下来,跨论文的数值才有讨论的基础。
§8.4 相关数据集
| 数据集 | 关系 | 互补价值 |
|---|---|---|
| DDSM | 历史前身,规模大但标注精度受质疑 | 提供胶片数字化模态,可用于跨模态泛化研究 |
| CBIS-DDSM | DDSM 的精选重标注子集 | 常作为 INbreast 的配对训练集,进行 SFM→FFDM 迁移 |
| MIAS | 最早的乳腺摄影公开集 | 规模极小、标注粗糙,仅适合方法原型验证 |
| VinDr-Mammo | 现代大规模 FFDM 集(越南) | 提供亚洲人群与病灶级包围框,是 INbreast 的理想外部验证伙伴 |
| CMMD | 中国 FFDM 集,含分子亚型元数据 | 提供人群多样性与临床元数据扩展 |
| KAU-BCMD | 沙特 FFDM 集,CC0 许可 | 许可最宽松,适合需要完全开放权重的研究 |
| BCDR-D | 巴林 FFDM 集,逾 3,600 张 | 中东人群,与 INbreast 同为数字模态,可做跨地区对比 |
| CDD-CESM | 埃及对比增强光谱乳腺摄影集 | 提供 CESM 模态,可做跨模态域泛化研究 |
§8.5 关键论文 Top 8
-
Moreira I.C., Amaral I., Domingues I., Cardoso A., Cardoso M.J., Cardoso J.S. (2012). INbreast: Toward a Full-field Digital Mammographic Database. Academic Radiology, 19(2), 236-248. DOI: 10.1016/j.acra.2011.09.014 — 数据集原始论文,定义 115 例 / 410 张规模、双专家标注协议与 7 类病灶标签体系。
-
Dhungel N., Carneiro G., Bradley A.P. (2017). A deep learning approach for the analysis of masses in mammograms with minimal user intervention. Medical Image Analysis, 37, 114-128. DOI: 10.1016/j.media.2017.01.009 — 多阶段 CNN + 随机森林的肿块检测与分类框架,报分割 Dice 90.00%、分类 ACC 91.00%,是该集早期重要基线。
-
Yuan Z., Xie N., Yushkevich P., et al. (2020). Simultaneous Segmentation and Classification of Mass Region From Mammograms Using a Mixed-Supervision Guided Deep Model. IEEE Signal Processing Letters, 27, 196-200. DOI: 10.1109/LSP.2020.3024271 — 提出 MS-ResCU-Net,用混合监督同时做分割与分类,报 Dice 91.78%、分类 AUC 96.16%,并系统对比 Dhungel、Zhu、Cardoso、Wang、Carneiro、Shams 等前序工作。
-
Al-Antari M.A., Han S.-M., Kim T.-S. (2022). An integrated framework for breast mass classification and diagnosis using stacked ensemble of residual neural networks. Scientific Reports, 12, 12359. DOI: 10.1038/s41598-022-16258-4 — 堆叠 ResNet 集成同时做病理分类、BI-RADS 分级与形状分类,报病理分类 ACC 99.20%、BI-RADS ACC 99%,并给出跨 CBIS-DDSM、INbreast 与私有集的对比表。
-
Shen Y., Zhang Z., Liu N., et al. (2022). Multi-View Hypercomplex Learning for Breast Cancer Screening. arXiv:2204.05798 — PHResNet 多视图超复数学习,报 AUC 0.759-0.793、ACC 80.0-83.0% 并附完整标准差,代表严格评测下的可信性能水平。
-
Al-Rafidain M.J.M., et al. (2025). Robust Bi-CBMSegNet framework for advancing breast mass segmentation in mammography with a dual module encoder-decoder approach. Scientific Reports, 15. DOI: 10.1038/s41598-025-09775-5 — Bi-CBMSegNet,报 ACC 0.9951、AUC 0.9981、0.38 秒/图像,并给出 DDSM 上的对照与效率对比。
-
Huang M.-L., Lin T.-Y. (2020). Dataset of breast mammography images with masses. Data in Brief, 31, 105928. DOI: 10.1016/j.dib.2020.105928 — 通过激进增强把 410 张扩至 7,632 张并公开(Zenodo,CC BY 4.0),既是小样本增强范例,也是数据泄漏风险的典型来源。
-
Zhang H., et al. (2019). Deep learning based GAN for mammographic mass generation — 用 INbreast 训练 GAN 合成乳腺影像以补充训练规模,是该集在生成式 AI 方向的早期应用。
(补充阅读)Scientific Data (2023). A review of the machine learning datasets in mammography, their adherence to the FAIR principles and the outlook for the future. DOI: 10.1038/s41597-023-02430-6 — 系统评述 INbreast 的 FAIR 属性、许可状况与文献角色,明确指出其"最可靠最精确"的声誉与"规模限制只能作附属或验证集"的现实。
§8.6 社区活跃度
| 指标 | 状况 | 说明 |
|---|---|---|
| 论文引用 | 1,300+(Google Scholar,截至 2026-09) | 乳腺影像 AI 领域高被引数据集之一 |
| Kaggle 镜像热度 | 15,400+ 次浏览 / 3,368 次下载(镜像页面数据) | 社区获取的主要渠道 |
| 官方维护 | 停滞 | 原始申请页失效,作者承诺的扩充未落地 |
| 代码生态 | 零散 | 无官方仓库;社区有 MATLAB 与 Python 的 XML 解析脚本 |
| 第三方基准 | 丰富 | 2020-2025 年间持续有新方法报告结果 |
| 衍生数据集 | 至少 1 个公开增强版 | Huang & Lin 2020 的 7,632 张版本 |
| 数据版本管控 | 缺失 | 无官方版本号体系,镜像间一致性无法校验 |
生态特征总结:INbreast 呈现"学术影响力高、工程维护弱"的典型形态。论文引用与第三方基准极其丰富,说明它在方法学研究中地位稳固;但官方托管失效、无版本管控、无官方代码,意味着每位使用者都要重复解决相同的数据解析与划分问题。这也是本页面用大量篇幅讨论坑点与协议的原因——这些工程细节在官方文档中完全缺失,只能靠社区经验传承。
§8.7 生态快照
| 资源 | 类型 | 链接 | Star / 热度(截至 2026-09) | 推荐理由 |
|---|---|---|---|---|
| Kaggle INbreast 2012 | 数据镜像 | https://www.kaggle.com/datasets/tommyngx/inbreast2012/data | 15,400+ 浏览 / 3,368 下载 | 当前最稳定的获取渠道,含完整 DICOM + XML + Extras |
| Kaggle inbreast-dataset | 数据镜像 | https://www.kaggle.com/datasets/ramanathansp20/inbreast-dataset | 依页面显示 | 备用镜像,可用于交叉核验文件完整性 |
| wentaozhu/inbreast | 代码(XML 解析) | https://github.com/wentaozhu/inbreast | 社区常用 | MATLAB 实现,含轮廓可视化,是理解 XML 结构的好起点 |
| jendelel gist | 代码(掩膜生成) | https://gist.github.com/jendelel/3a8e768a8eb9345d49f2a82d02946122 | 社区常用 | Python 3 脚本,从 XML 生成二值掩膜,可直接改造 |
| INbreast 官方论文(PubMed) | 文献 | https://www.pubmed.ncbi.nlm.nih.gov/22078258/ | PMID 22078258 | 数据集定义的原始出处,标注协议与规模数字均以此为准 |
| 论文开放获取 PDF | 文献 | https://core.ac.uk/download/pdf/47139244.pdf | 开放获取 | 免订阅获取全文,含 XML 结构说明与病灶类型图示 |
| 机构库条目 | 文献 | https://recipp.ipp.pt/handle/10400.22/6124 | 开放获取 | 葡萄牙理工学院的机构库副本,附完整的引用格式 |
| Scientific Data FAIR 综述 | 综述 | https://www.nature.com/articles/s41597-023-02430-6 | 高被引 | 系统评述 INbreast 的 FAIR 属性、许可状况与文献角色 |
| Zenodo 增强版 | 衍生数据 | https://zenodo.org/records/14769220 | CC BY 4.0 | 7,632 张增强集,仅用于训练集扩充,不可作评测集 |
| Praxium 数据集清单 | 对比参考 | https://viewer.praxium.ai/datasets | 维护中 | 乳腺影像数据集的横向对照表,含 INbreast 行的关键属性 |
§9 相关资源与引用
§9.1 官方资源
| 资源 | 类型 | 链接 | 说明 |
|---|---|---|---|
| 数据集原始论文 | 文献 | https://www.pubmed.ncbi.nlm.nih.gov/22078258/ | PubMed 摘要页,含 PMID 22078258 |
| 论文开放获取版 | 文献 | https://core.ac.uk/download/pdf/47139244.pdf | 全文 PDF,含 XML 结构与标注规则说明 |
| 期刊官方页面 | 文献 | http://www.ajicjournal.org/article/S1076-6332(11)00451-X/fulltext | Academic Radiology 官方条目,含 DOI 与版权信息 |
| 机构库条目 | 文献 | https://recipp.ipp.pt/handle/10400.22/6124 | 葡萄牙理工学院机构库,开放获取 |
| Kaggle 主镜像 | 数据 | https://www.kaggle.com/datasets/tommyngx/inbreast2012/data | 约 9.01 GB,1619 个文件 |
| Kaggle 备用镜像 | 数据 | https://www.kaggle.com/datasets/ramanathansp20/inbreast-dataset | 用于交叉核验完整性 |
关于原始官方下载页:http://medicalresearch.inescporto.pt/breastresearch/index.php/Get_INbreast_Database 已无法访问。论文与早期社区文档中引用的该地址仅供历史参考,实际获取请使用 Kaggle 等镜像渠道,并自行核验文件完整性。
§9.2 教程与社区资源
| 资源 | 类型 | 链接 | 用途 |
|---|---|---|---|
| XML 轮廓解析(MATLAB) | 代码 | https://github.com/wentaozhu/inbreast | 从 XML 提取轮廓并可视化,理解 XML 结构的起点 |
| 二值掩膜生成(Python) | 代码 | https://gist.github.com/jendelel/3a8e768a8eb9345d49f2a82d02946122 | 从 XML 生成 bool numpy 掩膜,可直接改造 |
| 轮廓点使用讨论 | 社区问答 | https://faqs.tips/post/how-do-i-use-contour-points-in-inbreast-database.html | Center 字段恒为零的确认来源,含多个使用者的实测经验 |
| FAIR 原则综述 | 综述 | https://www.nature.com/articles/s41597-023-02430-6 | INbreast 在乳腺摄影数据集生态中的定位与许可分析 |
| nnU-Net 乳腺分割研究 | 论文 | https://matematika.pmf.uns.ac.rs/wp-content/uploads/2025/11/Segmentation_of_Breast_Lesions_in_Mammography_Images_using_nnUnet_architecture_Master_Thesis-Beti-Plackov.pdf | 患者级划分的实操范例,含病灶类型与 BI-RADS 分布统计 |
| 深度学习乳腺影像系统综述 | 综述 | https://link.springer.com/10.1186/s12938-025-01502-5 | 各公开乳腺数据集的偏倚分析与评测建议 |
§9.3 BibTeX 引用
@article{moreira2012inbreast,
title = {INbreast: Toward a Full-field Digital Mammographic Database},
author = {Moreira, In{\^e}s C. and Amaral, Igor and Domingues, In{\^e}s and Cardoso, Ant{\'o}nio and Cardoso, Maria Jo{\~a}o and Cardoso, Jaime S.},
journal = {Academic Radiology},
volume = {19},
number = {2},
pages = {236--248},
year = {2012},
publisher = {Elsevier},
doi = {10.1016/j.acra.2011.09.014},
pmid = {22078258},
note = {Funded by ADI, project QREN 3472 ``Semantic PACS''}
}
@misc{inbreast_release1,
title = {INbreast Release 1.0: Full-field Digital Mammographic Database},
author = {Moreira, In{\^e}s C. and Amaral, Igor and Domingues, In{\^e}s and Cardoso, Ant{\'o}nio and Cardoso, Maria Jo{\~a}o and Cardoso, Jaime S.},
year = {2012},
howpublished = {INESC TEC and Centro Hospitalar de S. Jo{\~a}o, Porto, Portugal},
note = {115 cases, 410 DICOM, XML polygon annotations},
url = {https://www.kaggle.com/datasets/tommyngx/inbreast2012/data}
}
@article{huang2020inbreast_augmented,
title = {Dataset of Breast Mammography Images with Masses},
author = {Huang, Ming-Ling and Lin, Ting-Yu},
journal = {Data in Brief},
volume = {31},
pages = {105928},
year = {2020},
doi = {10.1016/j.dib.2020.105928},
note = {Augmented derivative: 7,632 images, CC BY 4.0}
}
@article{yuan2020mixed,
title = {Simultaneous Segmentation and Classification of Mass Region From Mammograms Using a Mixed-Supervision Guided Deep Model},
author = {Yuan, Zhen and Xie, Ning and Yushkevich, Paul and others},
journal = {IEEE Signal Processing Letters},
volume = {27},
pages = {196--200},
year = {2020},
doi = {10.1109/LSP.2020.3024271}
}
@article{alantari2022stacked,
title = {An Integrated Framework for Breast Mass Classification and Diagnosis Using Stacked Ensemble of Residual Neural Networks},
author = {Al-Antari, Mugahed A. and Han, Sung-Min and Kim, Tae-Seong},
journal = {Scientific Reports},
volume = {12},
pages = {12359},
year = {2022},
doi = {10.1038/s41598-022-16258-4}
}
@article{shen2022multiview,
title = {Multi-View Hypercomplex Learning for Breast Cancer Screening},
author = {Shen, Yiqiu and Zhang, Zhuo and Liu, Nan and others},
journal = {arXiv preprint},
year = {2022},
eprint = {2204.05798},
doi = {10.48550/arXiv.2204.05798}
}
@article{s41597_023_02430_6,
title = {A Review of the Machine Learning Datasets in Mammography, Their Adherence to the FAIR Principles and the Outlook for the Future},
journal = {Scientific Data},
volume = {10},
year = {2023},
doi = {10.1038/s41597-023-02430-6},
note = {INbreast FAIR attributes, licensing and literature role}
}
§9.4 引用指南
引用数据集本身:学术工作中使用 INbreast 时,必须引用原始论文 Moreira et al. (2012), Academic Radiology 19(2):236-248, DOI: 10.1016/j.acra.2011.09.014。数据集没有独立的 DOI,论文 DOI 即为标准引用标识。
引用获取渠道:由于当前通过 Kaggle 等镜像获取,建议在论文的方法部分注明实际使用的镜像来源与下载日期,例如"INbreast Release 1.0 通过 Kaggle 镜像(tommyngx/inbreast2012)于 YYYY-MM 获取,共 410 张 DICOM 与 410 个 XML"。
报告必须包含的元信息:
| 元信息项 | 示例写法 |
|---|---|
| 数据集版本 | INbreast Release 1.0(原始 410 张,非增强版) |
| 镜像来源与日期 | Kaggle tommyngx/inbreast2012,2026-08 下载 |
| 使用的子集 | 全部 410 张,或含肿块的 107 张 |
| 划分方式 | 患者级分组 5 折交叉验证(GroupKFold, group=PatientID) |
| 每折规模 | 每折约 23 例患者 / 82 张图像 |
| 输入规格 | 全图 resize 至 1024×1024,百分位裁剪 + 线性归一化 |
| 增强操作 | 水平翻转、±10 度旋转,仅训练集 |
| 评估指标 | Dice、IoU、AUC、敏感度@特异度 90%,附 bootstrap 95% CI |
引用本页面:若需引用本百科的结构化整理,请引用千方病案医数集 INbreast 条目,并同时保留原始论文引用。
§10 AI 使用声明卡
§10.1 AI 模型列表
| 模型/工具 | 版本标识 | 用途 |
|---|---|---|
| deep-model(WorkBuddy) | 2026-09 | 初稿生成:INFOBOX 数据汇编、§1-§9 结构化写作、§6 代码示例生成、JSON-LD 构建 |
| WebSearch 检索服务 | 2026-09 | 事实核查:数据集规模、标注协议、基准数值、获取渠道 |
§10.2 AI 参与范围
AI 参与的具体环节:文献与网页的信息抽取、章节结构的组织、代码示例的编写与注释、表格的格式化、JSON-LD 的序列化、BibTeX 条目的整理。AI 未参与:医学事实的最终裁定、基准数值的真伪判断、许可条款的法律解读、坑点的真实性验证。上述内容均由人工审核者基于公开文献核实后定稿。
§10.3 输入来源列表
- Moreira I.C. et al. (2012). INbreast: Toward a Full-field Digital Mammographic Database. Academic Radiology, 19(2), 236-248. DOI: 10.1016/j.acra.2011.09.014 — https://www.pubmed.ncbi.nlm.nih.gov/22078258/
- 论文开放获取全文 PDF(含 XML 结构与标注规则说明) — https://core.ac.uk/download/pdf/47139244.pdf
- Academic Radiology 期刊官方条目(DOI 与版权信息) — http://www.ajicjournal.org/article/S1076-6332(11)00451-X/fulltext
- 葡萄牙理工学院机构库条目 — https://recipp.ipp.pt/handle/10400.22/6124
- Scientific Data (2023). A review of the machine learning datasets in mammography, their adherence to the FAIR principles and the outlook for the future. DOI: 10.1038/s41597-023-02430-6 — https://www.nature.com/articles/s41597-023-02430-6
- 同文的 PMC 版本 — https://pmc.ncbi.nlm.nih.gov/articles/pmid/37684306/
- Kaggle INbreast 2012 镜像页面(文件数、体量、许可标注) — https://www.kaggle.com/datasets/tommyngx/inbreast2012/data
- Zenodo Breast cancer dataset 条目(Huang & Lin 2020 增强版说明与密度分级) — https://zenodo.org/records/14769220
- 社区 XML 轮廓解析讨论(Center 字段恒为零的确认、掩膜缺失情况) — https://faqs.tips/post/how-do-i-use-contour-points-in-inbreast-database.html
- Yuan Z. et al. (2020). IEEE Signal Processing Letters, 27, 196-200. DOI: 10.1109/LSP.2020.3024271 — http://ir.ia.ac.cn/bitstream/173211/28629/1/SPL_Simultaneous Segmentation and Classification of Mass Region from Mammograms Using a Mixed-Supervision Guided Deep Model.pdf
- Al-Antari M.A. et al. (2022). Scientific Reports, 12, 12359. DOI: 10.1038/s41598-022-16258-4 — https://pmc.ncbi.nlm.nih.gov/articles/pmid/35851592/
- Shen Y. et al. (2022). Multi-View Hypercomplex Learning for Breast Cancer Screening. arXiv:2204.05798 — https://arxiv.org/html/2204.05798
- Al-Rafidain et al. (2025). Scientific Reports. DOI: 10.1038/s41598-025-09775-5 — https://link.springer.com/article/10.1038/s41598-025-09775-5/tables/4
- nnU-Net 乳腺病灶分割硕士论文(患者级划分、病灶类型与 BI-RADS 分布统计) — https://matematika.pmf.uns.ac.rs/wp-content/uploads/2025/11/Segmentation_of_Breast_Lesions_in_Mammography_Images_using_nnUnet_architecture_Master_Thesis-Beti-Plackov.pdf
- Mustonen H. (2022). Breast Mass Segmentation from Mammograms with Deep Transfer Learning(像素尺寸、含肿块图像比例、VOI LUT 说明) — https://oulurepo.oulu.fi/bitstream/10024/19942/1/nbnfioulu-202203171401.pdf
- 乳腺影像数据集系统综述 (2025). BioMedical Engineering OnLine. DOI: 10.1186/s12938-025-01502-5 — https://link.springer.com/10.1186/s12938-025-01502-5
- 乳腺影像数据集清单(横向对照表) — https://viewer.praxium.ai/datasets
- BI-RADS 分级定义(SEER 词汇表) — https://seer.cancer.gov/seertools/glossary/view/56f062b71ef5571a09243da7
- BI-RADS 乳腺密度四分类与 FDA 告知要求 — https://emedicine.medscape.com/article/1945498-print
- ICD-10 / ICD-11 乳腺肿瘤编码对照 — https://iliveok.com/health/swelling-breast_80034i15944.html
- 乳腺钼靶检查科普(假阳性率、辐射剂量、BI-RADS 4 亚类概率) — https://cloud.kepuchina.cn/h5/detail?id=7377080837683609600
- 社区 XML 解析代码仓库 — https://github.com/wentaozhu/inbreast
- 社区二值掩膜生成脚本 — https://gist.github.com/jendelel/3a8e768a8eb9345d49f2a82d02946122
- 医学数据集清单(INbreast 官方链接失效记录与备用访问渠道) — https://github.com/ParthaPratimBanik/medical-data
§10.4 人工校验
| 内容模块 | 审核者 | 审核方式 | 审核状态 |
|---|---|---|---|
| §1 概览(规模、定位、应用场景) | 千方病案医学编辑部 | 对照原始论文与综述逐项核实 | ✅ 已通过 |
| §2 医学背景(ICD-11/SNOMED 映射、BI-RADS、流行病学) | 千方病案医学编辑部 | 对照权威编码表与临床指南核实 | ✅ 已通过 |
| §3 规格(设备、分辨率、标注协议、溯源链) | 千方病案医学编辑部 | 对照原始论文与数据集文档核实 | ✅ 已通过 |
| §4 数据结构(目录树、字段字典、缺失编码) | 千方病案医学编辑部 | 对照社区解析实践与 XML 结构说明核实 | ✅ 已通过 |
| §5 划分策略(患者级泄漏、交叉验证建议) | 千方病案医学编辑部 | 对照方法学文献与 nnU-Net 研究核实 | ✅ 已通过 |
| §6 代码与坑点(Pipeline、8 个坑点、指标实现) | 千方病案医学编辑部 | 逐段复核代码逻辑与坑点来源 | ✅ 已通过 |
| §7 质量评估(偏倚、DAIMS 24 项、外部验证矩阵) | 千方病案医学编辑部 | 对照文献局限性声明与评测协议核实 | ✅ 已通过 |
| §8 基准与生态(排行榜、论文引用、生态快照) | 千方病案医学编辑部 | 对照各论文原文与数据集页面核实 | ✅ 已通过 |
| §9 资源与引用(BibTeX、链接可用性) | 千方病案医学编辑部 | 逐条核验引用格式与链接可达性 | ✅ 已通过 |
| §10 AI 使用声明 | 千方病案医学编辑部 | 核对来源清单与 AI 参与范围 | ✅ 已通过 |
| 合规声明(许可、伦理、去标识化) | 千方病案医学编辑部 | 对照伦理授权描述与镜像许可标注核实 | ✅ 已通过 |
§10.5 AI 生成章节标注
| 章节 | 生成方式 | 人工介入程度 |
|---|---|---|
| frontmatter / INFOBOX | AI 生成,人工核实数值 | 数值逐项核实 |
| §0 E-E-A-T | 模板化生成,免责声明为固定文本 | 模板与固定文本 |
| §1 概览 | AI 组织,事实源自论文与综述 | 全文复核 |
| §2 医学背景 | AI 组织,编码与流行病学经人工核实 | 编码表逐项核实 |
| §3 规格 | AI 组织,参数源自论文与数据集文档 | 参数逐项核实 |
| §4 数据结构 | AI 组织,字段语义经人工确认 | 字段语义复核 |
| §5 划分策略 | AI 组织,方法学建议经人工评估 | 建议合理性复核 |
| §6 代码与坑点 | AI 编写代码,坑点源自社区实测与文献 | 代码逻辑复核、坑点来源核实 |
| §7 质量评估 | AI 组织,DAIMS 评分经人工校准 | 评分与依据复核 |
| §8 基准与生态 | AI 汇编,数值与引用逐条溯源 | 数值与引用核实 |
| §9 资源与引用 | AI 整理,链接经可达性核验 | 链接核验 |
| §10 AI 声明卡 | AI 生成,来源清单人工核对 | 来源清单核对 |
§10.6 最后人工审核日期
最后人工审核日期:2026-09-05
审核机构:千方病案医学编辑部
审核范围:全文事实核查、医学表述准确性、代码逻辑正确性、引用完整性、合规声明充分性。
页面状态:published(全部内容已完成审核并发布)
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- busi — 共享标签:医学影像 / 乳腺影像 / 图像分类 / 医学图像分割 / 乳腺癌
- udiat — 共享标签:医学影像 / 乳腺影像 / 图像分类 / 医学图像分割 / 乳腺癌
- bus-bra — 共享标签:医学影像 / 乳腺影像 / 图像分类 / 医学图像分割 / 乳腺癌
- cbis-ddsm — 共享标签:医学影像 / 乳腺影像 / 图像分类 / 乳腺癌
- cmmd — 共享标签:医学影像 / 乳腺影像 / 图像分类 / 乳腺癌
- odelia — 共享标签:医学影像 / 乳腺影像 / 图像分类 / 乳腺癌
- bach — 共享标签:医学影像 / 乳腺影像 / 图像分类 / 乳腺癌
- echonet-dynamic — 共享标签:医学影像 / 图像分类 / 医学图像分割
- ddti — 共享标签:医学影像 / 图像分类 / 医学图像分割
- tn-mammo-breast-density — 共享标签:医学影像 / 乳腺影像 / 图像分类
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

