535. RSNA Screening Mammography Breast Cancer Detection | rsna-breast-cancer-detection
大家好!
首先,感谢 Kaggle 团队和组织者举办这次比赛!同时,祝贺所有的获奖者!
我的预处理代码很大程度上依赖于公开的 Notebook(例如:去除字母、通过轮廓裁剪乳房)。
dicomsdl 和 nvjpeg2000 解码 .jpeg 文件。opencv2 提取乳房区域(基于轮廓)。在我的实验中,窗技术对分数没有正向影响,所以我决定不使用它。
强数据增强效果很好。轻度增强往往会导致过拟合。
由于缺乏时间和计算资源,我无法花费大量时间运行各种实验。因此,我只测试了少量的主干网络和训练方案。(大约 70% 的提交都是运行时错误和失误,哈哈)
这是一个完整的流程。
cbis-ddsm 和 vindr 数据集预训练分割模型。
malignant(恶性)标记为癌症 / BIRADS 5 标记为癌症。步骤 2 的模型重新标记外部数据。步骤 3 的模型进行初始化)。作为基线,我运行了步骤 1 ~ 2 和 5,达到了 CV 0.4885,LB 0.59(PB 0.46)。此外,我只使用 cbis-ddsm 数据集进行预训练测试,CV 和 LB 下降了约 0.02,但 PB 分数相同(CV 0.4656,LB 0.57,PB 0.46)。
截止日期前一周,我完成了步骤 ~ 5,得到 CV 0.5012,LB 0.55(PB 0.51)。遗憾的是,我没有选择它作为最终提交 : (
比赛最后一天,我集成了 effnet_v2_s 主干网络,得到 CV 0.5063,LB 0.56(PB 0.49)。
最后,我选择了 LB 和 CV 最好的模型作为最终提交。
我使用年龄、侧别等元特征以及预测值的(每侧乳房)统计数据构建了一个元分类器。通常,它能在 CV 和 LB(以及 PB)上带来约 0.02 的提升。
我担心会对某些元特征(例如:机器 ID、(预测的)密度等)过拟合,所以我决定只使用 3 个辅助特征(年龄、site_id、侧别)来训练模型。