返回列表

Really Simple Approach to Get 39th Place

626. NeurIPS - Ariel Data Challenge 2024 | ariel-data-challenge-2024

开始: 2024-08-01 结束: 2024-10-31 物理与天文 数据算法赛
获得第 39 名的非常简单的方法

获得第 39 名的非常简单的方法

作者: moto (队友:kyu999, Yuto)
发布时间: 2024-11-01
竞赛排名: 第 39 名

我想感谢主办方组织了如此精彩的比赛,也要感谢在讨论中分享绝佳想法的人,以及我的队友 kyu999 和 yuto。
我们只有一个月的时间来准备这次比赛,但我们非常享受这个过程。

我们的解决方案相对简单。
我们的解决方案由波长预测部分(WL Prediction Part)和 Sigma 预测部分(Sigma Prediction Part)组成。

波长预测部分 (WL Prediction Part)

波长预测部分基于 Sergei 的方法。
我们通过这种方法取得了 0.572 的 Leaderboard 分数。
我们将 Sergei 的方法扩展为多波长预测版本。
由于噪声的存在,仅通过 AIRS 中每个波长的光曲线预测不足以扩展此方法。
我们通过在 AIRS 的波长轴上取滑动窗口均值来降低噪声,这使得扩展该方法成为可能。
FGS1 数据似乎噪声较大,所以我们通过 FGS1 和 AIRS 光曲线的均值来预测 wl_1。

Sigma 预测部分 (Sigma Prediction Part)

我们利用随机森林(Random Forest)来预测 sigma。
该方法将 Leaderboard 分数从 0.572 提升到了 0.607。
我们本想找到更好的方法,但我们在截止日期前 2 天才发现这个方法,没有太多时间改进它。:(
我们认为模型容易过拟合,所以选择了随机森林。
我们使用以下特征来预测第 i 个波长的 sigma。
注意,q 表示 MAE/mean(signal during transit),其形状为 (num_planet, num_wavelength);s 表示通过 Sergei 方法进行的 wl 预测,其形状为 (num_planet, num_wavelength);data 表示光曲线信号,其形状为 (num_planet, num_time, num_wavelength)。

  • q[:, i:i+1]
  • s[:, i:i+1]
  • std(q, axis=1)
  • mean(q, axis=1)
  • entropy(abs(q) + 1e-8, axis=1)
  • std(s, axis=1)
  • mean(s, axis=1)
  • skew(data[:, :, i], axis=1)
  • kurtosis(data[:, :, i], axis=1)

我们简单地使用了 5 折分层 KFold(Stratified KFold)进行交叉验证。

深度学习方法(未奏效)

我们无法构建出 Leaderboard 分数优于 0.531 的 CNN 深度学习模型。
验证分数波动很大,但增大批次大小(batch size)并在 sigma 预测中添加 1e-8 使训练更稳定。
我期待看到深度学习的解决方案。

同比赛其他方案