返回列表

5th place solution (instead of)

454. G2Net Gravitational Wave Detection | g2net-gravitational-wave-detection

开始: 2021-06-30 结束: 2021-09-29 物理与天文 数据算法赛
第5名解决方案(关于EfficientNets的吐槽)

第5名解决方案(关于EfficientNets的吐槽)

作者:Gleb (Grandmaster) | 比赛排名:第5名

感谢 Kaggle、组织者以及社区,感谢大家在最后阶段的激烈竞争和开始时的热烈讨论。

这不算是一篇正经的解决方案帖,更像是对 EfficientNets 的吐槽。解决方案本身非常简单直接,就是“2D CNN 跑起就完事了”。

太长不看版 (TLDR)

  • PSD 白化:为每个通道预计算平均 PSD,使用自定义窗口函数:镜像 Sigmoid。
  • 一维数据增强:位移、噪声、Mixup、Cutmix、打乱。
  • 二维 CQT:默认设置 fmin=16, fmax=1024, hop=12。
  • 模型集成:5个 2D CNN 集成,配合 TTA(测试时增强)、模型和 EMA(指数移动平均)。
  • 结论:EfficientNets 并没有那么好用(对我来说)。

简介

因为我对比赛问题一无所知,也没有任何处理一维音频频谱图类任务的经验:我决定进入完全研究模式,专注于特定的神经网络架构。

免责声明:CNN 本不该是处理频谱图的最佳选择,但它们确实有效。我也尝试过 Transformers,它们肯定能跑通,但在分数上,我在 LB(排行榜)上勉强只能达到 88.+。不过我对 Transformers 还是很新手。

关于 EfficientNets

你可能会说,这真是个“原创”的选择。确实,很多人出于某种原因在使用 EN(EfficientNets),但我不怎么用。我不使用 EN 家族是因为它并不……高效。

这已经不是什么秘密了,有一些论文指出了这一点(例如 RegNet, GENet, EffnetV2 等)。但是,如果我之前一直都错了,而它的“图像/秒-准确率”比值其实要好得多呢?

答案是否定的。

我在经过大量调整和拟合后得到的 EN 最佳结果,在第一次尝试时就被 RegNet 甚至 ResNet 轻松击败了(虽然差距不大)。而且它们快了 4 倍。

当然,在某些数据集上 EN 会表现更好,但我还没找到过,除了 ImageNet1k 以外。

造成这种情况的原因可能有很多,我的想法是:这是因为 EN 对 ImageNet1k “过拟合”了(可能是由于 NAS 神经架构搜索或复合缩放 compound-scaling)。

我最好的 EN 集成分数是 LB 8830,在那之后我放弃了,并在比赛最后几天把 ResNets 加入了组合。

感谢阅读,如果你还没尝试过其他架构,请考虑一下。

同比赛其他方案