返回列表

Private LB 34th / Public LB 30th solution

420. Cassava Leaf Disease Classification | cassava-leaf-disease-classification

开始: 2020-11-19 结束: 2021-02-18 作物智能识别 数据算法赛
Private LB 34th / Public LB 30th 解决方案

Private LB 34th / Public LB 30th 解决方案

作者: anonamename | 比赛排名: 34th

感谢我所有的队友和参赛者。我想分享我们解决方案的摘要。

※部分团队被移除。我更改了主题标题,因为我们的 LB 排名发生了变化(Private LB 38→34th,Public LB 31→30th)。

摘要

模型流程图

TTA (测试时增强)

我们增加了 224*224 ViT 模型的 TTA 次数,因为在小图像尺寸下使用 RandomResizedCrop 进行 TTA 的准确性不稳定。

由于使用更强的增强(如 RandomBrightnessContrast)并没有提高 Public LB 分数,我们只进行了翻转。

根据 TTA 的随机数不同,Public LB 会有大约 0.001-0.003 的波动,但这个问题无法解决。

Blending (模型融合)

我们融合了 ViT-B/16、EfficientnetB4、ResNeSt101e 和 SE-Resnext50_32x4d 模型。

我们在 2019 年的数据上使用了无监督数据增强(半监督学习)或 BYOL(自监督学习),但这并没有对准确率的提高做出太大贡献。

通过对 k-fold 置信度取平均并融合五个或更多模型,我们能够实现稳定的 Public LB 分数超过 0.900。

我们曾基于混淆矩阵进行融合以获得更高的 CV 分数,但 Private LB 分数反而变差了。

Stacking (堆叠)

通过使用 Conv2d+MLP 进行 Stacking,我们将 Public LB 从 0.905 提高到了 0.907。

我们使用融合模型的预测标签作为伪标签。

为了避免过拟合,我们通过向特征中添加高斯噪声来训练模型。


评论

对于没有 Stacking 的简单平均融合,有一个提交结果在 Public 和 Private LB 上都达到了 0.902。

提交结果截图

正如在其他讨论中所讨论的那样,简单平均融合对于有噪声的测试数据集效果更好。

同比赛其他方案