返回列表

6th place solution

510. Mayo Clinic - STRIP AI | mayo-clinic-strip-ai

开始: 2022-07-06 结束: 2022-10-05 医学影像分析 数据算法赛
第6名解决方案

第6名解决方案

作者: Kodai
比赛排名: 第6名

大家好,这是我第一次参加 Kaggle 比赛。我非常享受这次比赛的过程,并为此苦思冥想了大约三个月。我不知道自己为什么能获得金牌,但我确信这要归功于所有分享过 Notebook 或建议的朋友们。在这里,我将简要描述一下我的解决方案。

预处理

我通过以下步骤创建图块。在所有预处理步骤中,我没有调整图像大小

  • 从每张图像中等间距切出6个宽度为512的矩形(此步骤的目的是快速创建图块,并在不调整大小的情况下避免内存溢出)。
  • 从上述矩形中制作大小为 512x512 的图块,并从每张图像中选取前8个最暗的图块。
  • 将每个图块分割为大小为 32x32 的实例用于训练。

关于 pyvips 的使用,我参考了以下内核。感谢 @analokamus

验证与欠采样

我使用了结合欠采样的留出法。

  • 将患者 ID 按类别(CE, LAA)分层划分为训练集和验证集(80:20)。
  • 仅在训练数据集上进行欠采样,使 CE:LAA 的比例为 1:1。

模型

我创建了包含以下两种方法的集成模型:

  • CNN
  • lightGBM

仅使用 CNN 的模型与集成模型在 Private LB 上的差异很小(大约从 0.676 变为 0.668)。

顺便提一下,我为每个机构(中心 ID)创建了一个模型。(这种方法对测试数据集可能无效,因为测试集的机构可能与训练集不同。)

关于 CNN,我参考了以下内核。感谢 @vbookshelf

对我无效的方法

  • 灰度化
  • 直方图均衡化

感谢阅读。

同比赛其他方案