非线性支持向量机多特征量化及模型参数寻优重构心源性猝死风险因子的系统及方法

文档序号:28705058发布日期:2022-01-29 13:31阅读:88来源:国知局
非线性支持向量机多特征量化及模型参数寻优重构心源性猝死风险因子的系统及方法

1.本发明属于机器学习、心电信号分裂处理技术领域,尤其涉及一种非线性支持向量机多特征量化及模型参数寻优重构心源性猝死风险因子的系统及方法。


背景技术:

2.心源性猝死((sudden cardiac death,scd))是指即刻或在24个小时以内发生的不可预知的骤然死亡。心源性猝死患者在普遍约1小时的发病期间就能感受到明显的呼吸困难、胸痛心悸等症状,继而出现心脏骤停(sudden cardiac arrest,sca)的现象,如果不能在数分钟内得到有效救助,就会导致死亡。由于心源性猝死具有突发性,即使平时没有心血管疾病病史或症状轻微的人群,也可能因为抽烟、喝酒等不良生活方式以及肥胖、高血压、糖尿病等危险诱因,诱发心脏骤停,导致潜意识丧失和心源性猝死。医学影像和心电图是临床上对心源性猝死进行风险评估的主要手段。通过医学影像可以直观观测到心脏内在本质的活动与变化,但因为观测时间和设备的局限,无法实时灵活地获取心脏信息,心电图以其无创实时便捷性被广泛运用于心脏健康监测。
3.现今对心源性猝死病因的探索主要从医学角度出发,基于生理学及解剖学有目标地观测心电图中的特定波段,但是以上方法受限于人类知识的局限性使得我们有时关注不到一些隐藏的致病因子。在当今医工结合的背景下,我们如何利用计算机强大的数据处理能力及人工智能领域的相关数据处理方法去发掘心源性猝死的潜在隐藏因子,或发现各因子对心源性猝死的影响,从而提升对心源性猝死的预测能力是我们亟待解决的问题。
4.虽然发现心源性猝死因子仍不足以对心源性猝死进行明确的诊断或治疗,但对其进行筛选仍对相关研究具有重要的参考价值。


技术实现要素:

5.针对现有技术存在的缺陷和不足,本发明的目的在于提供一种非线性支持向量机多特征量化及模型参数寻优重构心源性猝死风险因子的系统及方法,包括对心源性猝死心电信号数据集和正常窦性心律心电信号数据集进行数据预处理;对处理好的心电数据集进行心电波形检测;对心源性猝死风险因子进行提取;对提取的初始特征进行特征量化缩放处理;利用非线性支持向量机作为心源性猝死风险因子的验证模型,通过模型参数寻优,确定误差惩罚参数c和核参数γ;通过制定的心源性猝死风险因子和优化后的模型参数得到心源性猝死的预测模型;达到重构、验证心源性猝死风险因子的效果,对研究心源性猝死具有很好的指导意义。
6.本发明具体可以采用以下技术方案:
7.一种非线性支持向量机多特征量化及模型参数寻优重构心源性猝死风险因子的系统,其特征在于,包括:
8.预处理模块,用于对心源性猝死心电信号数据集和正常窦性心律心电信号数据集
进行数据预处理;
9.波形检测模块,用于对预处理完成的心电数据集进行心电波形检测,获取用于猝死风险因子提取的心电波形;
10.初始特征获取模块,用于根据心电波形对需要确认的心源性猝死风险因子进行提取,得到心电初始特征;
11.特征集合构建模块,用于对心电初始特征进行处理获得训练集;
12.特征寻优模块,用于根据所述训练集通过制定的心源性猝死风险因子和优化后的模型参数得到对心源性猝死的预测模型,并通过模型反馈验证重组心源性猝死风险因子;将非线性支持向量机作为心源性猝死风险因子的验证模型,基于高斯核函数,进行模型参数寻优,确定误差惩罚参数c和核参数γ。
13.进一步地,所述预处理模块包括:数据切割子模块、频段分解子模块、噪声滤除子模块和信号重构子模块。
14.进一步地,所述波形检测模块检测qrs波群,并比较基于rr间期的检索区间内,固定大小的滑动窗口下的波形积分面积大小,检测t波末端和t波波峰。
15.进一步地,所述初始特征获取模块对包括:心电信号序列rr间期、qrs时限、qtc间期、t波峰末间期、tp-te/qt指标、t波幅值及心律变异性的潜在因子进行提取。
16.进一步地,所述特征集合构建模块计算初始特征的平均值、标准差和近似熵,用于构建训练集。
17.进一步地,在所述特征集合构建模块中,在构建训练集之后还包括对初始特征进行特征缩放处理的操作:先确定特征间量纲的差异,之后选用最小最大值缩放或标准缩放处理各个特征,得到处于同一量纲数据差异较小的特征值。
18.进一步地,所述特征寻优模块利用改进的网格搜索法和量子粒子群优化算法分别作为参数寻优算法,比较两个参数寻优算法对心源性猝死预测模型性能的影响,确定误差惩罚参数c和核参数γ;以灵敏度se、特异度sp、阳性预测率ppv、准确度acc作为模型评价的指标。
19.进一步地,将心源性猝死发生前20~30min、30~40min、40~50min以及60~70min的心电数据分类作为心源性猝死心电信号数据集;所述特征寻优模块分别输出四个模型分别对应四个时间段。
20.以及,一种非线性支持向量机多特征量化及模型参数寻优重构心源性猝死风险因子的方法,其特征在于,包括以下步骤:
21.步骤s1:对心源性猝死心电信号数据集和正常窦性心律心电信号数据集进行数据预处理;
22.步骤s2:对步骤s1中处理好的心电数据集进行心电波形检测,获取用于猝死风险因子提取的心电波形;基于构建自适应阈值的r波波峰检测方法和多决策规则的qrs波群检测算法检测qrs波群,并比较基于rr间期的检索区间内,固定大小的滑动窗口下的波形积分面积大小,检测t波末端和t波波峰;
23.步骤s3:对需要确认的心源性猝死风险因子进行提取,得到心电初始特征,并对这些初始特征各自的平均值、标准差和近似熵,构建适合模型训练的特征集合;
24.步骤s4:对步骤s3中提取的初始特征进行特征缩放处理;
25.步骤s5:将非线性支持向量机作为心源性猝死风险因子的验证模型,基于高斯核函数,进行模型参数寻优,确定误差惩罚参数c和核参数γ;
26.步骤s6:通过制定的心源性猝死风险因子和优化后的模型参数得到对心源性猝死的预测模型,并通过模型反馈验证重组心源性猝死风险因子。
27.进一步地,步骤s1具体为:
28.步骤s11:将心源性猝死心电数据按照心脏骤停事件发生前20min~30min、30min~40min、40min~50min、60min~70min四个时间段进行分类,再将每个时间段的心源性猝死信号切割成1min时间长度的数据;
29.步骤s12:对于正常窦性心律数据,每笔记录随机取10min的长度,并将其切割成若干个1min的长度;
30.步骤s13:用离散小波变换及mallat算法对心电信号进行处理,得到多层不同频段的心电分解信号;
31.步骤s14:用阈值及阈值函数对分解信号进行阈值处理,滤除心电噪声信号;
32.步骤s15:将滤除噪声的多层分解信号进行重构得到滤波后的心电信号;
33.步骤s2具体为:
34.步骤s21:将滤波后的心电信号通过一个低通滤波器和高通滤波器,两个滤波器构成一个带通滤波器;
35.步骤s22:对每个样本点逐点求导并取绝对值,放大r波的斜率信息,最后对信号进行窗口积分;
36.步骤s23:对经过r波检测规则确定的r波进行校正,基于rr间期确定q波波峰和s波波峰的位置;
37.步骤s24:使用固定长度的滑动窗口对t波末端检索区间内的波形进行积分,比较积分结果确定t波末端,再根据t波末端向前检索确定t波峰值位置;
38.在步骤s4中,确定特征间量纲的差异,选用最小最大值缩放或标准缩放处理各个特征,得到处于同一量纲数据差异较小的特征值;
39.步骤s5具体为:
40.步骤s51:根据四个时间段对应的四个数据集都按照一定的比例分为训练集和测试集,将训练集送入支持向量机;
41.步骤s52:利用改进的网格搜索法和量子粒子群优化算法作为参数寻优算法,比较两个参数寻优算法对心源性猝死预测模型性能的影响,确定误差惩罚参数c和核参数γ;
42.在步骤s6中,输出四个模型分别对应四个时间段,并以灵敏度se、特异度sp、阳性预测率ppv、准确度acc作为模型评价的指标。
43.本发明及其优选方案与现有技术相比,量化正常窦性心律和心源性猝死前的心电信号之间的差异,利用特征集合表征心源性猝死前看似正常的心电信号所暗含的预测信息,为探索心源性猝死风险因子提供了方法论和具体的机器学习构建方案,弥补了因为现有知识的局限性对可能存在的心源性猝死风险因子的人为主观因素的忽视。现有技术基本上在保证预测准确度较高的情况下,其预测时间为心源性猝死发生前20分钟,本发明自主建立并优化模型,在重构、验证猝死风险因子的基础上,将预测时间提高到心源性猝死发生前70分钟,并且基于模型训练,对提取的猝死风险因子的可靠性也有保障。
附图说明
44.下面结合附图和具体实施方式对本发明进一步详细的说明:
45.图1是本发明实施例系统结构和工作流程示意图。
46.图2是本发明实施例模型参数寻优训练流程示意图。
具体实施方式
47.为让本发明的特征和优点能更明显易懂,下文特举实施例,作详细说明如下:
48.应该指出,以下详细说明都是示例性的,旨在对本技术提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本技术所属技术领域的普通技术人员通常理解的相同含义。需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本技术的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
49.如图1所示,本发明提供的非线性支持向量机多特征量化及模型参数寻优重构心源性猝死风险因子的方案,主要包括:数据预处理、波形检测、初始特征提取和构建特征集合、进行特征缩放、模型参数寻优优化模型及最后的验证效果反馈重构风险因子等;
50.其中,数据预处理具体为:
51.从心源性猝死动态心电数据库(sudden cardiac death holter database)和mit-bih正常窦性心律数据库(mit-bih normal sinus rhythm database)获取心电数据,心源性猝死动态心电图数据库共有23个完整的holter记录,编号为30~52。每条记录包含2个导联,采样率为250hz,记录的持续时间在数小时到20小时以上不等。由于编号40、42、49的心电记录没有标注出心脏骤停事件发生的时间;而记录35心电信号噪声干扰较为严重,波形检测效果较差影响模型预测性能;记录38在心源性猝死发生前的心电图呈现长时间段的室性心动过速,有明显的波形异常,预测价值不大,所以本实施例不使用上述的5笔心电记录。mit-bih正常窦性心律数据库共有18个记录,每条记录也包含2个导联,采样率为128hz,记录的持续时间都在24小时左右。
52.将心源性猝死心电数据按照心脏骤停事件发生前20min~30min、30min~40min、40min~50min、60min~70min四个时间段进行分类。然后将每个时间段的心电数据切割成1min的时间长度,并剔除掉室性心律失常明显或是噪声干扰严重的样本。对于正常窦性心律数据,每笔记录随机取10min的长度,并将其切割成若干个1min的长度。
53.本实施例基于离散小波变换滤波,根据心电信号的形态特点选取db8小波函数,根据原始信号的采样频率以及噪声的分布频段选取8层分解层数后,使用基于mallat算法对原始心电信号进行小波分解。选取阈值及阈值函数对分解后需要滤波的频段进行阈值处理,最后再进行小波逆分解,重建恢复出滤波后的心电信号。
54.波形检测具体为:
55.对目前心源性猝死普遍关注的qrs波群及t波进行提取,同时不可忽略j波、p波等潜在因子存在非普遍关注波形作为波形检测源的可能。
56.qrs波群检测算法先对上述经过离散小波变换去噪的心电信号进行预处理,凸显出r波的幅值,降低其他波形的幅值。再根据r波检测规则确定r波波峰的位置,然后接着在
一个范围内调整校正r波波峰位置。最后根据平均rr间期确定自适应的q波和s波检测窗口,由检测窗口内样本点的导数确定q波波峰和s波波峰的位置。
57.在r波检测前先进行预处理,使r波的波形形态变得明显。先将滤波后的心电信号通过一个低通滤波器和高通滤波器,两个滤波器构成了一个带通滤波器,降低p波、t波等其他波形的干扰,保留qrs波群能量集中的频段;再对每个样本点逐点求导并取绝对值,放大r波的斜率信息,最后对信号进行窗口积分,使信号变得平滑。确定r波波峰位置后,求得心电信号的rr间期平均值
[0058][0059]
对于第k个r波波峰位置rk,将定义q波波峰检测窗口。初始化q波导数prevdiffq,从右往左依次计算q波检测窗口内各样本点的导数diffq,当时,则将该点视作q波波峰。将s波波峰检测窗口定义为初始化s波导数prevdiffs,从左往右依次计算s波检测窗口内各样本点的导数diffs,当时,则将该点视作s波波峰。
[0060]
t波检测的具体步骤为:
[0061]
假设心电信号s(k)的采样频率为fs,在第i个r波波峰ri和第i+1个r波波峰r
i+1
之间检测t波末端和t波波峰,ri和r
i+1
的间距定义为rri。将t波末端检索区间定义为[ka,kb],ka和kb都位于ri和r
i+1
之间。
[0062]
对于k=ka,ka+1,

,kb,计算每个k值前后各p个样本点对应的心电信号幅值的均值以及k在长度为w的滑动窗口下的积分面积ak:
[0063][0064][0065]
滑动窗口的大小w不应该超过t波的宽度,否则可能会将比t波幅值更高的波段纳入积分的范围,使t波末端检测错误。但是t波的宽度实际上是未知的,在专利中选取w为经验值32。平滑窗口参数p是为了平滑k点的信号幅值,减少噪声影响,p应远小于w,否则计算出来的不能有效代表k点的信号幅值,本文选取p=4。
[0066]
找出[ka,kb]范围内最大面积和最小面积对应的k

和k

点:
[0067][0068][0069]
当k

对应的面积ak′
和k

对应的面积ak″
满足:
[0070][0071]
则认为该t波为双相t波,将k

和k

中相对较大的那个点作为t波末端tend,否则将|ak′
|和|ak

|中较大值对应的k点作为t波末端tend。其中参数λ是为了保证能够识别出可能为双相t波形态的t波。双相t波存在一个正向t波波峰和一个负向的t波波峰,且这两个波峰的峰值相差不大,因此求得的ak′
和ak″
能够在λ倍以内,本实施例将λ设置为6。
[0072]
在[ka,tend]范围内寻找与tend幅值差值最大的点为t波波峰tpeak。
[0073]
初始特征提取和构建特征集合具体为:
[0074]
将滤波后的心电信号用s(x)表示,s(x)共有n个心动周期,采样频率为fs。除了心率变异性指标rmssd以外,不同样本的rr间期、qrs时限、qtc间期、tp-te间期、tp-te/qt指标和t波幅值等因子这些初始特征长短不一,无法直接构成特征集合用于模型训练。本实施例通过计算这些初始特征各自的平均值、标准差和近似熵,构建适合模型训练的特征集合,最终确定的特征集合中元素和其对应的初始特征。
[0075]
进行特征缩放具体为:
[0076]
本实施例选取的这些特征基本类似于正态分布,其中特征t波幅值的均值tamp_mean的特征值分布在[0,3]之间,而特征qrs时限的标准差qrs_std的特征值分布在[0,0.1]之间,量纲存在差异,需要统一量纲或是归一化处理。对这些特征进行标准缩放,标准化处理后各特征变化范围处于同一数量级,更有利于支持向量机学习。当特征分布类似于正态分布时,可以优先考虑使用标准化进行特征缩放。
[0077]
模型参数寻优优化模型具体为:
[0078]
经过特征缩放的特征集合分为四个数据集ds1、ds2、ds3和ds4,四个数据集包含相同的正常窦性心律心电特征,但心源性猝死心电特征不同。数据集ds1、ds2、ds3和ds4分别包含心源性猝死前20~30min、30~40min、40~50min和60~70min的心电特征。四个数据集中的心源性猝死心电特征和正常窦性心律心电特征都按照一定的比例随机分配到训练集和测试集中,并且保证预测模型的训练集和测试集在对应的心电数据库中的记录编号完全分开。
[0079]
选取非线性支持向量机作为预测心源性猝死的基础模型,选取高斯核函数作为支持向量机的核函数。该支持向量机存在两个参数:误差惩罚参数c和核参数γ。选取改进的网格搜索法和量子粒子群优化算法作为参数寻优算法,比较两个参数寻优算法对心源性猝死预测模型性能的影响。
[0080]
应用改进的网格搜索法对支持向量机进行重复独立实验,每次实验划分的训练集和测试集都不相同。设置参数c和γ的搜索范围,c和γ构成一张网格,网格中每一个点对应c和γ的一个组合。利用k折交叉验证方法,将训练集细分成新的训练集和验证集。根据平均分类准确率最高的模型对应的c
*
和γ
*
值作为初步搜索的最优参数组合,再次设置参数c以一定步长在[0.1c
*
,10c
*
]范围内依次取值,同样设置参数γ以一定的步长在[0.1γ
*
,10γ
*
]范围内依次取值,重复步骤,得到新的分类准确度最高的模型对应的c和γ作为精细搜索的最优参数组合,用测试集对初步搜索的最优参数组合和精细搜索的最优参数组合对应的两个支持向量机进行验证。
[0081]
从改进的网格搜索法中初步搜索和精细搜索的两个最优参数组合所对应的模型
在测试集上的准确度,可以看出,在初步搜索的基础上再一次进行精细搜索,可以提高预测模型的准确度。本实施例将验证集上平均分类准确度最高的模型对应的c和γ作为最优参数组合,但网格内可能出现多个c和γ对应的准确度都是最高的情况,这时会默认选择c和γ的值都最小的一组为最优参数组合,但该参数组合所对应的支持向量机在测试集上的表现不一定就是最好的。因此,将初步搜索和精细搜索中,在测试集上表现较好的结果作为改进的网格搜索法的总体准确度。
[0082]
对量子粒子群优化算法同样进行重复独立实验,每次实验所用到的训练集和测试集与改进的网格搜索法中独立重复实验的训练集和测试集一一对应,横向对比基于两个参数寻优算法的支持向量机模型在测试集上的分类性能。定义一个由n个粒子组成的粒子群x={x_1,x_2,

,x_n},在t时刻下粒子i的当前位置为x_i(t),个体最优位置为pbest_i(t),所有粒子的全局最优位置为gbest(t),整个寻优过程中粒子群的全局最优位置为gbest。设置粒子的个数,寻优的参数的个数决定粒子的维度。定义适应度函数用于评估粒子当前位置是否为最优位置,适应度函数就是基于高斯核的支持向量机,适应度值越小,说明粒子的适应度越好,越接近最优参数的位置。
[0083]
量子粒子群优化算法参数搜索过程随机性强,使得其消耗的时间仅为网格搜索法的1/10。在分类准确度差不多的情况下,灵敏度会是识别心源性猝死效果的另一个相对注重的指标。本实施例选取的心源性猝死预测期在心脏骤停发生前20~70min,因此在识别准确度差不多的情况下,实施例更倾向于选取灵敏度较高的网格搜索法作为支持向量机的参数寻优算法。当然,如果预测期在10min以内,就应该优先考虑量子粒子群优化算法或其他耗时较少的参数寻优算法,或者将网格搜索法中的搜索步长增大一些。
[0084]
验证效果反馈重构风险因子具体为:
[0085]
本实施例采用以下四个指标来评估猝死风险因子重构验证模型性能:
[0086]
灵敏度(sensitivity,se):表示被模型预测正确的scd类样本数量占总scd类样本数量的比值,体现了模型对心源性猝死样本的识别能力,定义式为:
[0087][0088]
特异度(specificity,sp):表示被模型预测正确的nsr类样本数量占总nsr类样本数量的比值,体现了模型对正常窦性心律样本的识别能力,定义式为:
[0089][0090]
阳性预测率(positive predictive value,ppv):表示被模型预测正确的scd类样本数量占预测为scd类样本数量的比值,也体现了模型对心源性猝死样本的识别能力,定义式为:
[0091][0092]
准确度(accuracy,acc):表示正确预测为scd类和nsr类的样本数量占总样本数量的比值,体现了模型整体预测能力,定义式为:
[0093]
[0094]
其中真阳性(true positive,tp)表示模型预测正确的scd类样本数量,真阴性(true negative,tn)表示预测正确的nsr类样本数量,假阳性(false positive,fp)表示nsr类被预测成scd类的样本数量,假阴性(false negative,fn)表示scd类被预测成nsr类的样本数量。数据集的心源性猝死和正常窦性心律样本数量均衡,所以准确度是最直观反映模型整体预测性能的评估指标。相比于正常窦性心律样本,本实施例更注重对猝死风险因子重构的验证能力,所以灵敏度是另一个重点关注的评估指标。特异度和阳性预测率也是评估分类器性能的常用指标。模型的验证效果将直接反应了猝死风险因子对心源性猝死的预测能力,它将直接作为反馈作用于猝死风险因子提取重构阶段,在为我们提供一套验证猝死风险因子方法论的同时,人工提取或是智能算法提取的潜在猝死风险因子被重构验证能提高所提取因子有效的可能性。
[0095]
本实施例提供的以上方案可以代码化的形式存储在计算机可读取存储介质中,并以计算机程序的方式进行实现,并通过计算机硬件输入计算所需的基本参数信息,并输出计算结果。
[0096]
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0097]
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图来描述的。应理解可由计算机程序指令实现流程图中的每一流程、以及流程图中的流程结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程中指定的功能的装置。
[0098]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程图中指定的功能。
[0099]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程中指定的功能的步骤。
[0100]
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
[0101]
本专利不局限于上述最佳实施方式,任何人在本专利的启示下都可以得出其它各种形式的非线性支持向量机多特征量化及模型参数寻优重构心源性猝死风险因子的系统及方法,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本专利的涵盖范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1