一种基于融合异源数据的宽深神经网络心肌梗死检测方法与流程

文档序号:25808039发布日期:2021-07-09 13:12阅读:126来源:国知局
一种基于融合异源数据的宽深神经网络心肌梗死检测方法与流程

1.本发明涉及医学信号处理技术领域,特别涉及一种基于融合异源数据的宽深神经网络心肌梗死检测方法。


背景技术:

2.随着人工智能技术的发展,智能辅助诊断系统因其快速、可靠的特点已成为最具前景的临床诊断解决方案。由于心电远程监护技术的迅速发展和普及,以及当下可穿戴设备的流行我们可以很容易地得到病人的心电信号以及其他生理特征。传统上,医生可以通过观察心电信号中蕴含的信息来判断病人是否患心肌梗死,然而仅通过观察变化微弱的心电信号来推断病人状态的过程是费力的,并且容易因复杂的心电变化而产生错误的判断。因此,利用计算机来进行智能辅助的诊断系统可以克服对心电信号的评估限制,从而更好的辅助医生对病人心肌梗死的患病情况进行推断。然而传统的辅助诊断系统在使用过程中往往存在以下问题:1.传统的辅助诊断系统仅是对病人心电信号中的信息进行实时的分析进而得到其中的有效信息。即通过提取表征心电图有效信息的特征向量,并将其输入到分类器算法中,得到预测的心拍类别,从而判断病人是否患心肌梗死,但是由于心电信号变化较为微弱且复杂,单一地使用心电信号来对病人状态进行推断往往效果达不到临床要求,使得检测的准确度降低;2.传统的辅助诊断系统不具备病历信息的采集功能,不便于提供更为可靠的实施效果;3.现有传统的辅助诊断系统适用范围窄,对于具有病历信息及心电信息的病人不适用,且不能充分利用信息检测,提高了检测难度。


技术实现要素:

3.本发明的主要目的在于提供一种基于融合异源数据的宽深神经网络心肌梗死检测方法,可以有效解决背景技术中的问题。
4.为实现上述目的,本发明采取的技术方案为:
5.一种基于融合异源数据的宽深神经网络心肌梗死检测方法,包括以下步骤:
6.s1:数据预处理,读入12导联的心电信号的数据,采用小波变换滤除原始心电信号中的工频干扰,采用巴特沃斯带阻滤波器滤除肌电干扰,采用中值滤波滤除原始心电信号中的基线漂移;
7.s2:心拍数据提取,通过小波变换检测r波位置,进而对r波前后数据点进行固定长度截取,从而完成对心拍数据提取;
8.s3:异源数据预处理,对于病人病历信息进行筛选,过滤出用户个人病历中与心肌梗死可能相关的特征进行预处理,并构建交叉特征;
9.s4:模型搭建,搭建联结12导联的心电信号与病人病历数据的宽深神经网络模型,宽度部分为广义线性回归模型,深度部分为七层全连接层,两个部分的输出各自构成损失函数的一部分;
10.s5:训练模型参数,初始化所述宽深神经网络的参数,将构建好的数据集拆分为训
练集和测试集;利用训练集样本对模型宽度与深度部分进行联合训练,生成所述宽深神经网络的参数并保存;
11.s6:模型预测,对测试集样本进行自动识别,获得心肌梗死的二分类结果。
12.优选的,所述s2具体包括:读取降噪后12导联的心电信号数据,对每个导联心电信号根据同一时刻r波峰值处的位置固定向前截取200个样本点,向后截取400个样本点,使得每个导联的每个心拍固定截取600个点的数据,对相同时刻r波顶点每个导联所截取的600个点的心电信号进行行级上的拼接,此时原始每个心拍的心电信号的数据形成12*600维的样本,作为宽深神经网络模型的输入数据x1。
13.优选的,所述s3具体包括:对病历信息进行筛选,过滤出与心肌梗死可能相关的信息,包括14个病人特征;对病历数据:性别x21、所属年龄段x22、血型x23、是否胸痛x24、是否胸闷x25、是否心绞痛x26、是否有先天性心脏病x27、是否有相关家族遗传病史x28、静息血压变化是否异常x29、血脂含量变化是否异常x2
10
、心肌酶含量变化是否异常x2
11
、c反应蛋白含量变化是否异常x2
12
、白细胞含量变化是否异常x2
13
、钙蛋白含量变化是否异常x2
14
这14个离散型特征,首先利用one

hot方法进行编码,生成多维的互斥离散化向量,其中所属年龄段x22为10维互斥向量,血型x23为34维互斥向量,其他均为2维互斥向量,然后将生成的向量依次在行级上拼接,此时原始每个心拍的心电信号的数据形成64维的样本,作为宽深神经网络模型的输入数据x2;进而对这14个病人特征两两之间进行交叉,共进行91次交叉,得到91个交叉特征,对每个交叉特征使用one

hot编码。
14.优选的,所述one

hot编码,表示如下:其中,x2
k1
、x2
k2
分别表示第k次交叉的两个病人特征,为one

hot向量,为张量积,φ表示将一个n
×
m矩阵的所有行合并成,转换成一个n*m维的向量,x3
k
表示第k个交叉特征,为one

hot向量,维度为d(x2
k1
)*d(x2
k2
),d(x2
k1
)、d(x2
k2
)各自表示第k次交叉的两个病人特征向量维度;将所有交叉特征向量在行级上拼接,共得到1660维向量,作为宽深神经网络模型输入x3,表示为:x3=[x31,x32,..,x3
91
]∈r
1660

[0015]
优选的,所述s4具体包括:
[0016]
a.宽度模块,用于获取原始病人病历数据及叉乘后的病人特征,输入到广义线性回归模型中,使得在预测过程中考虑交叉特征,让模型具有可解释的记忆能力;
[0017]
b.深度模块,用于获取心电信号及原始病人病历数据,对输入的数据通过多层全连接神经网络映射到低维稠密空间中,得到高层抽象特征,让模型具有泛化能力;
[0018]
c.联合模块,将宽度模块与深度模块的输出结果输入到同一个sigmoid函数中,sigmoid函数的输出为宽深神经网络的整体预测结果,采用二元交叉熵作为宽深神经网络模型的损失函数。
[0019]
优选的,所述宽度模块为广义线性回归模型,输入的数据为x,其中x是x2与x3在行级上的拼接,表示为:x=[x2,x3]∈r
64+1660
,其中,x2∈r
64
,x3∈r
1660
,模型每个样本的输入数据均是64+1660维,其中64为病历数据one

hot编码后的维度总和,1660为交叉特征one

hot向量的维度总和,宽度将64+1660维数据x输入至线性模型中,输出心肌梗死预测结果,最终宽度模块的输出结果可表示为:output
wide
=w
lrt
x+b,其中,w
lrt
为线性模型需学习的权重参数,x为输入数据,b为线性模型偏置。
[0020]
优选的,所述深度模块为七层全连接神经网络,输入的数据为优选的,所述深度模块为七层全连接神经网络,输入的数据为为心电信号数据x1与病人病历数据x2在行级上的拼接,表示为:其中,x1∈r
12*600
,x2∈r
64
,其中12为导联的个数,600为每个心拍上截取的样本点数,64为病历数据one

hot编码后的维度总和;输入12*600+64维x数据到七层全连接神经网络中,除最后的输出层外,其中每个全连接层单元的输出端依次串联一个激励单元操作和一个弃权操作;第一个全连接层单元的神经元个数为7264个,全连接层单元后的激励单元为relu函数,弃权比例为0.3,经过第一层全连接层单元后的特征图维度为7264;第二个全连接层单元的神经元个数为1000个,全连接层单元后的激励单元为relu函数,弃权比例为0.4,经过第一层全连接层单元后的特征图维度为1000;第三个全连接层单元的神经元个数为300个,全连接层单元后的激励单元为relu函数,弃权比例为0.3,经过第一层全连接层单元后的特征图维度为300;第四个全连接层单元的神经元个数为200个,全连接层单元后的激励单元为relu函数,弃权比例为0.4,经过第一层全连接层单元后的特征图维度为200;第五个全连接层单元的神经元个数为100个,全连接层单元后的激励单元为relu函数,弃权比例为0.3,经过第一层全连接层单元后的特征图维度为100;第六个全连接层单元的神经元个数为50个,全连接层单元后的激励单元为relu函数,弃权比例为0.3,经过第一层全连接层单元后的特征图维度为50;第七个全连接层单元的神经元个数为1个,全连接层单元后的激励单元为sigmoid函数,经过第一层全连接层单元后的特征图维度为1;所述全连接神经网络采用的公式如下:其中a
l
是第l

1层的输出,a
l
‑1,b
l
‑1,w
l
‑1,f是第l

1层的激活值、偏置、权重和激活函数,12导联信号与病人病历数据拼接进行上述深度模块操作后,输出心肌梗死预测结果,输出结果表示为:其中,a7,b7,w7,f是第七层神经网络的输入特征、偏置、权重和激活函数。
[0021]
优选的,所述联合模块将宽度模块与深度模块的输出结果作为同一个sigmoid函数的输入,sigmoid函数的输出为宽深神经网络的整体预测结果,表示如下:y(x)=s(output
wide
+output
deep
),其中,y(x)为宽深神经网络预测病人患心肌梗死的概率,output
wide
、output
deep
如上述,分别为宽度模块和深度模块的输出,s表示sigmoid函数;采用二元交叉熵函数作为宽深神经网络模型的损失函数,表示为:l=

(y*log y(x)+(1

y)*log(1

y(x))),其中:y为真实的标签,用0或1表示,y(x)如上所述,为预测的标签。
[0022]
优选的,所述s5具体包括:初始化所述宽深神经网络的参数,将构建好的数据集随机抽取70%数目的样本当作训练集,其他30%的样本视为测试集;将训练集中的样本数据输入到初始化后的宽深神经网络中,以最小化上述损失函数为目标联合训练模型的宽度模块与深度模块,具体来说,使用ftrl优化算法训练宽度模块,使用adagrad优化算法训练深度模块;每迭代一次更新一次训练参数,直至最后宽深神经网络的损失值和准确率稳定在某一数值附近,停止训练并保存当前网络的训练参数和模型结构信息。
[0023]
优选的,所述s6具体包括:将测试集样本输入到已训练好的模型中,进行自动识别,获得心肌梗死的二分类预测结果。
[0024]
与现有技术相比,本发明具有如下有益效果:
[0025]
1、本发明中,通过改进现有的深层神经网络模型在心肌梗死检测中的应用方法,
适用于在临床上辅助心肌梗死的检测;传统的心肌梗死检测方法仅仅利用了病人的心电信号,并没有融合病人的其他生理信息,本发明提出的方法基于宽深神经网络,通过对病人心电信号特征以及异源生理特征进行联合提取,充分利用已有信息,缓解了心肌梗死检测难度,使得算法更贴近临床检测实际,从而让心肌梗死检测变得更加准确。
[0026]
2、本发明中,通过使用病历信息作为病人的额外信息,相对于传统的心肌梗死算法中仅单一使用心电信号信息,更可以深层次得反映病人生理状态,对于因心电信号变化复杂而导致准确度达不到临床要求的检测可以提供更为可靠的实施效果。
[0027]
3、本发明中,通过对病人心电信号特征以及病历信息进行联合提取,充分利用已有信息,缓解了心肌梗死检测难度,使得算法更贴近临床检测实际,从而让心肌梗死检测变得更加准确,提升了病人的满意度,可用于各种具有病历信息及心电信息的病人。
附图说明
[0028]
图1为一种基于融合异源数据的宽深神经网络心肌梗死检测方法的流程图;
[0029]
图2为一种基于融合异源数据的宽深神经网络心肌梗死检测方法中宽深神经网络模型整体结构示意图;
[0030]
图3为一种基于融合异源数据的宽深神经网络心肌梗死检测方法中宽深神经网络模型的宽度模块的示意图;
[0031]
图4为一种基于融合异源数据的宽深神经网络心肌梗死检测方法中宽深神经网络模型的深度模块的示意图。
具体实施方式
[0032]
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
[0033]
在本发明的描述中,需要说明的是,术语“上”、“下”、“内”、“外”“前端”、“后端”、“两端”、“一端”、“另一端”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
[0034]
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“设置有”、“连接”等,应做广义理解,例如“连接”,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
[0035]
如图1

4所示,一种基于融合异源数据的宽深神经网络心肌梗死检测方法,包括以下步骤:
[0036]
s1:数据预处理,读入12导联的心电信号的数据,采用小波变换滤除原始心电信号中的工频干扰,采用巴特沃斯带阻滤波器滤除肌电干扰,采用中值滤波滤除原始心电信号中的基线漂移;
[0037]
s2:心拍数据提取,通过小波变换检测r波位置,进而对r波前后数据点进行固定长
度截取,从而完成对心拍数据提取;
[0038]
s3:异源数据预处理,对于病人病历信息进行筛选,过滤出用户个人病历中与心肌梗死可能相关的特征进行预处理,并构建交叉特征;
[0039]
s4:模型搭建,搭建联结12导联的心电信号与病人病历数据的宽深神经网络模型,宽度部分为广义线性回归模型,深度部分为七层全连接层,两个部分的输出各自构成损失函数的一部分;
[0040]
s5:训练模型参数,初始化所述宽深神经网络的参数,将构建好的数据集拆分为训练集和测试集;利用训练集样本对模型宽度与深度部分进行联合训练,生成所述宽深神经网络的参数并保存;
[0041]
s6:模型预测,对测试集样本进行自动识别,获得心肌梗死的二分类结果。
[0042]
s2具体包括:读取降噪后12导联的心电信号数据,对每个导联心电信号根据同一时刻r波峰值处的位置固定向前截取200个样本点,向后截取400个样本点,使得每个导联的每个心拍固定截取600个点的数据,对相同时刻r波顶点每个导联所截取的600个点的心电信号进行行级上的拼接,此时原始每个心拍的心电信号的数据形成12*600维的样本,作为宽深神经网络模型的输入数据x1;s3具体包括:对病历信息进行筛选,过滤出与心肌梗死可能相关的信息,包括14个病人特征;对病历数据:性别x21、所属年龄段x22、血型x23、是否胸痛x24、是否胸闷x25、是否心绞痛x26、是否有先天性心脏病x27、是否有相关家族遗传病史x28、静息血压变化是否异常x29、血脂含量变化是否异常x2
10
、心肌酶含量变化是否异常x2
11
、c反应蛋白含量变化是否异常x2
12
、白细胞含量变化是否异常x2
13
、钙蛋白含量变化是否异常x2
14
这14个离散型特征,首先利用one

hot方法进行编码,生成多维的互斥离散化向量,其中所属年龄段x22为10维互斥向量,血型x23为34维互斥向量,其他均为2维互斥向量,然后将生成的向量依次在行级上拼接,此时原始每个心拍的心电信号的数据形成64维的样本,作为宽深神经网络模型的输入数据x2;进而对这14个病人特征两两之间进行交叉,共进行91次交叉,得到91个交叉特征,对每个交叉特征使用one

hot编码;one

hot编码,表示如下:其中,x2
k1
、x2
k2
分别表示第k次交叉的两个病人特征,为one

hot向量,为张量积,φ表示将一个n
×
m矩阵的所有行合并成,转换成一个n*m维的向量,x3
k
表示第k个交叉特征,为one

hot向量,维度为d(x2
k1
)*d(x2
k2
),d(x2
k1
)、d(x2
k2
)各自表示第k次交叉的两个病人特征向量维度;将所有交叉特征向量在行级上拼接,共得到1660维向量,作为宽深神经网络模型输入x3,表示为:x3=[x31,x32,..,x3
91
]∈r
1660
;s4具体包括:
[0043]
a.宽度模块,用于获取原始病人病历数据及叉乘后的病人特征,输入到广义线性回归模型中,使得在预测过程中考虑交叉特征,让模型具有可解释的记忆能力;
[0044]
b.深度模块,用于获取心电信号及原始病人病历数据,对输入的数据通过多层全连接神经网络映射到低维稠密空间中,得到高层抽象特征,让模型具有泛化能力;
[0045]
c.联合模块,将宽度模块与深度模块的输出结果输入到同一个sigmoid函数中,sigmoid函数的输出为宽深神经网络的整体预测结果,采用二元交叉熵作为宽深神经网络模型的损失函数;宽度模块为广义线性回归模型,输入的数据为x,其中x是x2与x3在行级上的拼接,表示为:x=[x2,x3]∈r
64+1660
,其中,x2∈r
64
,x3∈r
1660
,模型每个样本的输入数据均是64+1660维,其中64为病历数据one

hot编码后的维度总和,1660为交叉特征one

hot向量的维度总和,宽度将64+1660维数据x输入至线性模型中,输出心肌梗死预测结果,最终宽
度模块的输出结果可表示为:output
wide
=w
lrt
x+b,其中,w
lrt
为线性模型需学习的权重参数,x为输入数据,b为线性模型偏置;深度模块为七层全连接神经网络,输入的数据为数,x为输入数据,b为线性模型偏置;深度模块为七层全连接神经网络,输入的数据为为心电信号数据x1与病人病历数据x2在行级上的拼接,表示为:其中,x1∈r
12*600
,x2∈r
64
,其中12为导联的个数,600为每个心拍上截取的样本点数,64为病历数据one

hot编码后的维度总和;输入12*600+64维x数据到七层全连接神经网络中,除最后的输出层外,其中每个全连接层单元的输出端依次串联一个激励单元操作和一个弃权操作;第一个全连接层单元的神经元个数为7264个,全连接层单元后的激励单元为relu函数,弃权比例为0.3,经过第一层全连接层单元后的特征图维度为7264;第二个全连接层单元的神经元个数为1000个,全连接层单元后的激励单元为relu函数,弃权比例为0.4,经过第一层全连接层单元后的特征图维度为1000;第三个全连接层单元的神经元个数为300个,全连接层单元后的激励单元为relu函数,弃权比例为0.3,经过第一层全连接层单元后的特征图维度为300;第四个全连接层单元的神经元个数为200个,全连接层单元后的激励单元为relu函数,弃权比例为0.4,经过第一层全连接层单元后的特征图维度为200;第五个全连接层单元的神经元个数为100个,全连接层单元后的激励单元为relu函数,弃权比例为0.3,经过第一层全连接层单元后的特征图维度为100;第六个全连接层单元的神经元个数为50个,全连接层单元后的激励单元为relu函数,弃权比例为0.3,经过第一层全连接层单元后的特征图维度为50;第七个全连接层单元的神经元个数为1个,全连接层单元后的激励单元为sigmoid函数,经过第一层全连接层单元后的特征图维度为1;全连接神经网络采用的公式如下:其中a
l
是第l

1层的输出,a
l
‑1,b
l
‑1,w
l
‑1,f是第l

1层的激活值、偏置、权重和激活函数,12导联信号与病人病历数据拼接进行上述深度模块操作后,输出心肌梗死预测结果,输出结果表示为:其中,a7,b7,w7,f是第七层神经网络的输入特征、偏置、权重和激活函数;联合模块将宽度模块与深度模块的输出结果作为同一个sigmoid函数的输入,sigmoid函数的输出为宽深神经网络的整体预测结果,表示如下:y(x)=s(output
wide
+output
deep
),其中,y(x)为宽深神经网络预测病人患心肌梗死的概率,output
wide
、output
deep
如上述,分别为宽度模块和深度模块的输出,s表示sigmoid函数;采用二元交叉熵函数作为宽深神经网络模型的损失函数,表示为:l=

(y*log y(x)+(1

y)*log(1

y(x))),其中:y为真实的标签,用0或1表示,y(x)如上,为预测的标签;s5具体包括:初始化宽深神经网络的参数,将构建好的数据集随机抽取70%数目的样本当作训练集,其他30%的样本视为测试集;将训练集中的样本数据输入到初始化后的宽深神经网络中,以最小化上述损失函数为目标联合训练模型的宽度模块与深度模块,具体来说,使用ftrl优化算法训练宽度模块,使用adagrad优化算法训练深度模块;每迭代一次更新一次训练参数,直至最后宽深神经网络的损失值和准确率稳定在某一数值附近,停止训练并保存当前网络的训练参数和模型结构信息;s6具体包括:将测试集样本输入到已训练好的模型中,进行自动识别,获得心肌梗死的二分类预测结果。
[0046]
需要说明的是,本发明为一种基于融合异源数据的宽深神经网络心肌梗死检测方
法,首先进行数据预处理,读入12导联的心电信号的数据,采用小波变换滤除原始心电信号中的工频干扰,采用巴特沃斯带阻滤波器滤除肌电干扰,采用中值滤波滤除原始心电信号中的基线漂移;然后心拍数据提取,通过小波变换检测r波位置,进而对r波前后数据点进行固定长度截取,从而完成对心拍数据提取;并对异源数据进行预处理,对于病人病历信息进行筛选,过滤出用户个人病历中与心肌梗死可能相关的特征进行预处理,并构建交叉特征;然后模型搭建,搭建联结12导联的心电信号与病人病历数据的宽深神经网络模型,宽度部分为广义线性回归模型,深度部分为七层全连接层,两个部分的输出各自构成损失函数的一部分;训练模型参数,初始化宽深神经网络的参数,将构建好的数据集拆分为训练集和测试集;利用训练集样本对模型宽度与深度部分进行联合训练,生成宽深神经网络的参数并保存;最终模型预测,对测试集样本进行自动识别,获得心肌梗死的二分类结果,该融合了异源数据的宽深神经网络心肌梗死检测方法,适用于临床上辅助医生进行心肌梗死的检测,传统的心肌梗死检测方法仅仅利用了病人的心电信号,并没有融合病人的其他生理信息,本发明提出的方法基于宽深神经网络,通过对病人心电信号特征以及异源生理特征进行联合提取,充分利用已有信息,缓解了心肌梗死检测难度,使得算法更贴近临床检测实际,从而让心肌梗死检测变得更加准确。
[0047]
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1