一种基于DCGAN和深度神经网络方法的房颤识别方法与流程

文档序号:25808076发布日期:2021-07-09 13:12阅读:168来源:国知局
一种基于DCGAN和深度神经网络方法的房颤识别方法与流程
一种基于dcgan和深度神经网络方法的房颤识别方法
技术领域
1.本发明涉及心电图异常检测技术领域,具体为一种基于dcgan和深度神经网络方法的房颤识别方法。


背景技术:

2.科学研究表面,全世界每年有数千万人死于心脏疾病,心脏疾病是在所有疾病中 发病率最高、危害最大的疾病。心房颤动,简称房颤,是最常见的持续性心律失常心脏疾病。 据统计,房颤的发病率为1%

2%,并且随着年龄的增长房颤的患病率也逐渐增加。心脏本身的疾病如心脏衰竭、瓣膜疾病、心肌梗死等与房颤疾病显著相关。实际上,房颤患者的症状多变且无特异性,因此从症状无法确定是否存在房颤发作,必须依赖心电学检测证实。
3.随着人工智能技术的发展,房颤信号的检测可以不再依赖于专业医生的经验判断,而使用人工智能技术中的机器学习以及深度学习算法让机器进行房颤信号的检测,提高了房颤检测的效率近年来。但是现有机器学习和深度学习模型多为数据驱动,研究者需要提供大量训练样本作为模型的支持。然而,目前难以获得高质量的心电信号分类样本。一方面,由于采集自临床的绝大部分心电信号属于正常信号,因此所建立的数据集中异常心电信号稀少,与正常心电信号比例 严重不均衡;另一方面,由于心电的类别需要由专业医生逐个心拍进行标注,因而获得大量的数据的成本很高。由于心电信号的特性,心电不能如同一般图片般通过旋转、对称等方式做数据扩增。样本不均衡和总样本量较少会导致所训练的深度学习模型性能不佳。


技术实现要素:

4.(一)解决的技术问题针对现有技术的不足,本发明提供了一种基于dcgan和深度神经网络方法的房颤识别方法,解决了样本不均衡问题,以便获取更高质量的心电信号样本,为医生输出更准确的的评估数据。
5.(二)技术方案为实现以上目的,本发明通过以下技术方案予以实现:一种基于dcgan和深度神经网络方法的房颤识别方法,具体包括以下步骤:步骤1:数据预处理:步骤1.1、获取两个训练数据库:其中训练数据库1为已知房颤的心电数据,训练库数据2为采集到的心电信号数据;步骤1.2、对每个导联心电图信号进行预处理,以滤除基线漂移、工频干扰噪音,将除噪后的心电信号重采样至某一固定采样率,之后再通过斜率、幅度和宽度的数字分析来定位qrs复合波,最后再从完整的ecg信号中以r峰为中心进行分割提取单个心拍,通过对单个心拍的截取,取得测量时间在8秒以上的原始心电图波形数据、心电图附加信息;步骤1.3、对每个导联的心电数据采用上下截止频率分别为0.1hz、100hz的fir滤
波器进行滤波,如果心电信号采样频率不是500hz时,则采用最邻近内插法将心电信号重采样为 500hz,最终生成12导联的心电信号样本;步骤1.4、读入12导联的心电信号的数据,对每个导联心电信号根据同一时刻r波顶点的位置向前截取p个点,向后截取q个点,每个导联的每个心拍截取w=p+q个点的数据,相同时刻r波顶点每个导联所截取心电信号的w个点进行第二维度拼接,此时心电信号由1*w维扩增为12*w维,将原始每个心拍的心电信号的数据处理成上述12*w维的浮点数向量;步骤1.5、将向量化后的数据进一步进行标准化处理,使浮点数据的值介于[

1,1]范围内;步骤2:dcgan的构造:步骤2.1、生成新图片:从服从噪声先验pg(z)的噪音样本中,随机抽取最小批量m个噪音样本,分别将这些随机噪音的向量表示z作为为生成网络g(z)的输入,经过一系列的跨步卷积(反卷积)操作,最终获得新的心电信号图片;步骤2.2、识别图片真伪:从步骤1获取每个导联的真实的心电图中,随机抽取的最小批量m真实样本的向量化表示,以及步骤2.1中生成的新图片的向量化表示,一起输入到判别网络d中,经过一些列的卷积操作,可以判断图片是真实图片的概率;步骤2.3、训练判别网络d:由于生成网络g(z)试图欺骗d,所以会根据d的反馈优化输出的图像,也就是最大化d(g(z)),相当于优化1

d(g(z)),因为d的返回值在(0,1)区间内,整体过程就和gan一样,是一个极小极大值过程(minimax game),一方面最大化d的判断准确率,令一方面最小化g生成图片和真实图片的差异,需要对于每一个来自真实数据的x,最大化d(x);同时,对于每一个不是来自真实数据的x,最小化d(x);步骤2.4、不断地重复步骤2.1至步骤2.3,直至判别过程和生成过程达到纳什均衡状态;步骤3:室性房颤识别:将步骤2最终生成的心电图数据和原有的室性房颤数据(训练数据库1)混合在一起,作为室性房颤样本集,然后将该样本与数据库样本2一起输入到深度神经网络中,进行判别。
[0006]
优选的,所述步骤3中具体包括以下步骤:1)、数据预处理:将步骤2判别器最终生成的新的心电图图像,添加到原先的室性房颤数据库中,并将混合后的数据库中的图像都处理成12*w维的心电图浮点数向量;2)、搭建深度神经网络:深度神经网络包括多个依次串联的卷积层单元和全连接层单元,且在合并层单元和卷积层单元间有图像编码层用于将心电信号由一维编码为二维图像;每个所述卷积层单元包括一个卷积层以及该卷积层输出端依次串联的一激励单元操作和一池化层操作;构建的卷积神经网络的结构为输入层

卷积层

池化层

卷积层

池化层

卷积层

全连接层

输出层;第一个卷积层单元的卷积核数为5个,卷积核大小为3,卷积层单元后的激励单元为relu函数,池化层单元的 池化核大小为2,池化步长为2;经过第一层池化单元后的特征图维度为(w/2)*5;第二个卷积层单元的卷积核数为10个,卷积核大小为4,卷积层单元后的激励单元为relu函数,池化层单元的池化核大小为2,池化步长为2;经过第二层池化单元后的特征图维度为(w/4)*10,第三个卷积层单元的卷积核数为20个,卷积核大小为4,卷积层后的激励单元为relu函数,池化层单元的池化核大小为2,池化步长为2;经过第三层池化单元后的特征图维度为(w/ 8)*20 ;
多个导联的特征融合成一块,形成最终特征,得到的特征输入激励单元为softmax的全连接层,全连接层的层数为3层,得到输出分类结果y_pred;3)、训练卷积神经网络的参数:初始化所述卷积神经网络的参数,将采样好的数据集u随机抽取80%数目的样本当作训练集,其他未选中的样本视为测试集;将训练集中的心电信号样本输入到初始化后的神经网络中,以最小化代价函数为目标进行迭代,生成所述卷积神经网络的参数并保存;4)、对测试集样本进行自动识别:将划分好的测试集样本输入到卷积神经网络中并运行,获得测试集样本对应的2维预测值向量输出,将测试集样本的标签使用one

hot编码的方法生成2维的标签向量,将输出的预测值与测试集样本的标签比对来检查分类是否正确,通过分类结果y_pred来判别模型的性能。
[0007]
优选的,所述步骤2.3中分别更新判别网络d和生成网络g中的参数,具体地更新规则如公式(1)和公式(2)所示:判别网络d的更新规则生成网络g的更新规则:。
[0008]
由于原始的gan网络在训练过程中生成者生成图像质量不太稳定,无法得到高质量的生成者网络,导致这个问题的主要原因是生成者与判别者使用相同的反向传播网络,对生成者网络的改进就是用卷积神经网络替代原理的mlp实现稳定生成者网络,生成高质量的图像。这个就是deep convolutional generative adversarial network (dcgan)的由来。相比gan,dcgan把原来使用mlp的地方都改成了cnn,并使用步长卷积代替上采样层,因卷积在提取图像特征上具有很好的作用,并且使用卷积代替全连接层,以及去掉了池化层,同时生成器g和判别器d中几乎每一层都使用batchnorm层,将特征层的输出归一化到一起,加速了训练,提升了训练的稳定性。因此利用了dcgan技术来学习生成更多的房颤样本,然后在此基础上利用深度神经网络进行房颤识别。
[0009]
(三)有益效果本发明提供了一种基于dcgan和深度神经网络方法的房颤识别方法。具备以下有益效果:(1)、由于心电不能如同一般图片般通过旋转、对称等方式做数据扩增,本发明利用了dcgan(深度卷积生成对抗网络)方法生成了高质量的样本,并比gan(生成对抗网络)等其他深度学习方法更稳定。
[0010]
(2)、此方法不仅可以扩增房颤样本,更是可以扩增其他异常样本。
[0011]
(3)、本发明在利用dcgan地基础上,再利用深度神经网络进行房颤识别,大大提高了诊断地准确率和效率。
附图说明
[0012]
图1为房颤识别的整体流程示意图;图2为dcgan的整体结构模型示意图;
图3为dcgan的生成网络模型示意图;图4为dcgan的对抗网络模型示意图。
具体实施方式
[0013]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0014]
请参阅图1

4,本发明提供一种技术方案:一种基于基于dcgan和深度神经网络的房颤识别问题是按如下步骤进行:步骤1:数据预处理:步骤1.1、获取两个训练数据库,其中训练数据库1为已知房颤的心电数据(异常数据),训练库数据2为采集到的心电信号数据(混合数据);步骤1.2、对每个导联心电图信号进行预处理,以滤除基线漂移、工频干扰噪音,将除噪后的心电信号重采样至某一固定采样率,之后再通过斜率、幅度和宽度的数字分析来定位qrs复合波,最后再从完整的ecg信号中以r峰为中心进行分割提取单个心拍,通过对单个心拍的截取,取得测量时间在8秒以上的原始心电图波形数据、心电图附加信息;步骤1.3、对每个导联的心电数据采用上下截止频率分别为0.1hz、100hz的fir滤波器进行滤波,如果心电信号采样频率不是500hz时,则采用最邻近内插法将心电信号重采样为 500hz,最终生成12导联的心电信号样本;步骤1.4、读入12导联的心电信号的数据,对每个导联心电信号根据同一时刻r波顶点的位置向前截取p个点,向后截取q个点,每个导联的每个心拍截取w=p+q个点的数据,相同时刻r波顶点每个导联所截取心电信号的w个点进行第二维度拼接,此时心电信号由1*w维扩增为12*w维,将原始每个心拍的心电信号的数据处理成上述12*w维的浮点数向量;步骤1.5、将向量化后的数据进一步进行标准化处理,使浮点数据的值介于[

1,1]范围内;步骤2:dcgan(深度卷积生成对抗网络)的构造:考虑到原始的gan网络在训练过程中生成器生成图像质量不太稳定,无法得到高质量的生成网络,因此这里使用dcgan网络学习训练样本的特征,并生成高质量的新样本,dcgan由两个子网构成,一个是生成网(g),一个是判别网(d)。生成网络g的目标是生成尽量真实的图片去欺骗d,判别网络d的目标是尽量区别g生成的图片和真实图片,g和d一起构成了一个博弈过程。同时由于dcgan将cnn(卷积神经网络)和gan(生成对抗网络)结合了起来,使得生成网络的质量和判别网络的质量大大提高,dcgan的整体结构如图2所示,其中生成网络的结构如图3所示,判别网络如图4 所示;步骤2.1、生成新图片:从服从噪声先验pg(z)的噪音中,随机抽取最小批量m个噪音,分别将这些随机噪音的向量表示z作为为生成网络g(z)的输入,经过一系列的跨步卷积(反卷积)操作,最终获得新的心电信号图片;步骤2.2、识别图片真伪:从步骤1获取每个导联的真实的心电图中,随机抽取的最小批量m真实样本的向量化表示,以及步骤2.1中生成的新图片的向量化表示,一起输入到
判别网络d中,经过一些列的卷积操作,可以判断图片是真实图片的概率;步骤2.3、训练判别网络d:由于生成网络g(z)试图欺骗d,所以会根据d的反馈优化输出的图像,也就是最大化d(g(z)),相当于优化1

d(g(z)),因为d的返回值在(0,1)区间内。整体过程就和gan一样,是一个极小极大值过程(minimax game),一方面我们最大化d的判断准确率,令一方面我们最小化g生成图片和真实图片的差异。因此需要对于每一个来自真实数据的x,最大化d(x);同时,对于每一个不是来自真实数据的x,最小化d(x),在这个训练中,我们会分别更新判别网络d和生成网络g中的参数,具体地更新规则如公式(1)和公式(2)所示:判别网络d的更新规则生成网络g的更新规则:步骤2.4、不断地重复步骤2.1至步骤2.3,直至判别过程和生成过程达到纳什均衡状态。
[0015]
步骤3:室性房颤识别:将步骤2最终生成的心电图数据和原有的室性房颤数据(训练数据库1)混合在一起,作为室性房颤样本集。然后将该样本与数据库样本2一起输入到深度神经网络中,进行判别。
[0016]
步骤3.1、数据预处理:将步骤2判别器最终生成的新的心电图图像,添加到原先的室性房颤数据库中,并将混合后的数据库中的图像都处理成12*w维的心电图浮点数向量。
[0017]
步骤3.2、搭建深度神经网络:深度神经网络包括多个依次串联的卷积层单元和全连接层单元,且在合并层单元和卷积层单元间有图像编码层用于将心电信号由一维编码为二维图像;每个所述卷积层单元包括一个卷积层以及该卷积层输出端依次串联的一激励单元操作和一池化层操作;构建的卷积神经网络的结构为输入层

卷积层

池化层

卷积层

池化层

卷积层

全连接层

输出层;第一个卷积层单元的卷积核数为5个,卷积核大小为3,卷积层单元后的激励单元为relu函数,池化层单元的 池化核大小为2,池化步长为2;经过第一层池化单元后的特征图维度为(w/2)*5;第二个卷积层单元的卷积核数为10个,卷积核大小为4,卷积层单元后的激励单元为relu函数,池化层单元的池化核大小为2,池化步长为2;经过第二层池化单元后的特征图维度为(w/4)*10,第三个卷积层单元的卷积核数为20个,卷积核大小为4,卷积层后的激励单元为relu函数,池化层单元的池化核大小为2,池化步长为2;经过第三层池化单元后的特征图维度为(w/ 8)*20 ;多个导联的特征融合成一块,形成最终特征,得到的特征输入激励单元为softmax的全连接层,全连接层的层数为3层,得到输出分类结果y_pred。
[0018]
步骤3.3、训练卷积神经网络的参数:初始化所述卷积神经网络的参数,将采样好的数据集u随机抽取80%数目的样本当作训练集,其他未选中的样本视为测试集;将训练集中的心电信号样本输入到初始化后的神经网络中,以最小化代价函数为目标进行迭代,生成所述卷积神经网络的参数并保存;步骤3.4、对测试集样本进行自动识别:将划分好的测试集样本输入到卷积神经网络中并运行,获得测试集样本对应的2维预测值向量输出,将测试集样本的标签使用one

hot编码的方法生成2维的标签向量,将输出的预测值与测试集样本的标签比对来检查分类是否正确,通过分类结果y_pred来判别模型的性能。
[0019]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......
ꢀ”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0020]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1