基于改进多导联残差网络的广泛前壁心肌梗死自动诊断

2022-08-25 03:10:34赵滢琳庞春颖李爽
关键词:前壁心梗导联

赵滢琳,庞春颖,李爽

(长春理工大学 生命科学技术学院,长春 130022)

据《中国心血管健康与疾病报告2019》指出,目前我国心血管疾病患病人数约3.3亿人[1],其中心肌梗死(以下简称:心梗)患者数量逐年增多,心梗由于发病迅速、致死残率高、复发率高等特点受到人们广泛关注。根据心电图中ST段出现异常的位置,可分为广泛前壁心梗、下壁心梗、后壁心梗等类型[2]。广泛前壁心梗面积较大,梗死累及的导联数较多,病人的预后也较差,患者会有胸痛、血压下降、心力衰竭、心律失常等一系列的症状,严重者危及生命。广泛前壁心梗可通过心电图变化早期诊断,综合ST段抬高,T波倒置和Q波异常多种改变[3],这对于医生的经验和资质有着很高的要求。因此,广泛前壁心梗的自动检测至关重要。

目前已有人对心梗自动检测进行研究,大多是采用传统的机器学习框架,通常由特征提取和分类构成,首先对QRS波,ST-T段进行主成分分析(PCA,Principal Component Analysis),用小波变换(WT,Wavelet Transform),多项式拟合等技术,利用全局特征(幅度,峰值,均值,方差等)表示节拍,然后送入分类器中进行分类,常见的分类器有神经网络(NN,Neural Network),支持向量机(SVM,Support Vector Machines),K近邻(KNN,K Nearest Neighbours),随机森林(RF,Random Forest)。Saini R 等人[4]采用了 KNN 分类器进行心梗自动检测,达到了84%的准确率;Gopakumar C等人[5]用支持向量机对心梗进行分类,准确率达到94%。虽然这些方法体现出了良好的性能,但是需要手工提取特征值,鲁棒性低,计算成本与人工成本昂贵。也有学者单纯用深度学习中的卷积神经网络自动检测心梗,但是由于网络层数较深,时间复杂度较大,并没有达到预期效果。Resul Dasa等人利用神经网络、概率模型算法相结合,实现了心梗疾病自动诊断,准确率达89.01%。常战国等人[6]利用BP神经网络和卷积神经网络相结合方法对12导联数据进行分析,检测心梗的准确率达到了96%。

本文针对上述问题,提出了一种端到端的改进多导联残差网络(IMRN,Improved multi-lead residual network),该网络以残差网络(ResNet,Residual Network)为基础[7],将多个导联的心拍信号并行输入,经过空洞卷积层、池化层、归一化层、激活层,利用融合策略将网络提取的特征进行合并最后输出分类结果[8]。研究表明,该方式改善了心电信号在单导联的特征学习过程,在加深网络层数的前提下避免了模型的退化现象,免去了手动提取特征值的繁琐过程,可以更加精确地诊断广泛前壁心梗的发生。

1 实验

临床研究表明,广泛前壁心肌梗死涉及到的导联数较多,单一导联的心电信号不能对其进行较为精准的预测,因此选用V1~V5共五条导联信号。本文算法主要分为三个步骤,首先对心电信号进行去噪滤波处理,把一段较长的心电信号分割为一个个独立的心拍,然后搭建输入为五个并行信号的改进多导联残差网络模型,这里引入了空洞卷积的概念,最后加入融合特征层,对得到的信号提取主要特征,用softmax进行分类。总体框图如图1所示。

图1 总体结构

1.1 数据集选取及预处理

本研究采用的数据来自德国柏林本杰明富兰克林大学心脏病系的迈克尔·奥夫教授(MichaelOeff,M.D.)和德国国家计量学研究所(Physikalisch-Technische Bundesanstalt,PTB)收集 和处理的公共的ECG诊断数据库(diagnostic ECG database),即PTB诊断数据库,该数据库包含148名心梗患者,52名健康受试者,每个ECG记录是根据16位的采样精度和1 000 Hz的采样率进行量化,每个采样值为2个字节,每个记录由15个同时测量的信号组成,即3个Frank导联(vx,vy,vz)和传统的12导联(Ⅰ、Ⅱ、Ⅲ、aVR、aVL、aVF、V1、V2、V3、V4、V5、V6)。在大多数这些心电图记录的头(.hea)文件中有一个详细的临床摘要,包括年龄、性别、诊断以及病史、药物和干预、冠状动脉病理学、心室造影、超声心动图和血流动力学的数据。头文件中还记录了心梗发生的位置,本文选择PTB数据库中52名健康受试者和40名广泛前壁心梗患者的共188条记录作为数据集。其中健康心拍10 646个,广泛前壁心梗患者心拍13 652个。

对原始心电信号进行去噪处理[9]。心电信号属于强噪声背景下的微弱信号,存在许多噪声,常见的有基线漂移、肌电干扰、工频干扰等噪声,本研究采用小波变换去噪,选用波形与心电信号最为相似的Daubechies6小波基函数,能够更好地保留心电信号峰值[10-11]。

由于心电图QRS波形最能反映心电信号特点,因此对去噪后的信号进行R波定位,这里采用潘·汤普金斯(Pan-Tompkins)算法[12]。为了保证心拍分割的完整性,根据PTB数据库的采样频率,选取R波前250个点,R波后400个点组成一个完整的心拍[13]。

两种类型心拍经去噪处理后如图2所示。其中图2(a)为健康心拍,图2(b)为广泛前壁心梗的心拍,可以看出,广泛前壁心梗心电图发生了改变,具体表现为ST段弓背向上型抬高,宽而深的Q波、T波倒置。

图2 心拍示例

1.2 空洞卷积

空洞卷积(dilated convolution)是指在原始的卷积层里加入空洞,使之感受野变大,且不损失原有信息[14]。空洞卷积起源于图像分割[15],将图像输入卷积神经网络(CNN,Convolutional Neural Network)中,经过卷积操作时,随着卷积核不断移动,会有许多像素点被重复卷积,再经过池化层(pooling)减小图像尺寸,增大感受野,此时图像信息难免会有损失和误差,空洞卷积因此而生。如图3所示,图3即是在卷积核为3×3时,不同空洞率(dilated rate)下的感受野大小,当空洞率为1时候,空洞卷积与传统卷积相同,而增加空洞率以后,感受野明显增大。空洞卷积在保证卷积核不变的前提下,增加了感受野,且实现了池化层的下采样功能,因此加入了空洞卷积的网络可以省去池化层。

图3 空洞卷积示意图

1.3 残差块

深度学习中,随着网络层数的增加,难免会出现精度不够、计算复杂度高等问题,残差网络(Resnet)的出现为这种问题提供了解决方法。残差网络在2016年首次被提出[16],旨在提高基于Image Net数据库的图像分类技能,模型通过识别映射概念解决梯度消失和梯度爆炸及退化问题。同时利用不同层次特征之间的信息整合来提取强相关的代表性特征[17]。残差网络主要由残差块组成,拥有跨层连接结构,可以在深层次网络结构中充分训练,提高准确率。残差块如图4所示,公式如下:

图4 残差块

其中,y为特定层的输出;relu为激活函数;i为Resnet块的输入;conv为卷积算法;o为Resnet块的输出。

1.4 网络结构

本研究提出的改进多导联残差网络模型(IMRN),将部分残差块中的传统卷积层改进为空洞卷积,减少了重复参数的数量,减轻了网络训练难度,不对训练结果造成影响。经过一系列卷积层、残差块进行处理后,送入正则化层(dropout)防止过拟合,加入特征融合层,将五导联的信号特征进行权重提取,即将输入列表合并到一个长的特征向量或者张量中,或者只保留输入层的最大值,最后送入softmax层进行分类[18-19]。结构如图5所示。

图5 网络结构示意图

其中,残差块a和残差块b的具体结构如图6所示。

图6 改进残差块示意图

模型中,卷积层(Covolutional)是用来提取特征,卷积层具有平移不变性、大小不变、旋转不变的特点;批量归一化层(BN,Batch Normalization,)使训练过程收敛速度加快,减轻梯度消失;激活函数选用非线性函数(Relu,Rectified Linear Unit)提高效率,Relu公式为:f(x)=max(0,x),通过减少参数的依赖性来缓解过拟合的发生。

在改进的残差块a中,将第一个卷积过程中卷积层设置为空洞卷积,在对心电数据进行特征提取时,增加了感受野,减少了参数量,使用空洞卷积的优点是避免了使用池化层时出现的信息缺失,保证了实验中24 298个心拍的充分利用和训练,提升模型的鲁棒性和准确率。残差块b的设计与普通残差网络一致,由传统的卷积层、激活层、归一化层组成,为了保证与残差块a输出的维度一致,加入了池化层和零填充。

模型参数设置如下:网络输入形状为650×1,卷积核大小统一设置为3,步长为1,第一层卷积核数量为16个,第一组残差块卷积核数量为16,空洞率为2,第二组残差块卷积核数量为32个,空洞率为2,第三组残差块卷积核数量为64,空洞率为2,最后经过特征融合,输出分类结果。

2 实验及结果讨论

利用梯度下降法对模型进行训练,选用常见的优化器Adam[20]用来更新网络权重,本研究将学习率设为0.000 1,设置patience为10,即当连续训练10次后结果没有改善,训练就会停止。

网络进行训练时,首先通过正向传播得出损失值大小,然后需要根据损失值利用反向传播重新调整部分参数,优化最终模型。这里要用到损失函数,损失函数也称为代价函数,表示的是预测值与真实值之间的差距,由于模型是一个二分类模型,分类结果服从伯努利分布,所以采用二分类交叉熵损失函数,公式如下:

其中,ti是某类别的真实值,取值为0或1;pi是某类别的预测值。损失值越小,说明模型分类效果越好。

2.1 实验环境

利用Python3.6语言编程,采用Tensorflow作为后端的keras深度学习框架,其内部有很多深度学习模型,计算机内存8 GB,操作系统为Windows 10,处理器为Intel i7-8750H。

2.2 评价指标

为了评估分类器性能,通过比较实际输出和预测输出来测量不同参数,如灵敏度(sensitivity)、特异性(specificity)、准确率(accuracy)和精度(Precision,PPV)。他们的定义如下:

其中F1-score值是精度和灵敏度的调和平均数,最大为1,最小为0,也可作为评价指标之一。TP和TN分别代表真阳性和真阴性,FP和FN分别代表假阳性和假阴性。

另外采用受试者工作特性曲线ROC-AUC(Receiver Operating Characteristic-Area Under Curve)来评价最终的二分类结果。ROC曲线纵轴为真正率(TPR灵敏度),横轴为假正率(1-特异度FPR)。ROC曲线下面积为AUC,曲线越靠近左上角,即AUC面积越大,分类效果越好,越具有应用价值[23]。

2.3 评估模型

为了实验结果的可靠性,评估模型性能,采用了K倍交叉验证方案。本研究选择5折交叉验证。首先将整体数据集随即划分为5个数量相同的子集,第一次将第一份用于测试,剩下四份用于训练,然后将第二份用于测试,剩余四份用于训练,以此类推,最后将结果汇总求平均值作为最后的模型评价。示意图如图7所示。

图7 五折交叉示意图

为了体现文中改进残差网络的优越性,增加了经典残差网络模型(Resnet)实验[21]的对比,即将残差块a和b统一为残差块b(效果等同于将空洞率设置为1),其余参数不变,将预处理的数据送入模型进行训练,其ROC曲线如图8所示。可以看出,Resnet模型AUC值为95.80%,分类效果较好,但是还有提升空间。

图8 经典残差网络ROC曲线

为了进一步分析模型分类效果,图9分别绘制了LeNet-5网络、AlexNet网络和多导联残差网络(IMRN)相应的ROC曲线以及对应的AUC值。LeNet-5是最经典的卷积神经网络,由两个卷积层、两个池化层、两个全连接层和一个输出层组成[22];AlexNet是 Hinton研究团队在 2012年参加的Image Net图像识别竞赛中获得冠军的一种新型卷积神经网络[23],将二者与本文算法进行对比,对广泛前壁心梗进行自动诊断,从图9中可以看出,传统LeNet网络AUC值为86.54%,AlexNet网络AUC值达到了93.20%,而本文提出的新算法AUC值可达到98.00%,曲线更靠近Y轴,分类性能更好。

图9 三种模型ROC曲线对比

将三种算法及传统残差网络算法的准确率、灵敏度、特异性、精度与F1-score值进行比较,如表1所示。

表1 不同模型比较

从表1中可以看出,本文提出的IMRN算法准确率达到了97.85%,F1-score值达到96.33%,各方面参数都优于前三种网络模型。再将IMRN网络与现有的其他文献里面的准确率进行比较,如表2所示。

表2 本文算法与文献中算法比较

表2中可以看出,与其他文献运用深度学习提出的网络结构相比,IMRN的准确性和特异性都有明显提升,证明了此算法的优越性。

3 结论

针对人工诊断广泛前壁心梗复杂度高、传统机器学习算法诊断准确率低的问题,提出了一种基于改进的多导联残差网络(IMRN)模型,实现了广泛前壁心梗和正常心电信号的分类,达到了97.85%的准确率。将其与经典的LeNet、AlexNet、Resnet相比较,根据ROC曲线分析,得出IMRN诊断能力更强。

下一步研究是将预测模型用于临床数据的检测,根据国人心电数据特点进一步调整参数,优化模型,从而在临床中获得更广泛应用。

猜你喜欢
前壁心梗导联
关于《心电图动态演变为Aslanger 样心肌梗死1 例》的商榷
小切口扩张后气管前壁穿刺切开术在危重病人中的应用与探讨
心梗突发的九大不典型“求救信号”
诱发“心梗”的10个危险行为
祝您健康(2019年10期)2019-10-18 01:29:28
经闭孔阴道前壁尿道悬吊术与自体阔筋膜悬吊术治疗张力性尿失禁的疗效比较
β2微球蛋白的升高在急性心梗中预测死亡风险的临床意义
aVR导联ST段改变对不同冠脉血管病变的诊断及鉴别诊断意义
aVR导联及其特殊位置对冠心病诊断的意义
心电图F导联在健康体检中的应用与普及
二维斑点追踪与双源CT分析左心室前壁缺血的局部心肌功能