623. ISIC 2024 - Skin Cancer Detection with 3D-TBP | isic-2024-challenge
各位 Kaggle 参赛者大家好!!
首先,我们要向比赛组织者和社区表示诚挚的感谢。在整个比赛过程中,我们有机会探索各种讨论,这些讨论成为我们想法的宝贵灵感来源。这段经历极具教育意义,让我们学到了很多。
就我个人而言,这是我第一次与这个特定的团队成员合作。我对他们卓越的技能印象深刻,发现这段经历非常具有启发性。
我们模型的基本结构与公共 Notebook 中常用的方法一致:将图像模型特征整合到表格数据中,随后使用多个 GBDT 进行推理。
我们对 GBDT 和图像模型都实施了几项增强。
对于基础特征,我们采用了以下公共 Notebook 中的特征工程技术:
此外,我们工程化了几个患者相关的特征以捕捉数据的不同方面:
为了引入多样性,部分模型仅使用了这些特征的子集。
num_boost_round 在 200-300 之间我们总共创建了九个图像模型,使用五种不同的训练设置以增加多样性。具体来说,我们整合了用于预测表格数据的辅助损失,并实施了自监督学习以提高准确性。此外,通过选择折叠间方差较低的模型,我们旨在获得稳定的性能。
iddx_full 簇的辅助损失:iddx_full 使用 tf-idf 向量化,随后通过 k-means 进行聚类。模型被训练为预测每个数据点到簇中心的距离作为辅助损失。以下九个模型使用各自的设置进行训练,并达到了列出的 CV 分数:
| 模型 | 训练设置 | CV 分数 |
|---|---|---|
| eva02_small | 标准训练 | 0.1537 |
| deit3_small | 标准训练 | 0.1534 |
| beitv2_base | Mixup 增强 | 0.1594 |
| convnextv2_tiny | 预测表格数据的辅助损失 | 0.1548 |
| swinv2_small | 预测 iddx_full 簇的辅助损失 |
0.1612 |
| eva02_small | 预测 iddx_full 簇的辅助损失 |
0.1580 |
| resnext50 | 预测 iddx_full 簇的辅助损失 |
0.1515 |
| convnextv2_nano | 带有表格数据的自监督预训练 | 0.1607 |
| swin_tiny | 带有表格数据的自监督预训练 | 0.1596 |
除了公共 LB 外,我们团队严重依赖此 CV 策略的结果进行模型评估和选择。对于本次比赛,我们实施了三重分层无泄漏 KFold 交叉验证策略,灵感来自以前 Kaggle 比赛中使用的方法。该方法确保 robust 模型验证,同时防止数据泄漏。
该 CV 策略的关键方面是:
我们为此比赛使用了 5 折 Stratified Group KFold 交叉验证,同时实现了所有这些方面。
原始灵感和更详细的解释,请参考:SIIM-ISIC Melanoma Classification - Triple Stratified CV
我们尝试 Incorporate 过去比赛的数据。为了对齐色调,我们应用了直方图匹配等技术。然而,不幸的是,这种方法没有在准确性上产生显著改进。
为了进一步验证,我们进行了一个实验,将 ISIC2018 的数据与当前比赛数据混合。然后我们构建了一个图像模型来区分过去数据和当前数据。结果显示,模型相对轻松地达到了 0.99 的 AUC。
基于这些结果,我们得出结论,一定存在我们尚未能在视觉上识别的显著差异。因此,我们决定在我们的方法中放弃使用过去比赛的数据。
[1] Du, Siyi, Zheng, Shaoming, Wang, Yinsong, Bai, Wenjia, O'Regan, Declan P., and Qin, Chen. "TIP: Tabular-Image Pre-training for Multimodal Classification with Incomplete Data." In 18th European Conference on Computer Vision (ECCV 2024).
[2] https://www.kaggle.com/competitions/siim-isic-melanoma-classification/discussion/175412