454. G2Net Gravitational Wave Detection | g2net-gravitational-wave-detection
首先,我要向组织者和所有团队表达深深的感谢,感谢你们让这场比赛变得如此有趣和激动人心。同时,我要热烈祝贺第一名,他们仅凭一个 ResNet34 模型就统治了这场比赛 :)
代码已发布在:https://github.com/analokmaus/kaggle-g2net-public
神经网络架构在提升性能方面起到了最重要的作用。以下是我使用的前端架构。总体而言,可训练的前端优于固定前端。
我对所有网络都应用了带通滤波器。CWT-CNN 和可训练前端 CNN 使用 [16, 512],1d-CNN 使用 [30, 300]。白化处理没有效果。
我在波形和频谱图上测试了几种类型的数据增强,但只有少数波形增强有效。我为 2d-CNN 网络添加了高斯噪声,为 1d-CNN 翻转了波形幅度。
在软(连续)伪标签测试数据集上重新训练使 AUC 提高了约 0.001。在伪标签过程中进行标签平滑也有少许帮助。
我保留了我所有实验的 oof(样本外)预测结果和预测值。使用交叉验证的 Ridge 回归模型来组合神经网络模型的输出。随着我在堆叠模型中添加更多模型,观察到 CV(交叉验证分数)和 LB(排行榜分数)都有持续的提升。最后,我运行了贪婪模型选择,选择了 20(/10/5) 个模型以最大化 CV 分数。
堆叠 20 个模型:CV 0.88283 / Public LB 0.8845 / Private LB 0.8829
堆叠 10 个模型:CV 0.88270 / Public LB 0.8842 / Private LB 0.8827
堆叠 5 个模型:CV 0.88242 / Public LB 0.8839 / Private LB 0.8825