返回列表

14th place solution: transformer and GRU

545. IceCube - Neutrinos in Deep Ice | icecube-neutrinos-in-deep-ice

开始: 2023-01-19 结束: 2023-04-19 物理与天文 数据算法赛
第14名解决方案:Transformer和GRU

第14名解决方案:Transformer和GRU

作者:Inar Timiryasov
发布时间:2023-04-20
得票数:12

我们要感谢此次竞赛的组织者和参与者!我们获益良多,也乐在其中。特别感谢ZhaounBooty早期分享的解决方案,Robin Smits分享的RNN思路的进一步优化,以及Iafoss分享的数据加载器。

以下是我们训练的两种模型的(初步)描述。

我们对整个训练数据集进行了预处理,并将其保存为内存映射文件。我们编写了一个可迭代数据集,实现了非常快速的数据加载。

Transformer模型:

私有和公开评分均为0.983

  • 大小:490万参数
  • 批大小:2000个事件
  • 隐藏层大小:256
  • 激活函数:SiLU
  • 层归一化
  • Transformer层数:3
  • 头数:4
  • 全局聚合:[求和、均值、最大值、标准差]

训练:

  • 学习率:0.002
  • 耐心值:1,乘法衰减:0.9
  • 运行77个epoch
  • 32块GPU
  • 预热:2个epoch

双向GRU模型:

私有和公开评分均为0.987

  • 大小:170万参数
  • 批大小:2048
  • 输入形状:(96, 6)
  • 层数:3
  • 隐藏层大小:160
  • 最后一个GRU单元的隐藏状态传递给一个全连接层(大小:512)

训练:

  • 最大学习率1e-3,带预热和余弦退火(OneCycleLR,pct_start: 0.001)
  • 使用权重衰减1e-4的AdamW优化器
  • 在完整数据集上于GTX 1080 GPU上训练14个epoch,耗时90小时

在这两种情况下,网络输出都是一个三维单位向量。我们随后直接使用平均角度误差作为损失函数。

有趣的是,尽管计算资源非常有限,GRU模型仍然取得了相当不错的分数。遗憾的是,我们没有时间在GTX 1080上进一步扩展它。

同比赛其他方案