Kaggle “Reducing Commercial Aviation Fatalities” 比赛 生理数据分析
1、背景
Kaggle在2018 年 12 月 20 日举办“Reducing Commercial Aviation Fatalities” 比赛,通过收集飞行员的生理数据,判断飞行员何时会遇到麻烦吗?该比赛主要分析飞行员的问题,因为航班多、时间不固定,飞行员会出现疲劳、时差和呼吸道问题。因此,当飞行员进行飞行操作时,他们会进入airplane state awareness (ASA)。飞机状态意识(ASA)是飞行员的一种性能属性,飞行员应能意识到飞机状态的任何变化并迅速做出反应。失去飞机状态意识可能会导致许多危险情况,并可能导致飞机失控,出现偏离预定飞行路线的极端情况,或者换句话说,飞行员在分心、昏昏欲睡或处于其他危险认知状态时,注意力管理不力。
2、 数据集与数据分析
本数据集主要包含四个生理数据:脑电图 (EEG)、心电图 (ECG)、呼吸传感器(R)、皮肤电化反应(Gsr)。我们将依次对这些数据进行处理,以获得更有效的特征。生物传感器很容易受到外界噪音的影响。这可能包括灯光(闪烁频率为 50/60Hz,取决于您的交流电频率)和其他电气设备。这些生理数据通常包含很多的噪音,如果不去除噪声,这一特征就没有用处。同时,我们需要对这些生理信号进行处理,以获得更有用的特征数据。
2.1、脑电图 (EEG)数据处理
脑电图是大脑表面所有电活动的总和。这种活动必须穿过层层软组织、骨骼和皮肤,因此数据嘈杂也就不足为奇了,我们需要进行处理,以获得更有用的特征数据。
本数据集的提供的EEG数据相当典型,头皮上有 20 个电极,每个导联中的字母表示该导联最靠近大脑的部位(前额叶(fp)、颞叶(t)、额叶(f)、顶叶(p)、枕叶(o)、中枢(c)),奇数在左,偶数在右。
2.2、心电图 (ECG)数据处理
心电图ECG可以测量心脏的电活动。这是单导联心电图,用于分析心律和心率。虽然心电图的形状可能因人而异或,但每一拍的心电图形状变化不大。
2.3、呼吸和皮肤电化反应数据处理
呼吸传感器(Respiration sensor)是对胸部起伏的简单测量。它代表膈肌和腹部的肌肉活动。我们知道,当一个人生理上受到压力时,呼吸频率会增加。由于呼吸数据绘制出来时,似乎在很大程度上会受到噪音的影响。
3、建模
LightGBM(Light Gradient Boosting Machine)是一种梯度提升框架,属于基于树的集成学习算法。与传统的梯度提升算法相比,它在训练效率和内存使用上有显著的优势,使其成为处理大规模数据集时的理想选择。它的核心思想与其他梯度提升框架相似,通过迭代地训练弱学习器(通常是决策树)来逐步提升模型性能。LightGBM采用基于直方图的决策树学习算法,即将数据集按照特征的分布划分成直方图,通过直方图进行决策树的建立,从而提高了训练速度。
本次标签有四类是多分类问题,因此使用多类对数损失用于模型的性能评估。多类对数损失定义如下:
下图展示,使用训练的模型在验证集预测的混淆矩阵,从上图我们可以发现A、C状态数据能够100%预测成功;B状态有98%概率预测为B,2%的概率预测成A;D状态有77%概率预测为D,23%的概率预测成A;这个结果可能是D状态它的表现与A状态比较相似,导致现有特征不能很好区分D状态。