第31名方案 - 单折 512x512 UNet EfficientNetB4
第31名方案 - 单折 512x512 UNet EfficientNetB4
作者:Vasiliy Kotov | 排名:第31名
祝贺所有的获奖者和参与者。
以下是我的解决方案:
预处理
在原始图像尺寸 1024x1024 上应用核大小为 32x32 的直方图均衡化(CLAHE)——(相比于更大的核大小,这个核大小能提供更多的细节)。
模型训练
- 使用 EfficientNetB4 作为编码器的 UNet 模型。
- 单层分层抽样。训练集占 83.34%,验证集占 16.66%。
- 优化器:Adam。
- 损失函数:BCE + Dice loss。
- 训练轮数:100 epochs。
- 非激进的数据增强,包括水平翻转(HFlip)和较低的亮度变化(为了保持直方图均衡化的效果)。
- 输入图像大小:512x512,批次大小:4。
- 梯度累积:4个批次。
- 学习率:余弦退火——4个周期,从 1e-3 到 1e-6。
- 随机权重平均:在最低学习率下进行 4 个 epoch。
预测
- 水平翻转 TTA(Test Time Augmentation)。
- 两步阈值处理:
- 找到适合分类任务的阈值(减少假阳性),每次通常在 0.95-0.99 之间。
- 找到适合分割任务的阈值——通常在 0.01-0.50 之间。
因此,对预测的 sigmoid 图(经过水平翻转 TTA 后)应用高值阈值。所有检测像素少于 2% 的掩膜被标记为空掩膜。如果检测像素超过 2%,则应用第二个较低的阈值来生成最终掩膜。