返回列表

2nd Place Solution

586. Child Mind Institute - Detect Sleep States | child-mind-institute-detect-sleep-states

开始: 2023-09-05 结束: 2023-12-05 健康管理与公共卫生 数据算法赛
第二名解决方案
作者:K_mat(Kaggle Grandmaster)
排名:第2名
发布时间:2023-12-06

感谢组织者举办这场有趣的挑战赛,也祝贺所有享受比赛过程的参与者!这是一场充满乐趣的竞赛,尽管数据只是非常简单的一维数据。我期待看到各种精彩的解决方案。

我的解决方案概述

我的处理流程包含以下阶段:

  • 第一阶段
    • 数据预处理与特征工程
    • 使用1DCNN(U-NET)进行事件检测与睡眠/清醒分类
    • 1D CNN的后处理(如峰值检测)
  • 第二阶段
    • 使用机器学习替代难以调整的后处理
    • 通过LGBM重新评分,考虑每天最多2个事件的限制
  • 第三阶段
    • 通过调整基础预测的步长尽可能多地预测事件
    • 使用LGBM对生成的预测进行评分
  • 集成阶段
    • 结合平均化和WBF集成方法

我认为第二阶段是最独特的部分。该模型用于预测从第一阶段获得的候选事件的每日准确率曲线。

第一阶段:事件检测与睡眠/清醒分类


第二阶段:考虑每天最多2个事件限制的置信度重评分

概念

我应用第二阶段主要基于以下两个原因:

1. 每天事件数少于2个

第一阶段的神经网络无法考虑本竞赛最重要的限制:每天最多发生两次事件。哪个更重要?

A) 当天第三个候选事件,置信度0.20
B) 当天第一个候选事件,置信度0.19

在许多情况下,后者比前者更重要,尽管其置信度较低。

长期特征处理

神经网络非常强大,但不擅长处理元特征和长期周期性特征。例如:
"他可能比平时睡得更久,这可能不是真正的醒来"
"与前几天相比,这次发作相对不明确"

如何训练第二阶段模型

第三阶段:尽可能添加更多事件

集成策略

  • 准备2个CNN模型
  • 对每个模型进行10次(5折×2随机种子)预测平均
  • 对每个模型运行第二阶段
  • 对两个模型进行类WBF集成
  • 运行第三阶段

消融实验

尚未完成

  • CV分数:
    • 第一阶段:0.826 (-0.019)
    • 添加第二阶段:0.832 (-0.012)
    • 添加第三阶段:0.842 (-0.002)
    • 添加模型集成(2个模型):0.844(基准,最终提交)
同比赛其他方案