第27名方案概览 - 我在剧烈震荡中幸存并进入前1%
第27名方案概览 - 我在剧烈震荡中幸存并进入前1%
作者:kaggler (Master) | 比赛:SIIM-ISIC Melanoma Classification | 排名:27th (Top 1%)
由于我一直非常害怕公私榜分裂带来的剧烈震荡,所以我尝试构建一个极低方差的集成模型,结果证明这是一个不错的策略。
使用了 EfficientNet B0 ~ B7 (ImageNet) + B0 ~ B7 (Noisy-Student)
图像尺寸包括 256, 384, 512, 768, 1024,总共达到了 95 个模型!
我把它们全部集成在了一起!
为了构建从 B0 到 B7、尺寸从 256 到 1024 的网络,我使用了 Chris 的分层 Notebook,并保留了 Chris 制作的原始网络结构:
(EfficientNet -> GAP -> dense(1, smoothing = 0.05))
所有网络结构相同(从 B0 到 B7,尺寸 256 到 1024)。
应用了所有 2019 年外部数据和粗粒度 Dropout。
因为我注意到许多强大的竞争对手报告他们的 CV(交叉验证分数)都在 0.95 左右,我猜想如果我能让我的 CV 收敛到 0.95 左右,并且 CV 分数 > 0.95,那么我在这场比赛中应该会有不错的表现。
我是如何集成这 95 个深度学习模型的
基于网络的集成 (EfficientNet 0 ~ EfficientNet 7)
- MODEL 0 : EfficientNet B0 (256 到 1024, noisy + imagenet) CV 0.941 PB 0.9441 PV 0.9350
- MODEL 1 : EfficientNet B1 (256 到 1024, noisy + imagenet) CV 0.943 PB 0.9491 PV 0.9355
- MODEL 2 : EfficientNet B2 (256 到 1024, noisy + imagenet) CV 0.946 PB 0.9516 PV 0.9406
- MODEL 3 : EfficientNet B3 (256 到 1024, noisy + imagenet) CV 0.950 PB 0.9515 PV 0.9411
- MODEL 4 : EfficientNet B4 (256 到 1024, noisy + imagenet) CV 0.953 PB 0.9543 PV 0.9422
- MODEL 5 : EfficientNet B5 (256 到 1024, noisy + imagenet) CV 0.953 PB 0.9540 PV 0.9451
- MODEL 6 : EfficientNet B6 (256 到 1024, noisy + imagenet) CV 0.953 PB 0.9536 PV 0.9472
- MODEL 7 : EfficientNet B7 (256 到 1024, noisy + imagenet) CV 0.951 PB 0.9549 PV 0.9434
-> 结果:CV 0.9551, Public LB: 0.9555, Private LB: 0.9461
基于尺寸的集成 (256 to 1024)
- MODEL 8 : 所有 256 尺寸, EfficientNet 0 ~ 7, CV : 0.939
- MODEL 9 : 所有 384 尺寸, EfficientNet 0 ~ 7, CV : 0.953
- MODEL 10 : 所有 512 尺寸, EfficientNet 0 ~ 7, CV : 0.954
- MODEL 11 : 所有 768 尺寸, EfficientNet 0 ~ 7, CV : 0.949
- MODEL 12 : 所有 1024 尺寸, EfficientNet 0 ~ 7, CV : 0.938
我采用了 Power 集成(平方,即 prediction^2),这是因为 AUC 本质上是总结恶性和良性之间的排序。如果我的模型足够鲁棒,那么结果通过 Power 集成后应该与原始结果差别不大。
基于尺寸的集成 (应用平方 prediction^2)
- MODEL 13 : 所有 256 尺寸, EfficientNet 0 ~ 7, CV : 0.938
- MODEL 14 : 所有 384 尺寸, EfficientNet 0 ~ 7, CV : 0.947
- MODEL 15 : 所有 512 尺寸, EfficientNet 0 ~ 7, CV : 0.952
- MODEL 16 : 所有 768 �