返回列表

16th Place Solution - Probablistic Regression

670. NeurIPS - Ariel Data Challenge 2025 | ariel-data-challenge-2025

开始: 2025-06-26 结束: 2025-09-24 物理与天文 数据算法赛
第 16 名解决方案 - 概率回归

第 16 名解决方案 - 概率回归

具有概率输出层的神经网络

作者: Viji (专家)
排名: 第 16 名
发布日期: 2025 年 9 月 26 日

感谢组织者和我的 Kaggle 伙伴们举办了一场非常有趣的比赛。我从一开始的目标就是改进我在 Ariel 2024 中的神经网络解决方案(当时获得了铜牌)。我没有走基于物理的建模路线(许多其他人在这方面表现出色),而是专注于完善概率神经网络方法。

模型

核心模型是一个在 TensorFlow/Keras 中构建的双输入 Conv1D 神经网络。一个分支处理 FGS1 信号,另一个分支处理 AIRS 信号:

  • Conv1D (ReLU)
  • MaxPooling
  • Flatten

这两个分支被拼接成一个共享表示,结合了互补信息。与标准回归模型的关键区别在于概率输出层:模型不是预测每个波长的单个值,而是输出所有 283 个波长的均值和不确定性。

混合分布

输出定义为基于拉普拉斯的混合分布,包含 15 个分量 × 283 个波长。密集层的参数被分为:

  • 混合 logits(权重)
  • 每波长均值(locs)
  • 每波长尺度(不确定性)

稳定性技巧:

  • 使用基于方差的界限裁剪尺度
  • 应用 Softplus 以确保正值

TensorFlow Probability 的 DistributionLambda 随后构建完整的混合模型。这种设置让网络能够学习期望值和不确定性,这是挑战的核心。

数据预处理

预处理流程相当直接:

  • 加载原始数据
  • 温莎化 (Winsorize)
  • 将信号分段为瞬态形状

对于每个分段,将其均值与“未遮挡”部分(分段外部)进行比较。当我在原下降沿旁边添加分段瞬态的逆(穹顶)时,获得了意外的提升——模型受益于明确看到这两种对比模式。

进一步的增益来自于结合不同长度的分段,因此最终模型使用了多分段数据(粗 + 细)。

为什么这有帮助

  • 分段为瞬变提供了紧凑但信息丰富的上下文。
  • 添加穹顶(下降沿的逆)丰富了特征空间,帮助网络学习对比形状。
  • 多分段允许模型在细结构和粗结构之间更好地泛化。

训练损失

损失是带有波长加权的负对数似然 (NLL):

  • 权重在 FGS1 和 AIRS 之间分配
  • f_share = 0.1702 赋予了 FGS1 其相对重要性
  • 合并为单个权重数组,以便两个通道一致地影响训练

其他调整

  • 添加一个小的 VSN 门(Conv1D + sigmoid)带来了小幅但一致的提升。
  • 在不同折数和种子上集成不同的混合分布(拉普拉斯、正态、Logistic)有助于稳定分数。

结果与心得

  • 混合分布是最具影响力的部分,尽管它仍然不完美——每波长的变化有时会向均值 collapse。
  • 通过 10 折交叉验证,验证集 - 公共榜单差距通常在 0.018–0.02 左右(验证集较高),验证集 - 私有榜单差距 <0.01,因此泛化能力稳定。
  • 每个模型的完整训练时间约为 1 小时,这使得实验易于管理。

总的来说,开发一种能够提供竞争性分数的方法令人满意,最重要的是,它可以适应其他需要不确定性估计的数据集。再次感谢组织者和社区——这是一次很棒的学习经历。

同比赛其他方案