第3章 基于心电图信号QRS波群的压力分类时间分析
摘要
本文证明,利用低至5秒数据流的心电图(ECG)信号即可用于检测和分类个体的压力水平。该分析的重点是确定分类压力水平所需的最少心电图数据。应激水平的检测时间对于预防心脏骤停和其他异常可能至关重要。
10名驾驶员在不同交通状况下驾驶时采集的心电图数据被分割为60、30、20、15、10和5秒片段。实验采用两种压力水平(低和高),并提取Q、R和S特征点的特征,使用朴素贝叶斯、逻辑回归、多层感知机、SMO(序列最小优化)、IB1(最近邻)、J48(决策树)和随机森林等分类器进行实验。
结果表明,压力可以被高准确率地识别。研究发现,即使仅使用5秒数据流,在随机森林双倍交叉验证测试中也能达到87.98%的准确率,为快速应激检测提供了可能。
关键词 心电图信号 · 时间分析 · 压力分类 · 朴素贝叶斯分类器 · 多层感知机 · 决策树 · 随机森林 · 交叉验证
3.1 引言
随着可穿戴设备的普及,这些设备能够与人体交互并监测生理信号,医生和公司在寻找方法,利用这些设备提供更好的医疗保健和诊断。人体内的压力是许多异常的关键因素,并与多种健康状况相关。根据心脏骤停基金会的说法,慢性工作压力会显著增加发生“心脏病发作”的可能性。每一分钟都会使个体产生一定程度的压力,无论是良性压力还是不良压力。如果未能及时提醒个体,这种压力可能导致心脏骤停。
研究表明,心电图(ECG)可作为检测压力的生理信号之一[1–5, 9–11]。对于心电图信号(图 3.1),压力分类是基于特征点(单个心跳的局部信息)或非特征点(整个心电图波形的信息)或两者结合来进行的。
希利和皮卡德 [8] 采用来自肌电图(EMG)、呼吸、瞬时心率(从心电图中提取)以及皮肤电反应(GSR)和其他特征的多传感器数据进行了压力分析。这些作者开展了同一水平内的应激检测,使用留一法交叉验证方法,发现高压力的预测准确率为97.4%,中等压力的预测准确率为94.7%。
阿克巴斯的另一项研究 [1] 计算了所有信号中提取的平均特征值和每分钟平均收缩次数在三种压力水平之间的差异。
邓等人[3, 4]利用主成分分析研究了压力,发现足部皮肤电反应持续时间、手部皮肤电反应持续时间、手部皮肤电反应面积、足部皮肤电反应面积和足部皮肤电反应频率是该数据集的关键特征。随后在 2013[5],中,他们通过结合特征选择与信号选择进一步开展了研究。采用十折交叉验证(平均6次),使用所有特征时,支持向量机的准确率达到74.5%;而使用上述5个特征时,C4.5算法的准确率达到85.46%。然而,他们仅使用了65个数据样本。
辛格和奎亚姆 [10, 11]已使用多传感器数据的信号融合进行压力分类。他们报告称,利用神经网络检测10名驾驶员中6人的压力,准确率达到80%。
3.2 本工作的意义
在所有上述研究中,用于分类分析的心电图数据的时间段并非考虑因素,且使用了1分钟到15分钟的长时间段数据[1–5,9–11],这极大地限制了基于心电图的设备在检测和预防心脏及其他与压力相关的健康状况方面的适用性。
此外,以往的研究主要关注心电图的衍生信号——瞬时心率,用于压力分类分析。如今,借助商用设备,可以实现全天候心电图数据记录。若将这些数据用于识别压力水平,将在健康监测和诊断方面开辟新的途径。过去,患者或用户需要前往诊所,在训练有素的临床医生监督下进行跑步机或其他类似设备上的运动测试以检测压力水平。如果能够通过可穿戴设备快速识别压力水平,则可以避免许多与临床测试相关的问题,并为医生提供全天候的实时压力水平数据。此外,使用多种生理信号[1–5, 10, 11]进行压力分类是一项繁琐且耗时的任务。在大多数情况下,特别是可穿戴设备可能不具备此类多传感器压力检测所需的所有不同类型传感器。仅使用心电图的QRS波群进行压力分类还可以减少整体计算时间,同时加快分类过程。
表 3.1将我们的工作与先前的研究进行了比较,这些研究使用相同的数据集进行压力检测(见第 3.3节)。
| 使用的信号 | 特征点 | 准确率 | |
|---|---|---|---|
| 希利和皮卡德[7] | 心电图,肌电图 呼吸, 皮肤电反应 | 心瞬率时 | 高压力下97.4% |
| 阿克巴斯 [1] | 心电图, 肌电图, 呼吸,皮肤电反应 | 瞬时 心率 | 无分类 执行 |
| 邓等人[3, 4] | GSR | NA | 78.46% |
| 邓等人[5] | GSR | NA | 74.5–85.46% |
|
辛格和奎亚姆
[10, 11] | 心电图, 肌电图, 呼吸, 皮肤电反应 | 瞬时 心率 | 总体达到80%(6名驾驶员) 10名驾驶员 |
| 克山等人 [9] | ECG | QRS波群 | 88.24%完整周期 实例 |
| Our | ECG | QRS波群 | 使用5秒的87.98–100% |
3.3 心电图数据和QRS波复合体
心电信号在正常人中至少包含五个波,即P波、Q波、R波、S波和T波。QRS波群由心室的去极化产生,通常是心电信号中最显著的部分。Q波对应于室间隔的去极化,是第一个初始向下的或“负性”偏移。R波对应于心室主体的去极化,是紧随其后的向上偏移(前提是它穿过等电位线变为“正性”)。S波对应于心室去极化的最后阶段,位于心脏基底部,是随后向下的一次偏移,前提是它穿过等电位线短暂变为负性,然后回到等电位基线。
本研究使用的数据来自PhysioNet [6],详见“汽车驾驶员压力识别”部分。该数据集包含17名驾驶员的多传感器信号(心电图、肌电图、足部皮电反应、手部皮电反应、呼吸和心率)。根据我们对先前的研究[1–5, 9–11]使用该数据集的观察结果,我们选择了五名驾驶员的压力数据(表3.2)。这五名驾驶员的数据记录良好,且无噪声干扰。
由于我们需要比较结果以研究压力检测所需的最短时间间隔,因此我们考虑了每个驾驶阶段的5分钟间隔。如表3.2所示。此处假设个体所承受的压力仅由交通状况引起。
在我们的研究中,我们考虑了两种情况——低压力和高压力。根据希利 [8],所解释的实验设置,我们将初始休息和最终休息的数据视为低压力,将城市1、城市2和城市3(表 3.2)视为高压力数据。使用Cygwin和PhysioNet中的预定义命令对数据进行标注 [6]。在标注文件上运行自定义的Java程序,以提取表 3.3中描述的特征,并生成属性‐关系文件格式(ARFF文件)。然后在Weka中使用该ARFF文件进行低压力和高压力之间的分类。
| 驾驶员 | IR | C1 | C2 | C3 | FR |
|---|---|---|---|---|---|
| DRIVE06 | 5–10 | 19–24 | 38–43 | 55–60 | 70–75 |
| DRIVE08 | 5–10 | 19–24 | 39–44 | 55–60 | 70–75 |
| DRIVE10 | 5–10 | 19–24 | 40–45 | 55–60 | 70–75 |
| DRIVE11 | 5–10 | 19–24 | 37–42 | 55–60 | 70–75 |
| DRIVE12 | 5–10 | 19–24 | 37–42 | 55–60 | 70–75 |
其中 IR 和 FR 分别表示初始休息和最终休息,对应 低压力数据。C1、C2 和 C3 分别代表城市1、城市2 和 城市3,对应高压力数据
| 特征 |
|---|
| •平均QRS间期 |
| •平均RR间期 |
| •平均QQ间期 |
| •平均SS间期 |
| •平均QR间期 |
| •平均RS间期 |
| •平均心跳次数 |
3.4 压力分类分析
通过与医生的讨论,我们了解到R‐R间期是心电图数据中用于压力检测的一个重要特征。随着压力的增加,包含PQRST波的脉搏频率也随之增加,这对应于特征点距离的缩短,尤其是R‐R间期的缩短。我们已将此信息作为本研究的基础,以单独分析QRS波群。
在我们的实验中,我们采用了七种分类器——朴素贝叶斯(NB)、逻辑回归(LO)、神经网络或多层感知机(MP)、序列最小优化(SMO)、最近邻(IB1)、决策树(J48)和随机森林(RF)。我们报告了每种分类器在四个不同测试中的结果:训练集、单次交叉验证、两次交叉验证和十次交叉验证。为了确定检测不同压力水平所需的最短时间间隔,我们针对每位驾驶员提取了5组5分钟间隔的数据(表 3.2)。这些数据随后被分割为60秒、30秒、20秒、15秒、10秒和5秒的实例进行分析。换句话说,对于驾驶员6,初始休息、城市1、城市2、城市3和最终休息的5分钟数据在第一次实验中被分割为1分钟实例,在第二次实验中为30秒实例,在第六次也是最后一次实验中为5秒实例。该过程对其他四位驾驶员也进行了重复。因此,我们的第一次实验数据集由5位驾驶员的125个一分钟实例和2个类别——低压力和高压力组成。所有提取的14个特征(表3.3)均被使用。表3.4显示了1分钟实例的结果。可以看出,压力水平的检测准确率可达84.8%
| 训练 | 训练 | 单折 | 单折 | 双折 | 双折 | 十折 | 十折 | |
|---|---|---|---|---|---|---|---|---|
| ROC | ACC | ROC | ACC | ROC | ACC | ROC | ACC | |
| NB | 0.86 | 77.6 | 0.83 | 73.6 | 0.84 | 71.2 | 0.83 | 74.4 |
| LO | 0.91 | 82.4 | 0.81 | 74.4 | 0.74 | 72.8 | 0.82 | 74.4 |
| MLP | 0.97 | 94.4 | 0.84 | 82.4 | 0.81 | 76.8 | 0.84 | 81.6 |
| SMO | 0.79 | 78.4 | 0.79 | 77.6 | 0.77 | 76 | 0.79 | 77.6 |
| IB1 | 1 | 100 | 0.79 | 80.8 | 0.75 | 75.2 | 0.78 | 80 |
| J48 | 0.92 | 92 | 0.75 | 84.8 | 0.79 | 82.4 | 0.81 | 83.2 |
| RF | 1 | 100 | 0.92 | 84.8 | 0.88 | 79.2 | 0.91 | 84 |
表3.5 每位驾驶员50个三十秒低压力和高压力实例的数据集的ROC面积和准确率百分比
| 训练 | 训练 | 单折 | 单折 | 双折 | 双折 | 十折 | 十折 | |
|---|---|---|---|---|---|---|---|---|
| ROC | ACC | ROC | ACC | ROC | ACC | ROC | ACC | |
| NB | 0.86 | 77.2 | 0.85 | 76 | 0.84 | 75.2 | 0.85 | 76.4 |
| LO | 0.90 | 83.6 | 0.86 | 81.2 | 0.85 | 80.4 | 0.86 | 81.2 |
| MLP | 0.95 | 91.6 | 0.88 | 85.2 | 0.88 | 83.2 | 0.89 | 85.2 |
| SMO | 0.81 | 81.2 | 0.81 | 80.4 | 0.82 | 81.6 | 0.81 | 80.8 |
| IB1 | 1 | 100 | 0.81 | 82 | 0.83 | 83.6 | 0.83 | 83.2 |
| J48 | 0.97 | 94.8 | 0.88 | 82 | 0.85 | 84.4 | 0.82 | 84.4 |
| RF | 1 | 100 | 0.93 | 85.6 | 0.94 | 87.2 | 0.93 | 86.4 |
表3.6 每名驾驶员75个二十秒低压力和高压力实例数据集的ROC面积和准确率百分比
| 训练 | 训练 | 单折 | 单折 | 双折 | 双折 | 十折 | 十折 | |
|---|---|---|---|---|---|---|---|---|
| ROC | ACC | ROC | ACC | ROC | ACC | ROC | ACC | |
| NB | 0.84 | 75.2 | 0.83 | 74.13 | 0.83 | 74.4 | 0.84 | 74.4 |
| LO | 0.88 | 84.27 | 0.85 | 81.6 | 0.85 | 80.8 | 0.86 | 81.6 |
| MLP | 0.95 | 90.1 | 0.88 | 83.2 | 0.87 | 82.7 | 0.89 | 84 |
| SMO | 0.81 | 81.1 | 0.80 | 80.5 | 0.80 | 80.8 | 0.80 | 80 |
| IB1 | 1 | 100 | 0.84 | 85.1 | 0.79 | 80.3 | 0.83 | 84.5 |
| J48 | 0.91 | 91.5 | 0.91 | 87.2 | 0.76 | 81.1 | 0.83 | 85.9 |
| RF | 1 | 100 | 0.90 | 84.53 | 0.88 | 81.8 | 0.90 | 84.8 |
使用单次交叉验证结合J48和随机森林(RF)。在训练集上,IB1和RF均达到 100%准确率,符合预期。受试者工作特征(ROC)曲线下面积范围为0.74至1。
医生可能能够通过1分钟的心电图数据检测个体的压力水平。为了确定精确压力分析所需的心电信号最短持续时间,我们以类似方式分别对30秒、20秒、15秒、10秒和5秒实例进行了另外5项实验。
30秒数据集包含250个实例和所有提取的特征。此处的结果(表3.5)显示总体准确率百分比略有提高。当使用RF两次交叉验证时,两种压力水平的识别准确率达到87.2%。ROC面积范围也提高至0.81–1。
20秒数据集包含375个实例和所有提取的特征。此处的结果(表3.6)在准确率百分比方面与之前一致。使用J48单次交叉验证时,可识别两种压力水平,准确率达到87.2%。ROC面积介于0.76至1之间。
15秒数据集包含500个实例以及所有提取的特征,在RF单折和双折交叉验证中准确率百分比达到86.6%,如表3.7所示。ROC面积范围增加至0.81–1。
表3.7 针对每名驾驶员的100个十五秒低压力和高压力实例数据集的ROC面积和准确率百分比
| 训练 | 训练 | 单折 | 单折 | 双折 | 双折 | 十折 | 十折 | |
|---|---|---|---|---|---|---|---|---|
| ROC | ACC | ROC | ACC | ROC | ACC | ROC | ACC | |
| NB | 0.82 | 71.1 | 0.81 | 70.1 | 0.80 | 71.1 | 0.81 | 70.7 |
| LO | 0.86 | 81 | 0.84 | 79 | 0.84 | 80 | 0.84 | 78.8 |
| MLP | 0.96 | 88 | 0.88 | 85.8 | 0.86 | 83.2 | 0.85 | 85.2 |
| SMO | 0.80 | 80.2 | 0.80 | 79.4 | 0.79 | 79 | 0.80 | 79.4 |
| IB1 | 1 | 100 | 0.83 | 83.2 | 0.82 | 83 | 0.83 | 83.4 |
| J48 | 0.95 | 91.6 | 0.81 | 81.8 | 0.86 | 84.8 | 0.84 | 84.4 |
| RF | 1 | 100 | 0.93 | 86.57 | 0.92 | 86.57 | 0.93 | 86.17 |
表3.8 针对每名驾驶员的150个十秒低压力和高压力实例数据集的ROC面积和准确率百分比
| 训练 | 训练 | 单折 | 单折 | 双折 | 双折 | 十折 | 十折 | |
|---|---|---|---|---|---|---|---|---|
| ROC | ACC | ROC | ACC | ROC | ACC | ROC | ACC | |
| NB | 0.79 | 72.13 | 0.79 | 71.33 | 0.79 | 71.2 | 0.79 | 71.07 |
| LO | 0.87 | 81.47 | 0.85 | 80.4 | 0.85 | 79.47 | 0.85 | 80.53 |
| MLP | 0.93 | 89.2 | 0.85 | 84.5 | 0.85 | 80.8 | 0.87 | 83.6 |
| SMO | 0.78 | 78.27 | 0.78 | 78.13 | 0.78 | 77.6 | 0.78 | 75.13 |
| IB1 | 1 | 99.87 | 0.82 | 82.93 | 0.81 | 81.33 | 0.82 | 82.4 |
| J48 | 0.96 | 90.13 | 0.89 | 85.87 | 0.87 | 84.67 | 0.87 | 84 |
| RF | 1 | 99.87 | 0.92 | 85.2 | 0.91 | 84.67 | 0.91 | 85.33 |
表3.9 针对每名驾驶员的300个五秒低压力和高压力实例数据集的ROC面积和准确率百分比
| 训练 | 训练 | 单折 | 单折 | 双折 | 双折 | 十折 | 十折 | |
|---|---|---|---|---|---|---|---|---|
| ROC | ACC | ROC | ACC | ROC | ACC | ROC | ACC | |
| NB | 0.84 | 73.8 | 0.84 | 73.59 | 0.84 | 73.59 | 0.84 | 73.73 |
| LO | 0.91 | 83.46 | 0.9 | 82.77 | 0.90 | 83.25 | 0.90 | 83.46 |
| MLP | 0.94 | 90.69 | 0.92 | 86.13 | 0.92 | 86.17 | 0.92 | 85.34 |
| SMO | 0.83 | 81.51 | 0.82 | 80.96 | 0.82 | 81.03 | 0.82 | 81.17 |
| IB1 | 1 | 99.86 | 0.82 | 82.90 | 0.82 | 82.56 | 0.82 | 82.84 |
| J48 | 0.97 | 91.8 | 0.90 | 87.07 | 0.88 | 85.89 | 0.91 | 87.21 |
| RF | 1 | 99.86 | 0.94 | 87.35 | 0.94 | 87.98 | 0.94 | 87.14 |
对于包含750个实例的10秒数据集,整体准确率相较于之前的结果有所下降。最高准确率达到85.87%,由J48单次交叉验证获得(表3.8)。ROC面积范围在0.78到1之间。
最后,对于5秒实例中的1500个实例,使用随机森林两次交叉验证获得的准确率为88%。ROC面积从0.82提升至1(表3.9)。
少于5秒的数据集未被考虑,因为短时长数据集不包含分析所需的合理数量的脉冲。例如,一个正常人在5秒数据中会有4到7个心电图脉冲或QRS波峰。对于这种情况,脉冲数量少,训练系统较为困难。其次,由于噪声和其他外部因素的影响,准确记录信号变得困难。
四种实验设置和六个不同时间实例中获得的最佳准确率百分比如图所示(图3.2)。在交叉验证中,完整集合被分为n部分。每次留出一部分,其余的(n − 1)部分作为训练集。留出的部分则用作测试集。对所有部分都执行此过程,并将结果取平均值,这对应于现实场景中将新数据添加到已训练的数据集以检测压力水平的情况。因此,交叉验证的结果比训练集本身的结果更为重要。
3.5 讨论与结论
我们使用了15分钟的高压力(城市1、城市2和城市3)以及10分钟的低压力(初始休息和最终休息)数据。当这些数据被划分为小时间段时,类别变得不平衡。如果在平衡数据上进行分析,结果可能会得到改善。我们还可以对提取的特征应用一些特征选择算法以改进结果。
通过我们的分析可以得出,心电信号中5秒的QRS波群数据足以检测不同水平的压力。这样既可以减少计算时间,也可以降低计算成本。心电信号中的其他波形P波和T波似乎在压力检测中并不需要。仅使用5秒标注的 QRS波群数据,我们的系统即可实现88%准确率的压力检测。单独使用 QRS波群获得更好结果的原因在于,QRS波群对应人类心脏右心室和左心室的去极化,因此具有最高的振幅,通常持续60–90毫秒。而P波和T波的平均持续时间是>150 ms,且其振幅较小,导致信噪比较低。需要注意的是,持续时间长且振幅小的信号容易受到随机噪声的影响。此外,P波和T波容易发生重叠,导致一个脉冲的T波偏移与后续脉冲的P波起始混合。由于QRS波群持续时间短且振幅显著较高,因此具有较高的信噪比,从而实现更准确的压力检测。
因此,我们得出结论:多传感器数据融合和应激分析并非必需。这减少了个体需要佩戴的传感器数量以及此类设备的成本。仅通过5秒数据即可获得个体的压力水平,准确率达到87.98%。这是首次全面探讨高效的5秒基于心电图的应激检测。因此,本研究为微型、低成本的基于心电图的可穿戴设备用于快速健康监测系统打开了大门,并可应用于智能手表和其他便携式设备中。
212

被折叠的 条评论
为什么被折叠?



