第13名方案
第13名方案
作者:Tom (Grandmaster)
比赛排名:第13名
感谢 Kaggle 和马克斯·普朗克研究所举办了这场有趣的比赛,并祝贺所有的获胜者!以下是我方案的简要总结(Public LB: 0.67698, Private LB: 0.66713)。
预处理
- 排除不良图像(移除了13张图像)
- 将图像大小调整为 (320, 512)
数据增强 (使用 Albumentations)
- Gamma 校正 (limit=(50,100), p=0.5)
- 亮度调整 (limit=0.2, p=0.5)
- 平移 (limit=0.2, border_mode=0, p=0.5)
- 旋转 (limit=30deg, border_mode=0, p=0.5)
- 水平翻转 (p=0.5)
- 垂直翻转 (p=0.5)
验证
- 根据空掩码的数量进行 StratifiedKFold 分层交叉验证
模型 (7个模型 x 5折的集成)
- UNet-ResNet34 + CBAM + Hypercolumns
- 同模型1,但使用不同的随机种子
- UNet-ResNet18 + CBAM + Hypercolumns
- UNet-InceptionResNetV2 + CBAM+ Hypercolumns
- UNet-SeResNext50 + CBAM + Hypercolumns
- UNet-ResNet34 + CBAM + FPA
- UNet-ResNet18 + CBAM + FPA
我使用了验证得分最佳轮次的权重。
损失函数
- BCE + LovaszHinge
- 在此基础上,我使用了深度监督,对非空掩码应用 BCE+LovaszHinge 损失并乘以 0.1
优化器与调度器
- Adam & CosineAnnealingWarmRestart (20轮循环)
- 学习率 : 1e-4 到 1e-6
模型集成
- 对7个模型进行简单平均 (x 5折 = 总共35个模型)
后处理
- TTA (测试时增强) : 无 + 水平翻转 + 垂直翻转 + 水平和垂直翻转
- 像素阈值 = 0.45
- 小掩码阈值 = 18000
以上参数均通过模型1的5折交叉验证确定。
最终提交
- 我只查看了集成模型的 Public LB 分数。因此,我需要一些标准来选择最终提交方案。我决定选择两个在 Public LB 上表现良好且对小掩码阈值具有鲁棒性的提交,尽管它们并不是我 Public LB 分数最高的提交。幸运的是,我在榜单洗牌中幸存下来并获得了一枚金牌。