508. HuBMAP + HPA - Hacking the Human Body | hubmap-organ-segmentation
非常感谢主办方举办这场精彩的比赛!同时也感谢所有在这里分享实验经验的参赛者,特别感谢 @hengck23。
在本次比赛中,重量级的编码器和高分辨率输入效果更好。我使用了 3 个 CNN 编码器(efficientnet_b7, convnext_large, tf_efficientnetv2_l)和 1 个 Transformer 模型(coat_lite_medium)。Coat 作为单模型表现最好,但与 CNN 集成后得分更高。我也尝试了几个版本的 Swin v1 和 v2,但效果较差。
所有模型均在 3 种输入分辨率下训练:768 * 768、1024 * 1024、1472 * 1472,采用 5 折交叉验证。
模型还经过了训练以预测器官和像素大小。我认为这些辅助输出有助于训练出更鲁棒的模型。像素大小是根据调整后的输入分辨率计算的,并会随着训练增强过程而变化。
外部数据在这里帮了大忙。我使用这个笔记本 https://www.kaggle.com/code/carnozhao/hpa-data-download 下载了一些 HPA 数据,并从这里发布的来源以及之前的 Hubmap 和 Panda 竞赛中手动挑选了一些图像。
所有外部数据均使用初始模型的集成进行了伪标签处理。此外,训练数据也进行了伪标签处理,并在 30% 的情况下作为真实标签用于训练。
使用这个很棒的笔记本 https://www.kaggle.com/code/gray98/stain-normalization-color-transfer 对训练图像进行了重新着色,使用了 3 张不同的目标图像,并在训练期间以 15% 的概率代替原始图像使用。
验证时使用了测试时增强(翻转、裁剪、填充)+ 外部数据也被分折并用于验证,以获取最佳检查点。