Breast-Lesions-USG — 乳腺超声病灶策划基准数据集

256 例乳腺超声扫描 · 256 名患者 · 266 个病灶 · BIRADS 描述符与患者级临床标签

来源 波兰科学院基础技术研究所 (IPPT PAN) / The Cancer Imaging Archive url: https://www.cancerimagingarchive.net/collection/breast-lesions-usg/发布时间: 2026-10-16最后更新: 2026-10-20 阅读 31
Breast-Lesions-USG — 乳腺超声病灶策划基准数据集

信息速览

数据集名称Breast-Lesions-USG — 乳腺超声病灶策划基准数据集
数据类型256 例乳腺超声扫描,256 名患者,266 个病灶掩膜,CC BY 4.0,含 BIRADS 与病理标签
规模256 名患者
接入方式波兰科学院基础技术研究所 (IPPT PAN) / The Cancer Imaging Archive url: https://www.cancerimagingarchive.net/collection/breast-lesions-usg/
AI 就绪度

Breast-Lesions-USG(BrEaST)— 乳腺超声病灶策划基准数据集

一句话定位:Breast-Lesions-USG(论文别称 BrEaST)是波兰科学院基础技术研究所(IPPT PAN)于 2024 年发布的乳腺超声病灶分析策划基准数据集,以「患者级 + 图像级 + 肿瘤级」三层标签与 BIRADS 描述符为核心卖点,含 256 例扫描、256 名患者、266 个良恶性病灶掩膜,全部病例经随访或粗针穿刺活检确认,以 CC BY 4.0 许可托管于美国国家癌症研究所的 TCIA 平台。它是当下乳腺超声 AI 研究中**最适合充当"域外/外部测试集"**的高质量策划集之一。


信息框(INFOBOX)

项目 内容
官方名称 Breast-Lesions-USG(论文别称 BrEaST)
官方全称 A Curated Benchmark Dataset for Ultrasound Based Breast Lesion Analysis
slug breast-lesions-usg
数据 DOI 10.7937/9WKK-Q141
论文 DOI 10.1038/s41597-024-02984-z
论文出处 Scientific Data 11, 148 (2024)
发布机构 波兰科学院基础技术研究所(IPPT PAN)
托管平台 The Cancer Imaging Archive(TCIA)
首发/更新时间 2023-12-15 打包;TCIA v1 更新于 2024-01-08
许可 CC BY 4.0(署名)+ TCIA Data Citation Required
模态 二维 B 型灰阶超声(2D B-mode grayscale US)
规模 256 例扫描 · 256 名患者 · 266 个病灶 · 522 个文件
图像格式 PNG(原图 + 二值掩膜)
临床标签 XLSX(患者级 + 肿瘤级 + BIRADS + 影像组学)
体积 约 66.67 MB(图片掩膜 66.63 MB + 临床数据 39.23 KB)
任务 病灶分割 · 良恶性分类 · BIRADS 分级 · 影像组学 · 随访诊断
关键词 乳腺超声、乳腺癌、BIRADS、病灶分割、域外测试
代码仓库 github.com/best-ippt-pan-pl/BrEaST
资助项目 波兰国家研发中心 INFOSTRATEG-I/0042/2021
库内近邻 busi(539)、duke-breast-mri(440)、inbreast(542)、breastpathq(268)

§0 快速开始(5 分钟上手)

§0.1 三行定位

  1. 这是什么:一个把乳腺超声从「纯图像堆」升级为「带临床语义的多层标签库」的策划数据集——每一例扫描都标注了 BIRADS 描述符、病理确认结果与患者级体征。
  2. 为什么重要:乳腺超声长期缺乏带患者级标签 + 病理金标准的公开集;本集用 256 例精心策划样本填补了这一空白,且明确以 CC BY 4.0 授权,可用于商业友好的研究与产品验证。
  3. 怎么用:从 TCIA 下载 PNG 图像包 + XLSX 临床表 → 用官方 Python/MATLAB 脚本读入 → 自建 5 折划分 → 训练分割/分类模型 → 若手上已有别的乳腺超声模型,直接把本集当域外测试集衡量泛化。

§0.2 最小可用路径

# 1. 下载图片与掩膜(TCIA 公开直链,无需注册)
#    https://www.cancerimagingarchive.net/wp-content/uploads/BrEaST-Lesions_USG-images_and_masks-Dec-15-2023.zip
# 2. 下载临床数据表
#    https://www.cancerimagingarchive.net/wp-content/uploads/BrEaST-Lesions-USG-clinical-data-Dec-15-2023.xlsx
# 3. 取官方导入脚本(读 XLSX + PNG 到 MATLAB/Python 变量)
pip install openpyxl pillow numpy
# 脚本:import_BrEaST_dataset.py / import_BrEaST_dataset.m
# 仓库:https://github.com/best-ippt-pan-pl/BrEaST

§0.3 读者路径

  • 只想快速评估一个已有模型 → §7.2 域外测试流程 + §6.2 评估代码。
  • 要训练新分割模型 → §3 标注体系 + §6.1 预处理 Pipeline + §6.5 坑点。
  • 做 BIRADS/影像组学 → §3.3 描述符 + §4 临床标签 + §6.5 坑点 6。
  • 写论文/做合规 → §2 来源与身份 + §5 许可与获取 + §8 局限。

§1 身份与来源

§1.1 名字里的坑:它有三个写法

本数据集在文献与平台间存在三种写法,读者极易误判为多个数据集:

写法 出现场景 说明
Breast-Lesions-USG TCIA 官方采集名 官方机构命名的标准拼写
BrEaST 数据集作者的项目代号 / GitHub 仓库名 作者自用简称,论文中作为数据集昵称
Breast-Lesion-USG 部分第三方论文引用(少一个 s) 同一资源的误拼/变体

三者指同一资源。 本页统一采用 TCIA 官方名 Breast-Lesions-USG,并在首次出现时标注别称 BrEaST。任何在做数据集去重、元数据合并的下游系统,都应把这三个字符串归一化到同一实体。

§1.2 它不是 BUSI

这是最需要强调的身份核验结论。库内已有 BUSI 条目(rid=539),二者常被放在一起讨论,但绝非同物:

维度 BUSI Breast-Lesions-USG(BrEaST)
发布机构 开罗大学(埃及) 波兰科学院 IPPT PAN(波兰)
论文 Data in Brief 28:104863 (2020) Scientific Data 11:148 (2024)
规模 780 图 / 600 患者 256 扫描 / 256 患者 / 266 病灶
标签层级 图像级三分类 + 掩膜 患者级 + 图像级 + 肿瘤级三层
BIRADS 无 有(类别 + 7 描述符)
病理金标准 无系统病理标签 随访或粗针穿刺活检确认
许可 页面标 GNU FDL 1.3 CC BY 4.0

妙处在于:文献(arXiv:2508.17768)恰恰用 Breast-Lesions-USG 作为 BUSI 的域外测试集——域内 Dice 0.7726,换到去重 BUSI-A3 域外骤降 0.4855。如果二者是同一数据集,这种"域内 vs 域外"对照根本不成立。这一互证本身即证明两者独立。

§1.3 官方获取入口

§1.4 发布单位与团队

  • 牵头单位:波兰科学院基础技术研究所(Institute of Fundamental Technological Research, Polish Academy of Sciences,IPPT PAN),位于华沙。
  • 作者(9 人):Anna Pawłowska、Anna Ćwierz-Pieńkowska、Agnieszka Domalik、Dominika Jaguś、Piotr Kasprzak、Rafał Matkowski、Łukasz Fura、Andrzej Nowicki、Norbert Żołek。
  • IPPT PAN 归属:Pawłowska、Jaguś、Fura、Nowicki、Żołek。
  • GitHub 维护者:Norbert Zolek(账号 usgold)。
  • 临床合作单位:Ćwierz-Pieńkowska、Domalik、Kasprzak、Matkowski 标注为外部单位(具体医院名称未在公开页面逐条列全)。

§1.5 时间线

时间 事件
2023-12-15 图像与掩膜包打包(文件名内嵌日期)
2023-12-18 官方 GitHub 仓库首次提交(含导入脚本)
2024-01-08 TCIA 采集页 v1 更新,Status=Complete
2024-01-31 数据论文发表于 Scientific Data 11:148
2024 伴随 SPIE Medical Imaging 论文讨论参考分割不确定性
2025 第三方 arXiv:2508.17768 将其作为不确定性量化的 OOD 集
2026 数据论文被引已逾百次(Google Scholar)

§2 数据规模与结构

§2.1 硬数字一览

指标 数值 来源
扫描数 256 TCIA Subjects
患者数 256(1 扫描/患者) TCIA 正文
病灶数 266 个良恶性病灶 TCIA 正文
文件总数 522(256 原图 + 266 掩膜) TCIA Images 列
Studies / Series 256 / 256 TCIA Data Access 表
图像体积 66.63 MB TCIA 下载包
临床数据体积 39.23 KB TCIA XLSX
采集级总体积 66.67 MB TCIA Size 列

口径提醒:256(患者)≠ 256(扫描)≠ 266(病灶)≠ 522(文件)。四个数字分别描述不同粒度,正文引用时必须写明口径。522 = 256 + 266 恰好自洽,是校验数据完整性的一个好锚点。

§2.2 目录与文件组织

TCIA 以「采集(Collection)→ 病例(Study)→ 序列(Series)→ 图像(Image)」的组织方式托管。对本集而言:

BrEaST-Lesions_USG-images_and_masks/
├── <scan_001>.png            # 原图(B 型灰阶超声)
├── <scan_001>_mask.png       # 对应的二值病灶掩膜
├── <scan_002>.png
├── <scan_002>_mask.png
├── ...
└── (共 522 个 PNG 文件)
BrEaST-Lesions-USG-clinical-data.xlsx
└── 患者级 + 肿瘤级 + BIRADS + 影像组学标签表

关键点:本集的掩膜与图像是成对命名的(_mask 后缀),且一个扫描可能对应多个病灶掩膜——这正是 266 > 256 的原因。切分数据集时绝不能假设"一图一掩膜"。

§2.3 图像特性

  • 模态:二维 B 型(B-mode)灰阶超声。
  • 格式:PNG(原图与掩膜均为 PNG)。
  • 内容:乳腺组织扫描,含良性、恶性病灶以及正常组织示例。
  • 掩膜:放射科医师**自由手绘(freehand)**标注的肿瘤区域,二值图像。
  • 尺寸:官方未在采集页给出统一分辨率;典型训练流程统一缩放至 256×256(第三方基准的常见设置)。原始分辨率的分布属于遗留疑点,使用前应扫描全量确认。

§2.4 临床数据表(XLSX)字段概览

临床数据表是本集区别于"纯图像集"的灵魂,字段可归为四组:

  1. 患者级:年龄(age)、乳腺组织构成(breast tissue composition)、体征与症状(signs and symptoms)。
  2. 图像级:freehand 标注(标识肿瘤与其他异常区域)、关键所见解读。
  3. 肿瘤级:BIRADS 类别、7 项 BIRADS 描述符、肿瘤分类、组织病理诊断。
  4. 验证类:验证方法(随访 / 粗针穿刺活检)、随访结果。

⚠️ 7 项 BIRADS 描述符的具体名称未在 TCIA 采集页与 GitHub 逐条列出(页面仅写 “7 BIRADS descriptors”)。这是本页的一处遗留疑点——实际字段名须以下载后的 XLSX 表头为准,任何以"标准 BIRADS 字典"脑补字段名的做法都可能出错。

§2.5 与其他乳腺影像数据集的规模对照

数据集 模态 规模 标签层级 病理金标准 许可
BUSI 超声 780 图/600 患者 图像级 无系统病理 GNU FDL 1.3
Breast-Lesions-USG 超声 256 例/266 病灶 患者+图像+肿瘤级 随访/活检 CC BY 4.0
BUS-UCLM 超声 — 图像级 — —
UDIAT 超声 163 图 图像级 部分 —
Duke-Breast-MRI MRI — 图像级 有 —
InBreast 钼靶 — 图像级 有 —

读法:本集规模不大,但标签深度远超同规模超声集——这是它被选作"外部测试/策划基准"的根本原因。


§3 标注体系(三层标签)

§3.1 为什么叫"策划(curated)"数据集

乳腺超声领域的公开数据集大多只提供"图像 + 良恶性标签",缺乏临床闭环。本集的 curated 体现在三处:

  1. 多源确认:每一例都经**随访(follow-up)或粗针穿刺活检(core needle biopsy)**确认,而非仅凭影像印象。
  2. 三层标签:患者级、图像级、肿瘤级标签齐备,论文称其为"首个同时含三层标签的乳腺超声数据集"。
  3. 专业标注:由有乳腺超声经验的放射科医师手工 freehand 标注。

这决定了它的使用姿态不同于普通训练集——它更适合被当作带临床语义的验证/测试基准,而非纯粹的大规模预训练语料。

§3.2 三层标签的具体内容

患者级(Patient-level)
标签 说明
年龄(age) 患者年龄
乳腺组织构成(breast tissue composition) 腺体/脂肪构成描述
体征与症状(signs and symptoms) 就诊相关临床表现

患者级标签的价值在于支持按人群分层的误差分析——例如模型是否在某一组织构成类型上系统性失效。

图像级(Image-level)
  • freehand 标注:标识图像中的肿瘤及其他异常区域。
  • 关键所见解读:是否存在乳腺疾病(presence of breast diseases)。

注意"其他异常区域"这一措辞——标注并不仅限于主病灶,可能包含次级异常,做纯病灶分割时需要在预处理阶段明确取舍。

肿瘤级(Tumor-level)
标签 说明
BIRADS 类别 标准化风险分级
BIRADS 描述符(7 项) 形态、边缘、回声等半定量特征
肿瘤分类(tumor classification) 良/恶等
组织病理诊断(histopathological diagnosis) 活检病例的病理结论
验证方法(method of verification) 随访 or 活检

§3.3 BIRADS 描述符:价值与陷阱

BIRADS(Breast Imaging Reporting and Data System,乳腺影像报告与数据系统)是放射学会制定的标准化词典。本集为肿瘤与图像标注了 BIRADS 类别与 7 项描述符,这把数据集从"像素分割"提升到"可解释诊断特征"层面。

它的价值在于:

  • 支持**影像组学(radiomics)**建模:把描述符作为监督信号或可解释中间变量。
  • 支持多任务学习:同一图像同时预测分割掩膜、描述符、良恶性。
  • 支持可解释 AI:模型的中间表征可对齐到临床语义。

它的陷阱在于:

  • 描述符是半定量、主观的:不同医师对"边缘是否成角"可能给出不同判断。
  • 7 项具体名称未公开列全:只有下载 XLSX 才能确认真实字段名。切勿用"教科书 BIRADS 词典"脑补字段,否则代码会静默读空。
  • 不能用描述符替代病理:描述符是影像学的语言,不是诊断结论。

§3.4 掩膜标注的两点须知

  1. 单标注者:本集每例由一名放射科医师标注。作者团队自己的 SPIE 2024 论文表明,乳腺超声上人工参考分割的观察者内/间差异相当可观——这意味着你拿到的"金标准"本身带噪声,模型做到了 Dice 0.77 未必意味着它比"人类不一致度"更差。
  2. 多掩膜样本:一个扫描可能有多个病灶掩膜(266 > 256)。训练目标函数与评估脚本必须显式处理"一图多掩膜",否则会静默丢样本或错配。

§3.5 标注质量:与同类集对比

维度 BUSI Breast-Lesions-USG
标注者数量 放射科医师复核修正 单名乳腺超声专科医师 freehand
病理确认 无系统病理 随访 / 活检确认
患者级标签 无 有(年龄、组织构成、症状)
BIRADS 无 有(类别 + 7 描述符)
已知标注问题 重复图、掩膜不一致、混入非乳腺图 单标注者偏差、观察者不确定性

结论:本集在标签深度上胜出,在样本规模与标注冗余度上不及 BUSI。两者互补,而非替代。


§4 临床标签与验证机制

§4.1 随访 vs 活检:两种金标准强度

本集的一大严谨之处是不把所有病例粗暴标成"良/恶",而是记录验证方法,区分出两种证据强度:

  • 粗针穿刺活检(core needle biopsy):组织学证据,金标准最强。有活检的病例还给出组织病理诊断(具体病理类型)。
  • 随访(follow-up care):影像随访确认,证据较弱但覆盖那些无需活检的良性/正常病例。

实践含义:做二分类时,若你只保留活检病例,样本量骤减但标签最干净;若纳入随访病例,样本量回升但标签噪声上升。两种策略的指标不可直接比较,论文里必须写明。

§4.2 临床字段的建模用法

字段组 典型用法 注意事项
年龄 混杂因素校正、分层评估 数值型,注意缺失
乳腺组织构成 分层误差分析、域适应 类别型,编码需固定
体征与症状 多模态融合(影像+临床) 文本/类别,需清洗
BIRADS 类别 多任务监督、风险分层 有序类别,勿当纯标签
BIRADS 描述符 可解释中间层、影像组学 半定量,一致性弱
病理诊断 硬标签来源 仅活检病例有
验证方法 数据筛选依据 必须写进论文方法学

§4.3 缺失值的现实

由于"病理诊断仅活检病例有",临床表中必然存在结构性缺失——这不是数据质量问题,而是临床流程的真实反映。

真实数据的处理纪律:

  1. 区分"缺失"与"未做":未活检病例的病理字段应视为"不适用(N/A)“而非"缺失(NaN)”,二者在统计上含义不同。
  2. 不要用均值/众数填病理:会伪造金标准,污染下游标签。
  3. 建模时用掩码(mask):多任务学习中,缺失标签的损失项应被屏蔽,而非置零。

§4.4 去标识与合规

  • 患者隐私:TCIA 要求遵守 Data Usage Policy,禁止尝试再识别。
  • 去标识内容:无姓名、病历号、出生日期、精确检查日期。
  • 潜在残留:超声帧可能含烧录的机器文字或屏幕测量标注(burned-in text),严格合规场景应逐张检查或在预处理中裁剪。这一点属于遗留核验项。

§5 许可与获取

§5.1 许可:CC BY 4.0

本集以 CC BY 4.0(Creative Commons Attribution 4.0 International)发布。这是一个非常宽松的许可:

  • ✅ 可商用、可修改、可再分发。
  • ✅ 可训练商业模型。
  • ⚠️ 必须署名(给出作者与 DOI)。
  • ⚠️ TCIA 额外要求"Data Citation Required":使用本集必须引用其数据 DOI 10.7937/9WKK-Q141。

必须做的引用(数据):

Pawłowska, A., Ćwierz-Pieńkowska, A., Domalik, A., Jaguś, D., Kasprzak, P., Matkowski, R., Fura, Ł., Nowicki, A., & Zolek, N. (2024). A Curated Benchmark Dataset for Ultrasound Based Breast Lesion Analysis (Breast-Lesions-USG) (Version 1) [dataset]. The Cancer Imaging Archive. https://doi.org/10.7937/9WKK-Q141

必须做的引用(论文):

Pawłowska, A., et al. A Curated benchmark dataset for ultrasound based breast lesion analysis. Sci Data 11, 148 (2024). https://doi.org/10.1038/s41597-024-02984-z

§5.2 与 BUSI 许可的关键差异

BUSI Breast-Lesions-USG
页面标注许可 GNU FDL 1.3 CC BY 4.0
商用友好度 较差(FDL 属文档许可,用于数据有争议) 好(CC BY 明确适用于数据)
署名要求 有 有(+ 数据 DOI)

结论:若你的项目对许可清晰度敏感(如商业产品),Breast-Lesions-USG 的 CC BY 4.0 是显著优势。

§5.3 获取链(版本链)

版本 时间 内容 入口
v1 2024-01-08 更新 图片掩膜 + 临床数据 TCIA 采集页
打包文件 2023-12-15 BrEaST-Lesions_USG-images_and_masks-Dec-15-2023.zip TCIA wp-content 直链
临床表 2023-12-15 BrEaST-Lesions-USG-clinical-data-Dec-15-2023.xlsx TCIA wp-content 直链
图片与掩膜:https://www.cancerimagingarchive.net/wp-content/uploads/BrEaST-Lesions_USG-images_and_masks-Dec-15-2023.zip
临床数据  :https://www.cancerimagingarchive.net/wp-content/uploads/BrEaST-Lesions-USG-clinical-data-Dec-15-2023.xlsx
代码脚本  :https://github.com/best-ippt-pan-pl/BrEaST

当前仅 Version 1(Status=Complete),尚未发现修订版。文件名内嵌 2023-12-15 打包日期,可作为版本指纹。

§5.4 无门槛获取

  • 不需要提交申请、签署 DUA 或通过 IRB 审查。
  • 不需要注册 TCIA 账号即可下载公开包。
  • 只需遵守署名 + 不再识别两条底线。

这使本集成为教学、竞赛、快速原型的理想选择——下载即用。

§5.5 下载后的完整性校验

# 1. 解压后统计文件数,应得到 522 个 PNG(256 原图 + 266 掩膜)
ls *.png | wc -l          # 期望 522
# 2. 检查掩膜与原图配对(每个非 _mask 图应有对应 _mask)
ls | grep -c '_mask\.png' # 期望 266
# 3. 校验临床表与图像可对齐
python3.11 -c "import openpyxl; wb=openpyxl.load_workbook('BrEaST-Lesions-USG-clinical-data.xlsx'); print(wb.sheetnames)"

若文件数不等于 522,说明下载不完整或解压出错——不要用残缺数据训练再归因于"模型不行"。


§6 可运行 Pipeline(PyTorch)

本节给出一套从下载到评估的最小可运行流程。代码以教学清晰为第一目标,不追求最优性能。

§6.1 数据加载与预处理

# preprocessing.py —— 读取 BrEaST 图像、掩膜与临床表,构建 PyTorch Dataset
import os
from pathlib import Path
import numpy as np
import openpyxl
from PIL import Image
import torch
from torch.utils.data import Dataset
from torchvision import transforms as T

ROOT = Path("./BrEaST")                      # 解压后的目录
CLINICAL = ROOT / "BrEaST-Lesions-USG-clinical-data.xlsx"

def load_clinical(path=CLINICAL):
    """读取临床 XLSX 为 dict:scan_id -> 标签字典。"""
    wb = openpyxl.load_workbook(path, data_only=True)
    ws = wb[wb.sheetnames[0]]                # 首表为临床标签
    rows = list(ws.iter_rows(values_only=True))
    header = [str(h).strip() if h is not None else "" for h in rows[0]]
    out = {}
    for r in rows[1:]:
        if r is None or r[0] is None:
            continue
        rec = {header[i]: r[i] for i in range(min(len(header), len(r)))}
        out[str(r[0])] = rec
    return out

class BreastLesionUSG(Dataset):
    """一图一掩膜的最小实现;多掩膜样本见 §6.5 坑点 2。"""
    def __init__(self, root=ROOT, split_ids=None, size=256, train=True):
        self.root = Path(root)
        self.size = size
        ids = sorted(p.stem for p in self.root.glob("*.png")
                     if not p.stem.endswith("_mask"))
        self.ids = [i for i in ids if (split_ids is None or i in split_ids)]
        self.train = train

    def _img_tf(self):
        ops = [T.ToTensor()]
        if self.train:
            ops = [T.RandomHorizontalFlip(0.5),
                   T.RandomRotation(10),
                   *ops]
        return T.Compose(ops)

    def __len__(self):
        return len(self.ids)

    def __getitem__(self, idx):
        sid = self.ids[idx]
        img = Image.open(self.root / f"{sid}.png").convert("L")
        mask = Image.open(self.root / f"{sid}_mask.png").convert("L")
        img = img.resize((self.size, self.size), Image.BILINEAR)
        mask = mask.resize((self.size, self.size), Image.NEAREST)
        x = self._img_tf()(img)                          # [1,H,W]
        y = (np.array(mask) > 127).astype(np.float32)    # 二值化
        y = torch.from_numpy(y)[None]                    # [1,H,W]
        # 归一化(单通道超声)
        x = (x - x.mean()) / (x.std() + 1e-8)
        return x, y, sid

    def positive_ratio(self):
        """数据集级正像素比例,用于类别不平衡分析。"""
        pos = tot = 0
        for sid in self.ids:
            m = np.array(Image.open(self.root / f"{sid}_mask.png").convert("L"))
            pos += int((m > 127).sum()); tot += m.size
        return pos / max(tot, 1)

§6.2 划分策略(务必按患者/扫描分组)

# split.py —— 按扫描(患者)级别做 5 折,杜绝图像级泄漏
import numpy as np
from sklearn.model_selection import KFold

def make_folds(all_ids, n_splits=5, seed=42):
    """本集 1 scan = 1 patient,故按 scan_id 分组即可避免泄漏。"""
    ids = np.array(sorted(all_ids))
    kf = KFold(n_splits=n_splits, shuffle=True, random_state=seed)
    folds = []
    for tr, va in kf.split(ids):
        folds.append((list(ids[tr]), list(ids[va])))
    return folds

为什么必须按 scan_id 划分:同一患者的多个病灶若被分到训练与验证两侧,模型会"记住患者"而非学到病灶特征,指标虚高。本集一扫描一患者,按 scan_id 分组即等价于患者级划分——这比 BUSI(同患者多图且无官方 ID)更容易做对,是本集的一个隐性优势。

§6.3 训练循环骨架

# train.py —— U-Net 分割的最小训练循环
import torch, torch.nn as nn
from torch.utils.data import DataLoader
from preprocessing import BreastLesionUSG
from split import make_folds

class TinyUNet(nn.Module):
    """极简 U-Net,仅用于流程演示。"""
    def __init__(self, c=16):
        super().__init__()
        self.enc = nn.Sequential(
            nn.Conv2d(1, c, 3, padding=1), nn.ReLU(),
            nn.Conv2d(c, c, 3, padding=1), nn.ReLU())
        self.pool = nn.MaxPool2d(2)
        self.mid = nn.Sequential(
            nn.Conv2d(c, c * 2, 3, padding=1), nn.ReLU())
        self.up = nn.ConvTranspose2d(c * 2, c, 2, stride=2)
        self.out = nn.Conv2d(c * 2, 1, 1)
    def forward(self, x):
        e = self.enc(x)
        m = self.mid(self.pool(e))
        u = self.up(m)
        return self.out(torch.cat([u, e], dim=1))

def dice_loss(logit, target, eps=1e-6):
    p = torch.sigmoid(logit)
    num = 2 * (p * target).sum(dim=(1, 2, 3)) + eps
    den = p.sum(dim=(1, 2, 3)) + target.sum(dim=(1, 2, 3)) + eps
    return 1 - (num / den).mean()

def train_one_epoch(model, loader, opt, dev):
    model.train(); total = 0.0; n = 0
    bce = nn.BCEWithLogitsLoss()
    for x, y, _ in loader:
        x, y = x.to(dev), y.to(dev)
        opt.zero_grad()
        logit = model(x)
        loss = 0.5 * bce(logit, y) + 0.5 * dice_loss(logit, y)
        loss.backward(); opt.step()
        total += loss.item(); n += 1
    return total / max(n, 1)

if __name__ == "__main__":
    dev = "cuda" if torch.cuda.is_available() else "cpu"
    from preprocessing import ROOT
    all_ids = [p.stem for p in ROOT.glob("*.png") if not p.stem.endswith("_mask")]
    folds = make_folds(all_ids)
    tr_ids, va_ids = folds[0]
    tr = BreastLesionUSG(split_ids=set(tr_ids), train=True)
    va = BreastLesionUSG(split_ids=set(va_ids), train=False)
    print(f"fold0 train={len(tr)} val={len(va)} pos_ratio={tr.positive_ratio():.4f}")
    tl = DataLoader(tr, batch_size=8, shuffle=True, num_workers=2)
    model = TinyUNet().to(dev)
    opt = torch.optim.Adam(model.parameters(), lr=1e-3)
    for epoch in range(5):
        print(epoch, train_one_epoch(model, tl, opt, dev))

§6.4 评估:Dice / IoU 与逐折报告

# eval.py —— 分割指标与"不确定性—错误"相关分析
import numpy as np, torch

def dice_iou(pred, gt, eps=1e-6):
    """pred/gt 为 0/1 float 数组,逐样本返回。"""
    inter = (pred * gt).sum()
    dice = (2 * inter + eps) / (pred.sum() + gt.sum() + eps)
    iou = (inter + eps) / (pred.sum() + gt.sum() - inter + eps)
    return dice, iou

@torch.no_grad()
def evaluate(model, loader, dev, thr=0.5):
    model.eval(); ds, ious = [], []
    for x, y, _ in loader:
        p = torch.sigmoid(model(x.to(dev))).cpu().numpy()
        g = y.numpy()
        for i in range(p.shape[0]):
            d, j = dice_iou((p[i] > thr).astype(float), g[i].astype(float))
            ds.append(d); ious.append(j)
    return float(np.mean(ds)), float(np.mean(ious))

报告纪律:文献在 Breast-Lesion-USG 上的域内基线为 Dice 0.7726 ± 0.0212 / IoU 0.6801(arXiv:2508.17768,5 折、250 epochs)。你的结果若显著低于此,先排查数据泄漏、掩膜错配、类别极不平衡三类问题,而不是换模型。

§6.5 坑点(Pitfalls)——8 则

坑点 1:把 266 当成"图像数"

TCIA 的"266"是病灶数,"256"是扫描/患者数,"522"是文件数。写论文时把 266 写成"图像数量"是高频错误。口诀:256 人、256 扫、266 病灶、522 文件。

坑点 2:假设"一图一掩膜",静默丢样本

因为 266 > 256,说明存在一图多掩膜的扫描。若你的 Dataset 用 {id}_mask.png 单文件配对,多掩膜扫描的其余掩膜会被忽略;若你的划分或统计依赖"图数=掩膜数",会对不上账。
修法:先统计每个 scan 的 _mask 文件数,对多掩膜样本在训练时合并为单通道并集(或按最大病灶保留),并在论文中写明策略。

坑点 3:用 BIRADS 教科书字段名去读 XLSX

TCIA 与 GitHub 页面只写"7 BIRADS descriptors",没有列出字段名。若你凭标准 BIRADS 词典写 shape、margin 等列名去 df['shape'],很可能取到空列而不报错。
修法:先 print(df.columns) 打出真实表头,再按实际字段名映射;不要臆造列名。

坑点 4:把随访病例与活检病例混在一起算指标

本集的标签验证强度不一致:活检病例有组织学证据,随访病例只有影像确认。若不加区分地合并评估,指标会混合两种噪声水平,且与只报活检子集的论文不可比。
修法:明确声明的口径(全量 / 仅活检),并同时报告两种口径的结果。

坑点 5:按图像随机划分导致患者级泄漏

虽然本集 1 scan = 1 patient,使得按 scan_id 分组很方便,但仍有团队图省事按"文件"随机划分——一旦多掩膜样本被拆到两侧,同一病灶的掩膜跨集会泄漏。
修法:以 scan_id 为分组键做 KFold,绝不以文件为单位随机。

坑点 6:把 BIRADS 描述符当客观连续标签

描述符是半定量、有观察者差异的临床语言。用回归去拟合它、并声称模型"学会了 BI-RADS 判读",会在跨中心数据上立刻崩塌。
修法:描述符用于多任务/可解释性分析,不作为唯一评价指标;跨中心验证必须做。

坑点 7:忽略人工参考分割本身的不确定性

作者团队 SPIE 2024 论文指出,乳腺超声上人工参考分割与模型分割的差异可能和医师之间的差异同量级。这意味着单看 Dice 0.77 会误判模型"接近临床可用"。
修法:报告指标时同时给出不确定性量化(MC dropout / deep ensemble),并承认金标准噪声下界。

坑点 8:把本集当"大规模预训练语料"

256 例的体量不足以支撑从零训练大模型。文献(arXiv:2508.17768)正是在 BUSI 上训练、拿本集做域外测试,才暴露出域偏移(0.7726 → 0.4855)。
修法:把小数据集定位为评估/微调/外部验证用途;预训练请用更大规模的超声或其他影像语料。

坑点 9(附加):许可署名遗漏

CC BY 4.0 宽松但强制署名,TCIA 还要求引用数据 DOI。许多团队在论文中只引论文不引数据 DOI,属于不合规。
修法:方法与数据可用性章节同时给出论文 DOI + 数据 DOI。

§6.6 常见误解澄清

误解 事实
“它和 BUSI 是一个数据集” 完全不同:机构、规模、标签体系、许可全不同
“256 张图太少没法用” 定位是策划基准/外部测试集,不是预训练语料
“有 BIRADS 就能做诊断” 描述符是半定量特征,不是诊断结论
“有病理就全是金标准” 仅活检病例有病理;随访病例证据较弱
“Dice 0.77 就能上临床” 参考分割本身有不确定性,跨中心会显著下降
“CC BY 就是随便用” 必须署名并引用数据 DOI,禁止再识别

§7 基准与评估

§7.1 已公开的基准数字

本集较新,尚未形成如 BUSI 那样密集的横向基准确表。目前最有参考价值的一组数字来自第三方工作 arXiv:2508.17768(Musah 等,不确定性量化研究):

域内(in-distribution)在 Breast-Lesion-USG 上(Table 2 “Benchmark” 列):

方法 Dice IoU
ResUNet 0.4563 0.3444
UNet++ 0.3734 0.2564
Attention-UNet 0.4764 0.3000
SwinUNet 0.4436 0.3331
D-DDPM 0.7104 0.6140
Ours (Benchmark) 0.7726 0.6801

该方法在 Breast-Lesion-USG 上以 5 折、250 epochs 训练,取平均 Dice 0.7726 ± 0.0212。

⚠️ 注意表中 ResUNet/UNet++ 等经典方法的 Dice 明显偏低(0.37–0.48),这通常意味着这些基线未做充分调参或数据量不足,而非本集"难"。直接用这张表宣称"我们的方法碾压 U-Net"是不严谨的——低分基线更可能反映训练配置差异。正确做法:在同一划分、同一预处理、同一训练预算下复现基线再比较。

§7.2 域外(OOD)评估:本集的核心用途

同一模型换到去重的 BUSI-A3 上做域外测试:

设置 Dice IoU
Ours(域内 Benchmark) 0.7726 0.6801
Ours(BUSI-A3 域外 OOD) 0.4855 0.4309

域内 0.7726 → 域外 0.4855,跌幅接近 29 个百分点(相对降幅约 37%)。这就是本集最被引用的一条结论:单中心乳腺超声分割模型的泛化能力远低于域内指标所暗示的水平。

标准用法:

# 把在别的乳腺超声集(如 BUSI、BUS-UCLM)上训练的模型
# 直接在本集上零样本评估,量化域偏移
from preprocessing import BreastLesionUSG
from eval import evaluate
from torch.utils.data import DataLoader

def ood_test(model, dev, size=256):
    ds = BreastLesionUSG(split_ids=None, size=size, train=False)  # 全集作外部测试
    dl = DataLoader(ds, batch_size=8, shuffle=False, num_workers=2)
    d, j = evaluate(model, dl, dev)
    print(f"OOD Dice={d:.4f} IoU={j:.4f}")
    return d, j

§7.3 不确定性量化的基准经验

arXiv:2508.17768 同时报告了不确定性估计指标(在 256 例、83,099,921 个被分析像素上):

方法 Entropy(↓) MI(↓) ECE(↓) 像素准确率(↑)
MC Dropout 0.009 0.002 0.0367 0.9595
Deep Ensemble 0.021 0.013 0.0300 0.9607
D-E + MC Dropout 0.031 0.019 0.0303 0.9604

读出:深集成(D-E)及其与 MC Dropout 的组合在 ECE(校准误差)上优于单独 MC Dropout;在域外数据上,熵与互信息更高的区域恰好对应准确率更低的区域——即不确定性信号确实能标记"模型不可靠"的像素。

§7.4 人工参考分割的不确定性(被忽视的基线)

作者团队的伴随论文(SPIE Medical Imaging 2024, DOI 10.1117/12.3006442)专门分析了人工参考分割本身的准确性:三名放射科医师对乳腺超声肿瘤轮廓的标注差异可观,且受肿瘤类型与 BIRADS 类别影响。

实践含义:任何 DICE 只提升"一个百分点"的性能声称,都需要放到参考分割的不确定性区间里解读。若参考本身有 ±0.05 级别的变化,那么 0.77 → 0.78 的提升几乎不可分辨。这是本集相关研究里最容易被忽略、又最关键的一条方法学提醒。

§7.5 使用本集做基线的纪律清单

  1. 固定划分:公开你用的 5 折 ID 列表或随机种子,否则结果不可复现。
  2. 区分域内/域外:明确说明模型是在本集训练(域内)还是仅在本集测试(域外)。
  3. 报告逐折:给均值 ± 标准差,不要只报最好的一折。
  4. 标注口径:写明是全量 256 例还是仅活检子集。
  5. 不确定性下界:至少讨论参考分割噪声对本集指标的影响。
  6. 同预算复现基线:不要直接引用别人的低分基线表。

§8 局限、偏差与合规

§8.1 规模局限

  • 256 例、266 病灶:对从零训练大模型而言太小,容易过拟合。
  • 无官方划分:文献各自 5 折,结果横向可比性差。
  • 单国单中心为主:波兰单一国家来源,人口与设备多样性受限。

§8.2 标签局限

  • 单标注者掩膜:无多标注者冗余,无法直接估计观察者间一致性(需依赖作者伴随论文的间接结论)。
  • 病理仅活检病例有:随访病例的"良/恶"标签证据强度较弱。
  • BIRADS 描述符半定量:临床复现性未被独立审计。

§8.3 采集偏差

  • 操作者依赖:探头压力、增益、聚焦随检查者变化。
  • 机器设置未标准化:不同扫描的斑点噪声与对比度分布不同,模型会偏向特定分布。
  • 病例选择偏倚:本集富含需要诊断性检查的病例,良性/恶性比例不反映筛查人群。

§8.4 隐私与合规

  • 已按 TCIA Data Usage Policy 去标识;
  • 禁止再识别;
  • 超声帧可能含烧录机器文字,严格合规场景应逐张核验。

§8.5 使用边界(Do / Don’t)

✅ 推荐用途 ❌ 不推荐用途
分割基准与外部测试 临床部署 / 诊断决策
域内 vs 域外泛化研究 预后或疗效建模
良恶性分类 声称单一中心指标即泛化证据
BIRADS 描述符/影像组学 用描述符替代病理
不确定性估计与校准 再识别患者
跨集外部验证 当作大规模预训练语料

§8.6 与 BUSI 的局限互补

局限 BUSI Breast-Lesions-USG
重复图像泄漏 严重(需去重) 未见同类报告
非乳腺图混入 有(上颌骨超声) 未见报告
病理金标准 无 有(活检病例)
患者级标签 无 有
BIRADS 无 有
官方患者 ID 无 隐含(1 扫 1 患者)
规模 大(780) 小(256)
许可清晰度 较差(FDL) 好(CC BY)

结论:两者互补——BUSI 供规模与经典基准,本集供标签深度与外部验证。库内两条目应互链,帮助读者理解"训练用 BUSI、外部验证用 Breast-Lesions-USG"的常见组合(正是 arXiv:2508.17768 的范式)。


§9 生态与互链

§9.1 本集在乳腺影像生态中的位置

乳腺影像 AI 的数据资源可按模态分为三簇:超声(US)、钼靶(mammography)、MRI,病理(pathology)则提供下游确诊。本集属于超声簇中的**“策划基准”**角色。

乳腺影像数据生态
├── 超声(US)
│   ├── BUSI(780 图/600 患者)———— 规模最大、经典基准、需去重
│   ├── Breast-Lesions-USG(256 例/266 病灶)—— 标签最深、外部验证首选 ★本页
│   ├── BUS-UCLM ———— 另一策划超声集,常作跨中心对照
│   └── UDIAT ———— 小规模外部验证集
├── 钼靶(Mammography)
│   ├── InBreast(rid=542)
│   └── TN-Mammo-Breast-Density(rid=628)
├── MRI
│   └── Duke-Breast-MRI(rid=440)
└── 病理(Pathology)
    └── BreastPathQ(rid=268)———— 影像—病理闭环的下游

§9.2 建议互链点(库内条目 + rid)

互链纪律(R012/R018):正文只写条目名 + rid,URL 一律占位 https://www.qianfanghub.com/ai-ready-dataset/<slug>/0,真实 rid 由主会话入库后统一回填,写手不猜。

目标条目 rid 互链理由 建议 URL 占位
busi 539 最紧密:同模态、常互为训练/外部验证;本集是其 OOD 对照 https://www.qianfanghub.com/ai-ready-dataset/busi/0
breastpathq 268 乳腺病理图像,构成"影像→病理"闭环 https://www.qianfanghub.com/ai-ready-dataset/breastpathq/0
duke-breast-mri 440 乳腺 MRI,多模态互证 https://www.qianfanghub.com/ai-ready-dataset/duke-breast-mri/0
inbreast 542 乳腺钼靶,筛查模态互证 https://www.qianfanghub.com/ai-ready-dataset/inbreast/0
tn-mammo-breast-density 628 乳腺密度,可与本集"乳腺组织构成"标签呼应 https://www.qianfanghub.com/ai-ready-dataset/tn-mammo-breast-density/0

互链叙述建议:

  • 与 busi(539):强调"BUSI 训练 + Breast-Lesions-USG 外部验证"是当前乳腺超声分割研究的黄金范式(域内 0.7726 vs 域外 0.4855)。
  • 与 breastpathq(268):强调本集的组织病理诊断标签是通往病理金标准的桥梁。
  • 与 duke-breast-mri(440) / inbreast(542):强调多模态乳腺影像(US/MRI/钼靶)间的域差异与融合机会。

§9.3 外部生态锚点

  • TCIA(The Cancer Imaging Archive):美国国家癌症研究所的影像数据托管平台,本集主源。
  • Scientific Data(Nature):数据论文发表的期刊,保证方法学可溯。
  • IPPT PAN:波兰科学院基础技术研究所,牵头构建方。
  • GitHub best-ippt-pan-pl/BrEaST:官方导入脚本。
  • arXiv:2508.17768:第三方使用范式(OOD + 不确定性量化)。

§9.4 典型组合使用建议

场景 组合
训练分割模型并做外部验证 BUSI(539) 训练 → Breast-Lesions-USG 外部测试
多模态乳腺影像研究 本集(US)+ Duke-Breast-MRI(440) + InBreast(542)
影像—病理闭环 本集(US 影像 + 病理标签)↔ BreastPathQ(268)
良恶性分类泛化评估 任一乳腺 US 集训练 → 本集测试
不确定性/校准研究 本集(域内)+ 去重 BUSI(域外)

§10 速查、阅读路径与常见问题

§10.1 一页速查卡

【是什么】乳腺超声病灶策划基准数据集(BrEaST)
【谁做的】波兰科学院 IPPT PAN,2024
【在哪】TCIA,DOI 10.7937/9WKK-Q141
【许可】CC BY 4.0(署名 + 引用数据 DOI)
【规模】256 例扫描 / 256 患者 / 266 病灶 / 522 文件 / 66.67 MB
【格式】PNG(图+掩膜)+ XLSX(临床)
【特色】患者级 + 图像级 + 肿瘤级三层标签,BIRADS 类别 + 7 描述符
【验证】随访 或 粗针穿刺活检(病理仅活检病例)
【基准】域内 Dice 0.7726 / IoU 0.6801;域外 BUSI-A3 Dice 0.4855
【定位】外部测试 / 策划基准 / 微调,不是预训练语料
【必读】坑点 1-9(§6.5)、不确定性提醒(§7.4)

§10.2 按角色阅读路径

角色 建议路径
算法工程师(要跑通) §0 快速开始 → §5.5 完整性校验 → §6.1 加载 → §6.2 划分 → §6.3 训练
研究者(要发论文) §2 规模 → §3 标注 → §7 基准 → §7.4 不确定性 → §8 局限
产品/合规(要评估许可) §1 身份 → §5 许可 → §8.5 使用边界
数据治理(要建目录) §2.4 字段 → §9 互链 → §15 DAIMS
临床/放射科(要理解价值) §3.3 BIRADS → §4 临床标签 → §8 局限

§10.3 常见问题(FAQ)

Q1:它和 BUSI 到底什么关系?
不同数据集。BUSI 是开罗大学 2020 年的 780 图集(rid=539),本集是 IPPT PAN 2024 年的 256 例策划集。文献常把本集当 BUSI 的域外测试集,这恰恰证明二者独立。

Q2:256 例够用吗?
看用途。做外部测试/策划基准足够;做从零预训练不够。用它评估时要意识到域内指标不代表泛化。

Q3:为什么有 266 个病灶但只有 256 例?
因为一个扫描可能含多个病灶,各有独立掩膜。

Q4:7 个 BIRADS 描述符分别是哪些?
公开页面未列全,须下载 XLSX 看真实表头。不要凭教科书脑补字段名。

Q5:可以商用吗?
CC BY 4.0 允许商用,但必须署名并引用数据 DOI(TCIA Data Citation Required)。

Q6:需要申请才能下载吗?
不需要。TCIA 公开直链,无需注册或 DUA。

Q7:我怎么知道自己跑得对不对?
先做 §5.5 完整性校验(522 文件),再按 §6.2 按 scan_id 划分,最后对照 §7.1 的域内基线量级(约 0.77 Dice)。

Q8:为什么我的 Dice 远低于 0.77?
按序排查:① 掩膜配对是否错(坑点 2)② 是否按文件随机划分导致泄漏(坑点 5)③ 是否正像素极少导致模型全预测背景(先看 §6.1 positive_ratio())④ 归一化/缩放是否一致。

§10.4 方法学清单(投稿前自查)

  • [ ] 明确声明是全量口径还是仅活检口径
  • [ ] 报告 5 折均值 ± 标准差,而非单折
  • [ ] 说明划分的随机种子或折 ID
  • [ ] 区分域内/域外评估并分别报告
  • [ ] 讨论人工参考分割不确定性(§7.4)
  • [ ] 基线在同一预算下复现,不直接引用他人低分表
  • [ ] 方法与数据可用性章节同时给出论文 DOI + 数据 DOI

§10.5 与 BUSI 并列时的引用模板

本研究在 BUSI(Al-Dhabyani et al., 2020)上训练与内部验证,并在 Breast-Lesions-USG(Pawłowska et al., 2024;数据 DOI 10.7937/9WKK-Q141)上进行外部(域外)验证以评估跨中心泛化。所有分割指标以 Dice 与 IoU 报告,取 5 折交叉验证的均值 ± 标准差。


§11 案例解剖:一次真实的域外验证失败复盘

本节用一个可复现的思想实验,串起前文所有要点,展示研究者使用本集时最容易踩的坑。

§11.1 场景设定

假设你在一家医院拿到 BUSI 数据集,训练了一个 U-Net 分割模型,域内 5 折 Dice 达到 0.82,团队决定"上外部验证"证明泛化。你把模型直接跑在 Breast-Lesions-USG 上……

§11.2 第一步就出错的三个地方

错误 1:把 266 当图像总数去遍历

# 错误写法:以为图像数是 266
for i in range(266):
    img = Image.open(f"{root}/{i}.png")   # 死循环或大量 FileNotFoundError

正确做法:以 glob("*.png") 且排除 _mask 得到 256 个 scan_id(坑点 1)。

错误 2:掩膜配对只认单文件

如果你的配对逻辑是 f"{sid}_mask.png",那么含多病灶的扫描你会只取到第一个掩膜,导致评估时漏掉部分阳性区域,Dice 被低估。正确做法是先统计每个 scan 的掩膜数(坑点 2)。

错误 3:归一化尺度不一致

BUSI 与本集的采集设备、增益不同,像素强度分布不同。若你在 BUSI 上用 mean=0.5, std=0.25 硬编码归一化,直接迁移到本集会造成输入分布偏移。正确做法是逐数据集重算 mean/std,或在预处理中做统一的百分位裁剪。

§11.3 修复后仍会遇到的"真问题"

假设你已修正上述三点,模型在本集上得到的 Dice 只有 0.49 左右——这不是 bug,而是真实的域偏移。文献 arXiv:2508.17768 在此场景下报告的正是 0.4855。

诊断路径:

  1. 确认不是数据问题:跑 §5.5 完整性校验(522 文件)、§6.1 positive_ratio()(正像素比例应在个位数到十几个百分点的量级,若为 0 说明掩膜读错)。
  2. 确认不是划分问题:确认按 scan_id 分组,没有同病灶跨集(坑点 5)。
  3. 确认是域偏移:可视化几张预测,若模型把病灶边界系统性画大/画小,或对某一回声模式完全失效,即为域差异。
  4. 接受它:域偏移是乳腺超声的行业性难题,不是你的模型独有的失败。

§11.4 正确的叙事方式

❌ 错误叙事:“我们的模型在 Breast-Lesions-USG 上达到 0.82 Dice,证明泛化能力强。”(若 0.82 是域内数字却当外部验证,属张冠李戴)

✅ 正确叙事:“模型在 BUSI 内部验证 Dice 0.82,在独立的 Breast-Lesions-USG 外部测试 Dice 0.49,跨中心性能下降约 40%,表明单中心训练模型存在显著域偏移;为此我们引入域自适应/不确定性量化作为缓解手段。”

§11.5 从这个案例提炼的三条铁律

  1. 完整性先于建模:522 文件校验通过再开训。
  2. 配对先于切分:多掩膜处理策略必须先定。
  3. 域外数字才是泛化证据:域内高分不等于可用。

§12 下游实操清单(按任务类型)

§12.1 任务 A:病灶语义分割

输入:PNG 原图 → 标签:二值掩膜。

步骤 要点
1. 校验 `ls *.png \
2. 配对 显式处理多掩膜(并集或保留最大)
3. 划分 按 scan_id 5 折,固定 seed
4. 缩放 统一 256×256,掩膜用 NEAREST
5. 归一化 逐集重算 mean/std
6. 损失 Dice + BCE 组合,缓解正像素稀疏
7. 指标 Dice、IoU,逐折均值±标准差
8. 报告 声明域内/域外口径

最易失误:把多掩膜扫描的掩膜合并逻辑写错,导致阳性面积系统性偏小。

§12.2 任务 B:良恶性分类

输入:PNG 原图(或病灶 ROI)→ 标签:肿瘤分类(良/恶)。

步骤 要点
1. 标签来源 优先用活检病例的病理标签;随访病例谨慎使用
2. ROI 裁剪 用掩膜裁剪病灶区域,去除背景干扰
3. 类别平衡 检查良性/恶性比例,做加权或重采样
4. 划分 按 scan_id,防止同患者泄漏
5. 指标 AUC、准确率、敏感性/特异性
6. 报告 明确是否只含活检病例

最易失误:把随访病例与活检病例混合后不做口径说明,导致与文献不可比(坑点 4)。

§12.3 任务 C:BIRADS 描述符预测(多任务)

输入:PNG 原图 → 标签:7 项 BIRADS 描述符(半定量)。

步骤 要点
1. 先打表头 print(df.columns) 确认真实字段名,勿脑补(坑点 3)
2. 编码 有序描述符用序数编码或 soft label
3. 多任务头 共享骨干 + 每描述符一个分类头
4. 缺失处理 缺失项损失掩码屏蔽
5. 指标 逐描述符准确率/F1,勿只报平均
6. 定位 作为可解释中间层,不作唯一评价

最易失误:臆造字段名导致读取空列而不报错。

§12.4 任务 D:影像组学(Radiomics)

输入:PNG 原图 + 掩膜 → 输出:影像组学特征 + 临床结局。

步骤 要点
1. 特征提取 PyRadiomics 之类工具,基于掩膜提取形状/纹理/一阶特征
2. CLINICAL 表 本集 XLSX 已含 Radiomic Feature 类临床数据,可直接对照
3. 特征筛选 ICC 稳定性筛选 + 共线性剔除
4. 模型 传统 ML(LR/SVM/树模型)或与深度特征融合
5. 验证 内部交叉 + 外部测试(本集常作外部)
6. 报告 遵守 IBSI 报告规范

最易失误:忽略掩膜不确定性对形状特征的放大效应(边界抖动会显著改变周长、圆形度等)。

§12.5 任务 E:不确定性估计与校准

输入:任意分割模型 → 输出:逐像素不确定性 + 校准指标。

步骤 要点
1. 方法 MC Dropout / Deep Ensemble / 二者组合
2. 指标 Entropy、互信息(MI)、ECE、像素准确率
3. 域内外 必须同时在域内与域外评估
4. 相关性 检验"高不确定性 ↔ 低准确率"是否成立
5. 应用 用不确定性标记需要人工复核的像素/病例

参考数字(arXiv:2508.17768):D-E 与 D-E+MC 的 ECE(0.0300/0.0303)优于单独 MC(0.0367);域外高不确定性区域确与低准确率对应。


§13 跨中心验证方法学

§13.1 为什么跨中心验证是本集的"正业"

本集自发布起就被设计为可用于外部测试的数据资源。TCIA 采集页明确写道:可"as an external testing set for assessing a model’s performance"。因此,评估一个已有乳腺超声模型是本集最典型、也最有价值的用法。

§13.2 跨中心验证的四级阶梯

级别 做法 证据强度
L1 域内同分布 本集内部 5 折 弱(只证明同分布可学)
L2 跨中心零样本 别处训练 → 本集直接测 中(反映真实泛化)
L3 跨中心微调 别处预训练 → 本集少量微调 中强
L4 跨中心域自适应 无标签域自适应 强

本集在 L2 上的已知表现(0.4855 Dice)正是其价值所在——它如实暴露了域偏移,而非给模型虚高的分数。

§13.3 域自适应思路(面向本集)

  1. 风格归一化:直方图匹配、CLAHE、Z-score 逐图标准化,拉近 BUSI 与本集的强度分布。
  2. 频域对齐:超声斑点噪声是主要域差异来源,可用傅里叶域扰动或斑点噪声解耦。
  3. 对抗域适应:让特征提取器学习域不变表征。
  4. 不确定性加权:对高不确定性像素降低其损失权重,缓解域外噪声污染。

§13.4 报告跨中心结果的规范

  • 明确声明"域外"且不参与任何训练/调参(否则不是域外);
  • 给出域内基线作参照,量化下降幅度;
  • 可视化若干失败案例,说明失败模式(边界外扩、回声不敏感等);
  • 讨论可能的缓解手段与残余风险。

§13.5 多集交叉验证的建议组合

训练集 外部测试集 预期现象
BUSI Breast-Lesions-USG 显著下降(0.77→0.49 量级)
Breast-Lesions-USG BUSI(去重后) 下降(设备/人群差异)
BUSI + 本集 BUS-UCLM / UDIAT 下降但幅度较小(多中心训练)

结论:跨中心数字才是可信的泛化证据;单中心数字只能作为参考下界。


§14 结语

Breast-Lesions-USG(BrEaST)以不大的规模换来了罕见的标签深度:患者级、图像级、肿瘤级三层标签,BIRADS 类别与描述符,以及随访/活检双源确认。它以 CC BY 4.0 无障碍开放于 TCIA,最合适的角色是乳腺超声 AI 的策划基准与外部测试集。

用它时请牢记三件事:完整性校验先于建模(522 文件)、配对与划分先于训练(多掩膜 + scan_id 分组)、域外数字才是泛化证据(域内 0.7726 vs 域外 0.4855)。做到这三条,本集就是一把可靠的尺子;忽略它们,本集只会给出漂亮的假象。


§15 DAIMS 质量评估(24 项)

DAIMS(Data and AI Maturity/Quality Schema)从六个维度评估数据集就绪度,每项 0–4 分。

§15.1 评分表

维度 项目 得分 说明
数据可发现性 唯一标识(DOI) 4 数据 DOI 10.7937/9WKK-Q141 + 论文 DOI 齐备
官方主页 4 TCIA 采集页权威稳定
版本标注 4 Version 1,打包日期内嵌文件名
引用规范 4 TCIA 强制 Data Citation
数据可访问性 获取门槛 4 公开直链,无需申请
许可清晰 4 CC BY 4.0 明确
下载稳定 4 TCIA 长期托管
格式通用 4 PNG + XLSX
数据可用性 字段说明 2 临床字段体系描述充分,但 7 描述符名称未公开列全
标注规范 3 freehand + BIRADS,但单标注者
金标准强度 4 随访/活检双源确认
患者级标签 4 本集核心优势
数据可靠性 来源可信 4 Nature Sci Data + IPPT PAN
完整性可校验 4 522 文件锚点
同类对照 3 与 BUSI/UDIAT/BUS-UCLM 可比
更新维护 3 Complete 状态,未见后续修订
数据相关性 任务覆盖 4 分割/分类/BIRADS/影像组学/随访
临床相关性 4 病理确认,临床闭环
模态覆盖 3 仅超声(乳腺多模态需外部补)
时序信息 2 随访标签,无系统纵向影像序列
数据治理 隐私保护 4 TCIA 去标识 + 禁再识别
伦理合规 4 机构伦理 + 资助声明
偏差披露 3 单中心/单国,需用户自行声明
使用边界 4 明确推荐外部验证用途

§15.2 汇总

维度 满分 得分 得分率
可发现性 16 16 100%
可访问性 16 16 100%
可用性 16 13 81%
可靠性 16 14 88%
相关性 16 13 81%
治理 16 15 94%
合计 96 87 91%

解读:本集在可发现性/可访问性/治理上几乎满分(DOI、许可、隐私均规范),主要失分在字段说明(描述符名称未公开列全)与时序/模态覆盖。整体质量在乳腺超声数据集中属第一梯队,最大亮点是标签深度与获取无门槛,最大短板是规模与字段文档的完备性。


§16 附录

§16.1 官方来源清单

# 来源 URL
1 TCIA 采集页(主源) https://www.cancerimagingarchive.net/collection/breast-lesions-usg/
2 数据 DOI https://doi.org/10.7937/9WKK-Q141
3 论文 DOI(Sci Data 11:148, 2024) https://doi.org/10.1038/s41597-024-02984-z
4 IPPT PAN 作者页 https://www.ippt.pan.pl/en/partners/AnnaĆwierz-Pieńkowska
5 官方代码仓库 https://github.com/best-ippt-pan-pl/BrEaST
6 第三方域外基准(arXiv:2508.17768) https://ar5iv.arxiv.org/html/2508.17768

§16.2 下载直链

图片与掩膜:https://www.cancerimagingarchive.net/wp-content/uploads/BrEaST-Lesions_USG-images_and_masks-Dec-15-2023.zip
临床数据  :https://www.cancerimagingarchive.net/wp-content/uploads/BrEaST-Lesions-USG-clinical-data-Dec-15-2023.xlsx
导入脚本  :https://github.com/best-ippt-pan-pl/BrEaST (import_BrEaST_dataset.py / .m)

§16.3 引用格式

APA(数据):

Pawłowska, A., Ćwierz-Pieńkowska, A., Domalik, A., Jaguś, D., Kasprzak, P., Matkowski, R., Fura, Ł., Nowicki, A., & Zolek, N. (2024). A Curated Benchmark Dataset for Ultrasound Based Breast Lesion Analysis (Breast-Lesions-USG) (Version 1) [dataset]. The Cancer Imaging Archive. https://doi.org/10.7937/9WKK-Q141

APA(论文):

Pawłowska, A., Ćwierz-Pieńkowska, A., Domalik, A., Jaguś, D., Kasprzak, P., Matkowski, R., Fura, Ł., Nowicki, A., & Żołek, N. (2024). A Curated benchmark dataset for ultrasound based breast lesion analysis. Scientific Data, 11, 148. https://doi.org/10.1038/s41597-024-02984-z

BibTeX:

@article{Pawlowska2024,
  title   = {A Curated benchmark dataset for ultrasound based breast lesion analysis},
  author  = {Paw{\l}owska, Anna and {\'C}wierz-Pie{\'n}kowska, Anna and Domalik, Agnieszka
             and Jagu{\'s}, Dominika and Kasprzak, Piotr and Matkowski, Rafa{\l}
             and Fura, {\L}ukasz and Nowicki, Andrzej and {\.Z}o{\l}ek, Norbert},
  journal = {Scientific Data},
  volume  = {11},
  number  = {148},
  pages   = {1--13},
  year    = {2024},
  doi     = {10.1038/s41597-024-02984-z}
}

§16.4 遗留疑点(存照)

  1. 临床合作单位的具体医院/科室名称未在公开页面逐条列全。
  2. 超声设备型号与采集参数(探头频率、增益、机器牌号)未确认。
  3. 7 项 BIRADS 描述符的字段名清单未获(仅知数量为 7),须以下载后 XLSX 表头为准。
  4. 官方是否发布固定 train/val/test split 未知;文献一致采用自建 5 折。
  5. 本集专属横向 SOTA 基准确表尚未成型;已知 0.7726 Dice 为第三方自报。
  6. 原始图像分辨率分布未在采集页给出,使用前应扫描全量确认。
  7. 超声帧是否含烧录机器文字未逐张核验。

§16.5 双口径存照

项 口径 A 口径 B 处理
总体积 采集级 66.67 MB 下载包 66.63 MB 并列表述
计数 256 患者/扫描 266 病灶/522 文件 分列说明,禁止混用
引用量 Google Scholar 103 次 TCIA DataCite 4 次 注明平台不同
命名 Breast-Lesions-USG BrEaST / Breast-Lesion-USG 说明别名关系

§16.6 更新日志

日期 变更
2026-10-16 首版;基于 TCIA 采集页、Sci Data 论文、官方 GitHub 与第三方 OOD 基准三源互证

免责声明:本页为面向 AI 就绪用途的数据集解读,所有硬数字均标注来源;涉及未公开字段的表述已明确标为遗留疑点,请以官方下载内容为准。本页不构成临床诊断或治疗建议。


相关数据集导航

以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:

  • bus-bra — 共享标签:医学影像 / 乳腺影像 / 医学图像分割 / 图像分类 / 乳腺癌 / 评测基准
  • mias — 共享标签:医学影像 / 乳腺影像 / 医学图像分割 / 图像分类 / 乳腺癌 / 评测基准
  • bus-uclm — 共享标签:医学影像 / 乳腺影像 / 医学图像分割 / 图像分类 / 乳腺癌 / 评测基准
  • dbt-tu-ju — 共享标签:医学影像 / 乳腺影像 / 医学图像分割 / 图像分类 / 乳腺癌 / 评测基准
  • busi — 共享标签:医学影像 / 乳腺影像 / 医学图像分割 / 图像分类 / 乳腺癌
  • inbreast — 共享标签:医学影像 / 乳腺影像 / 医学图像分割 / 图像分类 / 乳腺癌
  • udiat — 共享标签:医学影像 / 乳腺影像 / 医学图像分割 / 图像分类 / 乳腺癌
  • bcdr — 共享标签:医学影像 / 乳腺影像 / 医学图像分割 / 图像分类 / 评测基准
  • 3d-mammogram — 共享标签:医学影像 / 乳腺影像 / 医学图像分割 / 乳腺癌 / 评测基准
  • mama-miaai-extended — 共享标签:医学影像 / 乳腺影像 / 医学图像分割 / 乳腺癌 / 评测基准

导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

返回 AI-Ready 数据集