535. RSNA Screening Mammography Breast Cancer Detection | rsna-breast-cancer-detection
首先,我们要向所有参赛者表达我们的敬意,并感谢组织者举办这次比赛。由于指标的波动性以及我们必须在9小时内完成推理,这次比赛对我们来说非常艰难。最终,通过选择我们最好的本地CV模型(CV 0.534),我们赢得了第7名。
在这里,我们将描述我们是如何提高CV分数以及如何加快整个推理过程的。
我们通过基于规则的方式获取乳房ROI。简而言之,在将低于40的值转换为0之后,移除均匀的列和行,因为它们被假定为背景。这个过程简单、有效且快速。经过此预处理后,我们获得了平均纵横比为1:1.6~2的图像,然后将其调整为1520x912。这个分辨率是在比较了四个选项后确定的:①640x640, ②1024x1024, ③1520x912, 和 ④2689x1569。CV分数的顺序是 ① < ② < ③ > ④。此外,我们还生成了应用了Sigmoid窗技术的图像,这对提高分数没有显著效果,即使在集成中也是如此。但是,我们使用这些图像训练了一些模型,并将它们包含在集成中,以使我们的预测更加稳健。
最重要的是生成2种类型的输入图像,即乳房级和侧位级。乳房级由每张图像一个乳房组成,而侧位级通过简单地按列连接乳房,使每张图像包含两个或更多乳房。使用侧位级训练的模型比使用乳房级训练的模型弱得多(-0.04),但这两个级别的集成非常有效。
我们发现较大的模型不一定得分更好 (EfficientNetB2 < EfficientNetB5 > EfficientNetB7)。在包括 EfficientNetV2, EfficientNetB5, SeResNeXt50, ConvNeXt tiny/small, 和 NextViT base 在内的几个模型中,EfficientNetB5 表现最好(1520x912 上 CV 0.47),EfficientNetV2S 位居第二(1520x912 上 CV 0.45)。此外,我们将池化层从“平均”替换为“广义平均”,这使分数略有提高(0.005~0.01)。请注意,我们最终在推理中使用了 EfficientNetV2S,因为 EfficientNetB5 的推理时间比 EfficientNetV2S 长。然而,正如后文所述,通过在训练 V2S 时使用 B5 在外部数据上的预测,两者在指标上的差异可以忽略不计(CV 0.49,单模型)。
我们使用了 VinDr-Mammo 数据集作为外部数据,其标签是在聚合为侧位级后由乳房级预测定义的。我们发现使用该数据集使 CV 分数显著提高了 0.02。
推理时间限制非常紧张,因此我们努力确保推理按时完成。首先,我们使用 DALI 解码图像,并在 GPU 上预处理大部分图像。这显著提高了处理速度。然而,正如这里提到的,有些图像无法使用 DALI 处理,因此我们使用 dicomSDL 和 cup