378. University of Liverpool - Ion Switching | liverpool-ion-switching
更新:所有解决方案代码现已在我的 GitHub 上发布:https://github.com/stdereka/liverpool-ion-switching
在开始描述我的方法之前,我想感谢以下 Kagglers:
我在早期阶段承认了几点:
我在 这里 描述了数据清洗和创建新数据的过程。不幸的是,测试集的私有部分因数据泄露而受损。这已在其他团队的此 帖子 中被揭露,因此我不打算在这里描述它。我与这次泄露的个人经历如下:用我创建新数据的方法,我在本地 CV 中遇到了这个泄露,为了获得可靠的 CV 分数,我必须与之斗争(我在建模部分解释了如何做)。在比赛结束前不到两天,我检查了测试数据是否存在此类泄露。结果让我震惊:我从未想过我能在私有部分找到它!
我使用基于 Wavenet 的架构作为最终模型的基线,该架构最初发布于此 kernel。以下想法对我有效:
我的第一次提交是两个模型的混合,这两个模型使用略有不同的缩放器和增强进行训练。此处未利用泄露,此提交是在我发现泄露之前计划的。CV 0.94359,Public LB 0.94664,Private LB 0.94529。
第二次提交仅在测试数据的第 7 批次上与第一次不同。为了预测该批次,我在缩减信号上训练了一个单独的模型,然后将减去的通道添加到其预测中。
我对这次比赛心情复杂。
一方面,我还没有建立一个能够处理真实世界离子切换数据的模型。目前其他人发布的解决方案也几乎不适用于不同于比赛数据集的数据。例如,漂移问题尚未解决,所有高分模型都是在干净数据上训练的。我在比赛最后几天发现的泄露让我对数据毫无信心。我意识到这种泄露可能隐含在其余数据中,因此复杂模型可能会自动利用它。
另一方面,我努力了一个半月,享受着模型改进的过程,这真的很有趣也很酷。