返回列表

22nd Solution Summary

519. Feedback Prize - English Language Learning | feedback-prize-english-language-learning

开始: 2022-08-30 结束: 2022-11-29 智能评测 数据算法赛
第22名方案总结

第22名方案总结

作者: CPMP | 最终排名: 第22名

我预料到会有巨大的排名变动,但没料到会以这种方式跃升!

这是我部分的解决方案。我在后期与 Dieter 组队,希望增加多样性会有所帮助。我也知道他不会过拟合公共 LB(Leaderboard),这使得组队毫无风险。当我们拥有像这样的小数据时,过拟合始终是一个危险。最终的排名变动不幸证明了这确实是一个真正的风险。

事实证明,Dieter 的模型与我的模型截然不同,主要是因为他在解决方案中使用了基于嵌入的 SVR(支持向量回归),而我没有。

鉴于我忙于 Kaggle 之外的其他比赛(先是 MICCAI,然后是 NEURIPS),我没有太多时间投入到这次比赛中。因此我采用了众所周知的技术。我的解决方案主要是伪标签 + 知识蒸馏。开发过程相当快,两个月前有一个为期两周的阶段,那时我根据公共 LB 分数集成模型(别那样做!),然后在比赛的最后一周,我使用 CV(交叉验证)来指导我的工作。对我们来说,基于 CV 的集成仅在比赛最后一天击败了临时集成!这使得提交选择变得容易:我们最好的 CV 就是最好的公共 LB,结果也是最好的私有 LB。

除了标准基线之外,这是我所做的工作:

  • 我只使用了 deberta 模型的变体。
  • 为了修复 fb1 数据和 fb3 数据之间的标签分布不平衡,我决定将合理模型在 fb1 上的预测围绕 fb3 标签值进行四舍五入。然后我使用四舍五入预测的频率比来加权 fb1 样本。通过样本加权,伪标签被证明可以提高 CV 分数。
  • 我使用伪标签(对 fb1 数据的预测)进行知识蒸馏。我进行了两轮知识蒸馏。在每一轮中,我使用之前的模型(第 0 轮是仅在 fb3 数据上训练的模型)预测 fb1 数据,并将其添加到带有原始标签的 fb3 数据中。保留 fb3 标签有助于避免确认偏差。
  • 第一轮和第二轮知识蒸馏的模型具有 deberta 架构 + 一个简单的密集回归头。
  • 对于第一级模型(仅在 fb3 数据上训练),我还使用了一些带有有序回归的模型(定义见我的 petfinder 写up)。
  • 最终集成是我这边的 4 个模型加上 Dieter 的一个模型的混合。出于未知原因,我使用了 Huber 回归器来寻找权重。我通常使用岭回归,不确定我当时在想什么。我可能在比赛昨晚没睡够,哈哈。

这就是我在有限时间内所能做的一切。Dieter 在这次比赛中花的时间甚至比我还要少。考虑到我们在公共 LB 上大约排第 700 名,我们对最终出奇好的结果感到满意。组队也很棒,因为如果我单打独斗,我将是第 36 名。

同比赛其他方案