返回列表

21st Public - 53rd Private - Trust Your CV

396. SIIM-ISIC Melanoma Classification | siim-isic-melanoma-classification

开始: 2020-05-27 结束: 2020-08-17 医学影像分析 数据算法赛
黑色素瘤模型集成!

黑色素瘤模型集成!

感谢 Kaggle、SIIM 和 ISIC 带来了这场激动人心的比赛。感谢 Kagglers 们分享的精彩内容和深入的讨论!

在比赛初期,我就决定构建一个大型集成模型,而不是优化单一模型。在这个不平衡的数据集中,AUC 指标看起来非常不稳定,使用集成学习、大量的 TTA(测试时增强)以及裁剪增强有助于稳定该指标。

我最终的 3 次提交

我的主要(第一次)提交是一个最大化 CV(交叉验证)分数的集成模型,其中所有模型都使用了相同的 三重分层无泄漏 CVseed = 42。(CV 方法解释见 此处)。接下来,我相信公共 Notebooks 也能增加多样性,所以我最终的 3 次提交如下:

  • Sub_1 - 我集成的 9 个模型 - CV 0.9505 LB 0.9578 - Private 0.9418
  • Sub_2 - 我的 5 个模型加上 10 个公共单模型 - CV ??? LB 0.9662 - Private 0.9425
  • Sub_3 = 0.75 * Sub_1 + 0.25 * Sub_2 - CV ??? LB 0.9603 - Private 0.9429

裁剪增强

在使用外部数据、上采样和大型 EfficientNet 骨干网络进行训练时,裁剪增强是防止过拟合的关键。裁剪增强也有助于稳定 AUC,特别是在 TTA 中使用时。

之前我们看到使用不同的图像尺寸可以增加多样性(解释见 此处)。许多人没有意识到,你可以使用 512x512 大小的 TFRecord,但在随机的 256x256 裁剪区域上进行训练(每个 epoch 不同)。这样训练速度很快,因为你的 EfficientNet 只处理 256x256 大小,但你实际上获取的是 512x512 分辨率的特征。这使我们能够在 1024x1024 和 768x768 这样的大尺寸上快速训练(分别使用 512 和 384 的裁剪)。

在下图中,我们从 TFRecords 读取第一行的图像,然后随机裁剪,最后用第二行进行训练。

裁剪增强示意图

我的最终模型

以下 8 个模型的集成 CV 为 0.9500,Public LB 为 0.9577,Private LB 为 0.9420。然后将元数据与几何平均集成:image_ensemble**0.9 * tabular_model**0.1,CV 提高到 0.9505,Public LB 提高到 0.9578,Private LB 提高到 0.9418。

CV LB 读取尺寸 裁剪尺寸 effNet 外部数据 上采样
0.9360.956512384B520181,1,1,1
0.9350.937768512B62019 201