基于BiLSTM和多分支CNN的心律失常自动分类
李怀东,吴腾
(福州大学 机械工程及自动化学院,福建 福州 350108)
根据《中国心血管健康与疾病报告2019》[1],近年来,我国的心血管疾病死亡率仍旧居于首位,每5例死亡者中有2例死于心血管病。报告强调,为降低日益加重的心血管疾病负担,一方面仍要强调提高医疗水平,改善医疗质量,另一方面最重要的是加强对心血管危险因素的控制,预防心血管疾病的发生。
心电信号是临床用于诊断病人心脏健康状态的一种综合工具,具有无创、设备能耗低和易获取等特点,所以在各种心律失常检测以及心脏病病理分析中都发挥了巨大的作用。心律失常是指心脏出现异常活动或行为的情景,它是心血管疾病预防的关键。在过去十年里,发展了许多基于信号处理技术的自动心跳分类方法,主要包括两个步骤:特征提取和分类。心电信号的自动分类流程首先通过对心电图中的特征系数进行特征提取,突出异常和正常特征的区别,然后再利用相应的分类器对特征进行分类来达到识别心律目的。其中,心律失常的分类方法主要有:支持向量机[2]、神经网络[3]、决策树(CT)[4]和加权条件随机域(CRF)[5]。近年来,随着深度学习(deep learning)的大热,越来越多的人将其应用到了心电信号的分类中[6-7]。基于深度学习的分类方法无需对心电信号特征提取,能够根据原始的信号对其所属的类别直接进行分类,具有高效、便捷和精准的特点。
1.1 卷积神经网络理论
卷积神经网络由几个卷积层组成,每层卷积层之后通常是接池化层,如图1所示。在卷积层中,每一隐藏层中的每一个神经元都连接到前一隐藏层神经元的一个小区域,即感受域。其中,每个神经元学习一组权重,而每层学习一个总体偏差。随后,滑动卷积窗口,下一隐藏层的神经元根据窗口的位置学习相应的权值。
图1 卷积神经网络结构
这个过程在数学中可以表示为
(1)
1.2 BiLSTM理论
对于信号而言,往往具有很强的时序性,而在时序特征提取的能力上,CNN是不如循环神经网络(RNN)的。长短时记忆神经网络(LSTM)是一种特殊的RNN。与RNN相同,LSTM也采用了重复模块链的形式,但不同之处在于重复模块的结构不同。RNN的重复模块只有一层,而LSTM有4层,它们以一种特殊的方式相互作用。其数学表达式如下:
ft=σ(Wf·[ht-1,xt]+bf)
(2)
it=σ(Wi·[ht-1,xt]+bi)
(3)
Ct=ft·Ct-1+it·tanh(Ws·[ht-1,xt]+bs)
(4)
ht=σ(Wo·[ht-1,xt]+bo)·tanh(Ct)
(5)
式中:xt是输入序列;
ht-1是上一隐藏层的输出;
bf、bi和bo分别表示遗忘门、输入门和输出门的偏置;
Wf、Wi和Wo分别表示遗忘门、输入门和输出门的权重;
Ws为当前单元的权重;
Ct是当前细胞的记忆单元。其中,权重采用随机初始化,而偏置初始化为0。
传统的LSTM有一定的局限性,只能实现单向传输。它从前面到后面提取数据特征的能力较强,但对从后往前的信息识别性较差。双向LSTM(BiLSTM)很好地解决了这个问题。双向层实际上是由两个方向相反的LSTM层组成:前向LSTM和后向LSTM。在每个时间步中,前向LSTM的输出总结了之前所有时间步的局部特征,后向LSTM的输出也总结了后续所有时间步的局部特征。将两个LSTM层在某一时刻的局部输出进行汇总后,通过激活函数对其进行非线性处理。因此,提取的特征可以更好地反映数据信息,达到更好的特征提取效果。
2.1 实验数据来源及预处理
本文实验数据选自美国麻省理工学院所提供的MIT-BIH心律失常的数据库[8]。该数据库包含48条双导联动态心电信号记录,记录来自于心律失常实验室的47名受试者(记录201和202来自同一男性),采样频率为360 Hz。本文采用导联I心电数据作为实验样本,根据数据中的QRS波位置取波前0.4 s,波后0.5 s,再下采样成320采样点的心拍作为输入数据。分类标准按照美国医疗仪器促进协会(AAMI)将原始的MIT-BIH的标签重新分成:正常或者束支传导阻滞节拍(N)、室上性异常节拍(S)、心室异常节拍(V)、融合节拍(F)、未能分类节拍(Q)等5类。并根据7∶3的比例将数据集划分成训练和测试集。原始标签和重新分类的AAMI标签如表1所示。
表1 AAMI标签与MIT-BIH标签对照表
2.2 评估标准
为全面评估研究方法对心拍的分类结果,本实验采用混淆矩阵,主要包括三大评定指标:敏感度(Se)、精确度(Pre)、F1分数。
(6)
(7)
(8)
式中:真阳性TP表示正样本被预测为正样本的数目;
假阴性FN表示正样本被预测为负样本的数目;
假阳性FP表示负样本被预测为正样本的数目。
2.3 模型搭建
如图2所示,本文所搭建的神经网络由三分支的卷积神经网络后接一层BiLSTM及两层多层感知机(MLP)构成。其中,每条分支由两层卷积神经网络组成,而每层CNN所使用的卷积核都不相同,这有助于在不同的空间尺度上提取信号的细节特征。每层卷积层后接一层批量归一层(BN)和激活层,所使用的激活函数为ReLu,且步长均为1。对于每支路的最后一层卷积层后接步长为2的池化层,用于减小网络结构参数,加快收敛。在卷积网络结束后,先对每支路卷积进行拼接,然后输入一层神经元个数为32的BiLSTM,用于提取时序特征。最后接两层MLP,用于对分类结果进一步的细化和分类,最后一层MLP所采用的激活函数为Softmax。详细的参数如表2所示。
图2 本文所使用的神经网络结构
表2 本文所使用模型的细节参数
本实验模型在Intel i7-8750H CPU、NVIDIA GTX 1060上训练,内存为16 GB,使用基于python3.6的tensorflow2.1框架。心拍的分割与数据集的制作在jupyter上实现,其中训练集和测试集分别有70 479和30 208个样本,并在训练阶段使用五折交叉验证。五折交叉验证通过将训练集平均分成5个不同训练组,取其中1份作为验证集,剩下4份作为训练集。在每次训练结束后轮换训练和验证集,5次轮换后平均结果来降低方差,因此其结果对数据集划分的敏感性较低,具有较强的稳定性。训练过程中所使用的优化器为adam,学习率为0.000 1,每批次输入32个样本,迭代的次数为100。
测试了传统CNN、多分支CNN及本文所提出的基于BiLSTM和多分支CNN的模型的训练与验证准确率,其结果如图3所示(本刊为黑白印刷,如有疑问请咨询作者)。从图3可以看出,无论是在训练还是测试阶段,本文提出的模型在准确率都高于其他的模型,说明该模型对分类的性能有一定的提升。在第30次迭代后训练和验证集曲线平稳,没有发生过拟合现象。
图3 训练和验证集准确率的变化
使用训练好的模型对测试集进行分类,得到混淆矩阵如表3所示。其中列是模型的预测值,行表示样本的真实值,对角线表示正确分类的结果。可以看出模型在测试集上表现良好,对于每一类基本都将心拍成功分类,特别是对于N、V、F这三个类别表现尤为突出,这三类在F1得分上分别高达99.5%、97.1%、97.7%,而对于Q类,训练和测试集仅有10个和5个样本,但在样本量少的情况下,仍有1个样本被分类成功,说明模型充分考虑到样本间的平衡性。
表3 分类结果的混淆矩阵表示
本文研究方法与近年来国外在MIT-BIH数据库上的心电信号自动识别方法进行对比,主要比较S和V两类。根据AAMI标准,S和V类的识别分类更具有临床意义,其结果如表4所示,最好效果已加粗。可以看出,本文的方法在V和S类上虽然Pre值略低,但是效果基本持平,而且Sen和F1值高于其他文献。作为综合指标,S和V类的F1相较于其他文献最好的结果分别提高了2.3和0.9。说明本文方法能在不同层面上更深提取ECG的特征,以此来达到更好的分类精度效果。
表4 本文与其他方法比较 单位:%
本文针对传统CNN模型对细节特征方面提取的不足,使用多支路的CNN来提取更深层次的特征,同时考虑到ECG作为时序信号,结合BiLSTM模型对序列信号优势特点,将其应用在网络模型的搭建中,分析和讨论了在训练过程中该模型的训练和验证准确率变化情况、模型在测试集上的分类效果,重点比较了该模型与其他论文的Sen、Pre和F1值。实验结果表明:在训练阶段,该模型无论在准确率还是拟合效果方面都优于之前的传统模型;
在测试阶段,模型对每类的分类在不同指标上都有良好的效果;
与其他论文相比,在细节与综合得分上持平或者高于其他论文的模型。综上可知,该模型在心电信号的自动分类上具有良好的应用前景。
热门文章:
- 酒店总经理年度工作总结8篇2024-12-07
- 2023年度大一上学期期末个人总结800字10篇(完整)2024-12-07
- 2023年高三综评期末总结8篇2024-12-07
- 四年级科学的教学总结6篇【精选推荐】2024-12-06
- 期末颁奖总结3篇(范文推荐)2024-12-06
- 医院客服年终个人总结7篇2024-12-06
- 2023年度高校寒假安全教育主题班会总结12篇(2023年)2024-12-06
- 2023年有关学生期末个人总结7篇(范文推荐)2024-12-06
- 2023年度公司业务部年终总结10篇2024-12-06
- 园林绿化有限公司年度工作总结5篇【完整版】2024-12-06
相关文章: