A Review Study for Electrocardiogram Signal Classification
ABSTRACT
心电图(ECG)信号是心脏产生的电活动的记录。心电信号的分析研究已经有十多年,希望建立一个模型来对心电信号进行自动分类。本文的主要目的是研究和综述近年来应用的分类方法,如人工神经网络、卷积神经网络(CNN)、离散小波变换、支持向量机(SVM)和K近邻等。在分类方法、特征提取技术、数据集、贡献率等方面进行了比较。研究结果还表明,CNN分类方法比其他分类方法具有更高的分类成功率,因此在心电分类中得到了最广泛的应用。
关键词—人工神经网络,卷积神经网络,离散小波变换,支持向量机,K近邻
INTRODUCTION
心电图(ECG)只是心脏产生的电活动的记录。心脏产生电活动,通过一种叫做ECG的医学测试来测量,ECG可以识别心脏异常。心脏产生微小的电脉冲,通过心肌传播。心电图机将所有有关心脏电活动的数据记录并显示在纸上。然后,医生解释这些数据;心电图可以找到胸痛症状的原因,也可以发现异常心律。
一个ECG信号总共有五个主要的转折点,包括P波、Q波、R波、S波和T波,加上心房的去极化导致心房收缩前的一个小转折点,因为激活(去极化)波前从窦房结通过心房传播。Q波是P波之后的向下偏转。R波随R波向上偏转,S波随R波向下偏转。Q、 R波和S波一起表示单个事件。因此,它们通常被认为是QRS波群,如图1所示。
基于QRS波群的特征是ECG分析中最强大的特征之一。QRS波群是由心室收缩前去极化产生的电流引起的。虽然心房除极发生在心室除极之前,但心室除极后的波形(即QRS波群)具有更高的振幅,因此,在心电图上看不到心房除极。继S波之后的T波是心室去极化,心肌在此为下一个心电图周期做准备。最后,U波是紧接着T波的一个小偏转。U波通常与T波方向相同。
心律失常有不同的类型,每种类型都与一种模式有关,因此,可以对其进行识别和分类。心律失常可分为两大类:第一类是由单个不规则心电图信号形成的心律失常,这里称为形态性心律失常;另一类是由一系列不规则心跳形成的心律失常,这里称为节律性心律失常。
在识别和分类心律失常心电图的过程中,主要的问题是每个人的心电图信号可能不同,有时不同的病人对同一疾病有不同的心电图形态。此外,两种不同的疾病在ECG信号上可能具有大致相同的特性。这些问题给心脏病的诊断带来了一定的困难。
此外,由于疲劳,人体的心电图记录分析比较复杂;自动分类的另一种方法是计算机技术。对于心电设备接收到的心律失常信号进行分类,需要一个自动化系统,该系统主要分为三个步骤,第一步:预处理,第二步:特征提取,最后:分类,如图2所示。
心电信号可能含有多种噪声,这些噪声会影响用于分类的特征提取;因此,去除噪声需要预处理步骤。研究人员应用了不同的预处理技术对心电信号进行分类。为了去除噪声,使用了低通线性相位滤波器和线性相位高通滤波器等技术。一些方法,如中值滤波、线性相位高通滤波和平均中值滤波用于基线调整。
在预处理步骤之后,提取不同的心电图特征,然后作为分类模型的输入[27]。研究人员使用的特征提取技术有离散小波变换(DWT)、连续小波变换、离散余弦变换(DCT)、离散傅立叶变换、主成分分析(PCA)、Pan-Tompkins和独立成分分析(ICA)。
当从心跳中定义特征集时,可以使用机器学习和数据挖掘领域的人工智能算法从这些数据中建立模型,用于心律失常心跳分类。文献中最常用的技术是人工神经网络(ANN)、卷积神经网络(CNN)、小波变换、支持向量机(SVM)、决策树(DT)、贝叶斯、模糊、线性判别分析(LDA)和k-近邻(KNN)。
许多关于心电图分析和分类的综述已经发表。在Karpagachelvi中,研究了ECG分析和分类的最有效特征。特征在大多数心脏疾病的诊断中起着重要的作用。Nasehi和Pourghassem对癫痫检测算法的方差类型及其在诊断中的潜在作用进行了综述。Roopa和Harish综述了用于心电图分析和分类的各种机器学习方法。2018年发表了一篇综合性综述,其中包含了过去十年中大部分关于心电图分析的文献,并讨论了心电图分析的大部分主要方面,如预处理、去噪、特征提取和分类方法(以前在心电图调查论文上的工作,Reviewer 2)。
这项工作的主要目的是回顾过去5年中主要使用的大多数常用技术。此外,本文还可以为其他研究者识别心电图分类中的任何问题和分析研究领域提供有益的帮助,因为这些方法涉及很多方面。(本节是本文的主要目的(Reviewer 3))。
本文的章节顺序如下:第二节介绍了分类技术,第三节进行了讨论,最后第四节给出了结论。
CLASSIFICATION
通过研究ECG信号可以获得许多关于患者心脏过程的病理信息。有许多方法已被开发用于分类心跳,因为它对于检测心律失常至关重要。心律失常可分为有生命威胁的心律失常和不具有生命威胁的心律失常两种,不具有生命威胁的心律失常的诊断需要长期的心电图分类,这种分类费时且不实用,自动算法有很大的帮助。因此,心律失常的自动心电图分类是世界上最值得研究的课题之一。
现在已经有各种分类器用于心电图分类任务。本文归纳了自2016-2020年以来提出的最常用的心电图分类方法,这些分类方法主要可以基于分类器进行归类,分为ANNs、CNN、kNN、SVM和DWT等。所有被评论的论文都被IEEE、ScienceDirect和Springer采纳。(本节是关于作者为什么以及如何选择论文的(Reviewer 2和Reviewer 3)。
心电信号中存在大量可提取的特征,因此研究了不同类型的分类技术对不同特征下的心电数据进行分类。下面介绍一些分类方法。
ANN
ANN是一个自适应系统,具有自适应、学习和总结能力等令人兴奋的特性;由于ANN的并行处理、自组织、容错和自适应能力使其能够解决许多复杂问题,因此ANN在输出分类和预测方面也非常准确。神经网络(NN)由很多层组成;初始层与系统输入有关联,最后一层给出网络的输出。具有隐藏层和足够神经元的神经网络可以应用于任何有限的输入输出映射问题。NN模型由输入层、隐藏层和输出层组成,如图3所示。
关于基于人工神经网络的心电图分类,国内外已有大量文献发表。以下是一些新方法:
Chen等人(2016)提出了一种基于小波变换的神经网络(W-ANN)方法。结果表明,W-ANN所需计算时间更低,相比较而言减少49%的计算时间,同时需要更干净的心电输入信号。该方法在MIT-BIH心律失常数据库和实际心电信号测量数据上实现。
Boussaa等人(2016)提出了一种具有高精度计算和决策的心脏疾病检测系统的设计,它由mel-frequency系数倒谱算法如心脏信号的特征提取,和ANN多层感知器MLP分类器算法组成,MLP将特征提取分为正常和异常两类。该系统的设计和测试是从MITBIH数据库中提取的两类数据上进行的:一个包含标记数据(ECG正常和异常)的训练库和另一个不包含标记数据的测试库。实验结果表明,该系统综合了mel-frequency倒谱系数和MLP分类器各自的优点。
Savalia et al.(2017)从心电数据库physibank下载的数据用于学习神经网络,使用Matlab中的信号处理和NNs toolboxes区分正常和异常心电图数据。特征提取方法还可用于识别各种心脏疾病,如心动过缓、心动过速、一级房室传导(AV)和二级房室传导。由于心电信号噪声大,采用信号处理技术去除噪声污染。通过求信号R-R间期之间的距离来计算每个信号的心率。QRS波群检测房室传导阻滞。结果表明,该算法能很好地区分正常数据和异常数据,并能识别疾病类型。
Wess等人(2017年)提出了基于FPGA的ANN的心电图心律失常检测。目的是在FPGA上实现一种基于神经网络的机器学习算法,与统计方法相比,具有更好的性能和准确性(ACC)。基于PCA的特征约简和MLP算法的分类实习证明了该算法的优越性。为了在FPGA上实现,研究了几个参数和简化对性能、ACC和功耗的影响。激活函数的分段线性逼近和定点实现是减少所需资源的有效方法。所得到的神经网络有12个输入,隐层有6个神经元,尽管进行了简化,但总体ACC与浮点数表示的模拟相同。MIT-BIH数据库的平均ACC为99.82%。
Pandey等人(2018年)比较了三种不同的神经网络模型对正常和异常信号进行分类,并使用加州大学欧文分校ECG 12导联信号数据。本文采用了反向传播(BP)网络、径向基函数(RBF)网络和递归神经网络(RNN)等方法。RNN模型显示了更好的分析结果。试验分级ACC为83.1%。这个结果比使用同一个数据库的一些工作要好。
Sannino和Pietro(2018)提出了一种基于深度神经网络(DNN)的方法,用于区分异常心电图和正常心电图。DNN是用张量流框架建立起来的,它由7个隐藏层组成,分别有5个、10个、30个、50个、30个、10个和5个神经元。将该模型与其他11个著名的分类器进行了比较。数值结果表明了该方法的有效性,特别是在ACC方面。
Debnath等人(2019)提出了两种方案,首先通过剔除背景噪声,从含噪心电信号中提取QRS分量。这是使用Pan-Tompkins算法完成的。第二项任务是计算心率,并使用MATLAB从检测到的QRS波峰值检测心动过速、心动过缓、心脏停搏和二度房室传导阻滞。结果表明,从检测到的QRS波峰和基于QRS波峰数目增减的心律失常中,可以诊断出QRS波峰的缺失。最后的任务是根据先前提取的特征对心脏异常进行分类。本文选择了BP训练的前馈神经网络作为研究对象。这里,用于分析心电图信号的数据来自MIT数据库。
Abdalla等人(2019)提出,由于ECG信号的性质,该方法是基于非线性和非平稳分解方法开发的。采用带自适应噪声的完全系综经验模态分解(CEEMDAN)方法得到本征模态函数(IMFs)。在这些IMFs的基础上,计算了四个参数来构造特征向量。计算前六个IMFs的平均功率、色散系数、样本熵和奇异值作为参数。然后,采用人工神经网络(ANN)将特征向量应用到MIT-BIH数据库中,对从PhysioNet下载的5种不同的心律失常心搏进行分类。CEEMDAN和ANN的性能优于所有现有方法,其中灵敏度(SEN)为99.7%,特异性(SPE)为99.9%,ACC为99.9%,受试者操作特征(ROC)为01.0%。
Convolutional Neural Network (CNN)
CNN是最常用的心电分类技术,CNN主要由特征提取和分类两部分组成。特征提取部分负责从心电信号中自动提取有效特征,分类部分负责利用提取的特征对信号进行准确分类,如图4所示。
基于CNN的心电图分类方法有很多种,以下是一些更新工作:
Zubair等人(2016)提出了一个模型,该模型集成了两个主要部分:特征提取和分类。该模型能自动从原始心电数据中记住一个合适的特征表示,因此不需要手工构建特征。该分类系统利用小样本训练数据,有效地将心电信号分为五类。利用MIT-BIH数据库中44条记录的心电信号对分类性能进行了评估,结果表明,该方法比现有的大多数心电信号分类方法具有更高的分类精度和计算效率。
Yin等人(2016)提出了一种系统,该系统将脉冲无线电超宽带雷达数据作为附加信息,以帮助对轻微运动状态下的心电图记录进行心律失常分类。此外,该系统采用级联CNN实现了心电信号与雷达数据的综合分析。在Caffe平台上进行了实验,在微动状态下的ACC达到88.89%。结果表明,该系统在轻微运动状态下,对正常和异常心跳保持了稳定的分类精度。
Oh 等人(2017)设计了一个九层深度卷积神经网络 DCNN,用于自动识别ECG信号中的五种不同类型的心跳。该测试应用于原始和心电图信号,这些信号来自可用的数据库。为了消除高频噪声,这些数据被人为地放大了。对CNN模型进行训练,利用增强后的数据对无噪声心电图和原始心电图的心率进行识别,ACC分别为93.47%和94.03%。
Zhai和Tin(2018)提出了一种基于不同CNN结构模型的方法。对模型进行了改进,S波阳性预测率分别提高了12.2%和11.9%。该系统无需任何人工特征提取和专家辅助,提供了一种全自动、可靠的心律失常检测工具。
Zhang等人(2019)介绍了一种新的基于DCNN的心电图数据模式识别方法。与以往从原始信号域学习特征或手工构造特征的方法不同,本文提出的方法是从时频域学习特征和分类器。首先,利用短时傅立叶变换将心电波形信号变换到时频域。然后,在特定长度的心电样本上训练多个尺度特定的DCNN模型。最后,提出了一种在线决策融合方法,将不同尺度的决策融合为更精确、更稳定的决策。
Wang(2020)提出了一种新的基于DNN的自动心房颤动(AF)检测方法,该方法由11层构成。网络结构采用改进的Elman神经网络(MENN)和CNN相结合。在MIT-BIH AF数据库上进行了十次交叉验证以评估模型的分类性能。结果表明,该模型具有良好的分类性能,ACC、SEN和SPE分别为97.4%、97.9%和97.1%。
Yao 等人(2020)设计了基于时间增量CNN(ATI-CNN)的注意力模型;DNN模型通过结合CNN实现心电信号的时空信息融合。其特点是输入长度灵活,参数量减半,实时处理的计算量减少90%以上。实验结果表明,与经典的16层CNN VGGNET相比,ATI-CNN的总分类率为81.2%,平均ACC提高7.7%,对阵发性心律失常的检出率高达26.8%。