返回列表

12th place solution: UNet with mask scoring head

336. SIIM-ACR Pneumothorax Segmentation | siim-acr-pneumothorax-segmentation

开始: 2019-06-24 结束: 2019-09-04 医学影像分析 数据算法赛
第12名方案:带有Mask Scoring Head的UNet

第12名方案:带有Mask Scoring Head的UNet

作者: fam_taro | 比赛排名: 第12名

恭喜大家!
感谢我的队友 @masaakikob@card7077

我发现了一些有趣的东西并想分享出来。
最终的提交仅由我的模型完成。

1. 我的策略

  • 预测分割
    • 图像尺寸 896
  • 预测类别
    • 图像尺寸 768
  • 整合预测结果
    • 移除低概率的掩码

2. 模型与数据集概览

2.1 数据流

MS-EUNet 在本文中指的是“带有EfficientNet B4的Mask Scoring UNet”。
TTA(测试时增强)采用水平翻转。

数据流图

2.2 关于数据集

数据集 描述
Stage1 TrainKaggle第一阶段训练集
Stage1 TestKaggle第一阶段测试集
Stage2 TrainKaggle第二阶段训练集(= 第一阶段训练集 + 第一阶段测试集)
CheXpert外部数据。移除了模棱两可的标签。所有图像:210k,气胸图像:17k
CheXpert_1从CheXpert采样,50k,气胸 : 非气胸 = 1 : 2
CheXpert_2从CheXpert采样,68k,气胸 : 非气胸 = 1 : 3
DatasetSeg_1仅包含“Stage1 Train”中的气胸数据,3k
DatasetSeg_2仅包含“Stage2 Train”中的气胸数据,3k
DatasetCls_1Stage1 Train + CheXpert_1,67k
DatasetCls_2Stage1 Train + CheXpert_2,67k
DatasetCls_allStage1 Train + CheXpert,220k

2.3 模型训练所用的数据集

模型 使用的数据集
SEResNext(Model1)DatasetCls_1
SEResNext(Model2)DatasetCls_2
LightGBMDatasetCls_all
MS-EUNetDatasetSeg_2
MS-EUNet(with ASPP)DatasetSeg_1

3. 分割

3.1 Mask Scoring Head(与原始版本略有不同)

class UEfficientNetB4WithMaskScoreHead(nn.Module):
    def __init__(self, dropout_rate=0.3, input_size=256):
        super(UEfficientNetB4WithMaskScoreHead, self).__init__()
        #############
        # ~~~~~~~~~ #
        #############
        kwargs = {'mask_ch': 1, 'num_classes