一种基于脉搏回归模型的心电信号数据修正方法及系统技术领域
在本发明涉及心电信号领域,尤其涉及一种基于脉搏回归模型的心电信号数据修正方法及系统。
背景技术
现有的心电信号(Electrocardiography,ECG)数据分析算法,主要包含两个步骤:首先,检测并定位原始信号中的基本波形,提取其特征信息;而后,使用机器学习算法对此特征进行分类/回归分析,预测其目标状态。
如图1所示,一个正常心动周期中的心电信号,可视作由P波、QRS波群、T波及U波4种基本波形组成。其特征提取过程,便是通过测定输入信号的这4种基本波形,计算所包含的预设指标信息。现有算法一般使用峰值检测、小波分析等对基本波形进行测定,而提取的特征则包括所有4种基本波形的时长与形态(幅度及变化率等)、ST段时长、PR间期时长、QT间期时长、以及RR间期时长等。原始心电信号的采集精度越高,则其波形检测、特征提取的效果也越好,从而可更为有效地提升后续机器学习算法的预测性能。
心电信号由实际生理活动所产生,且由于测量时人体运动等原因,所获取的数据往往会包含一定的偏差与畸变,从而影响算法预测效果。在实际应用中,一般会要求被测者在连续时间内处于静卧状态,以降低采集数据的失真程度,一方面严重限制了心电信号的运用环境,另一方面部分固有偏差并不能以此被有效消除。因此亟须设计具针对性的信号修正算法,以从软件层面消除采集失真所带来的不良影响。
现有心电信号数据修正算法,主要针对某一特定指标进行校正。常用方法包括基于中值滤波的基线漂移修正、基于最小二乘的基线修正、以及基于心率的间期修正等。但这些现有的心电信号数据修正方法,都存在缺点:
1、现有算法仅能针对单一种类的失真进行修正,而实际采集的心电信号往往包含多种畸变与偏差。若要完全消除其干扰,则必须针对每种信号失真都构造相应的处理算法。这一方面增加了算法设计难度,另一方面也严重降低了数据处理的速度,不利于心电信号的实际运用。
2、现有算法仅能对较为简单的信号指标(如基线漂移、间期时长等)失真进行修正,而对波形形态等复杂特征则无能为力。此类特征对某些特定疾病状态的检测至关重要,若无法对其失真进行修正,将很可能导致此类状态被漏检或产生误判,从而造成不良的影响。
3、现有算法往往基于先验知识进行修正,其模型设计也较为简单。例如在对基线漂移进行处理时,现有方法一般使用人工预设的滤波频域范围,而可能与被测者的实际状况不相符。其使用的修正技术,通常也仅是简单的中值滤波而已,难以有效处理复杂多变的现实心电信号数据,从而影响了算法性能。
因此,现有技术还有待于改进和发展。
发明内容
鉴于上述现有技术的不足,本发明的目的在于提供基于Memetic算法的心电信号特征选择方法及系统,旨在解决现有的特征提取和选择方法存在学习效果差、特征提取不完整、效率和准确率低的问题。
本发明的技术方案如下:
一种基于Memetic算法的心电信号特征选择方法,其中,包括步骤:
A、设输入的心电信号数据集为F={(F1,t1),(F2,t2)…,(Fn,tn),…(FN,tN)},其中Fn、tn分别为第n个信号矢量与样本标签,N为样本总数,信号维数为D,并设定优化总迭代次数为K次;
B、初始化迭代计数器k=0,构造用于Memetic算法的进化种群ps,其中每个寻优个体为D维矢量Xi,i=1,2,…,|ps|,Xi的值取为[0,1]范围内的随机值:
;
C、计算ps中每个寻优个体Xi的适应度函数值f(Xi);
D、根据各寻优个体Xi的适应度函数值f(Xi),使用Memetic算法优化进化种群ps;
E、更新迭代计数器k=k+1,判断k是否小于K,当是时则返回步骤C,否则执行步骤F;
F、优化迭代完成后,选择进化种群ps中的最优个体Xbest为:
;
G、将Xbest映射为最佳选择矢量Wbest,并对心电信号数据集F进行特征选择,形成最优降维数据集Fbest*,同时将此最优降维数据集用于训练分类/回归算法获得最终的学习准确率;
H、将Wbest、Fbest*及最终的学习准确率作为输出。
所述的基于Memetic算法的心电信号特征选择方法,其中,所述步骤C具体包括:
C1、对于当前输入的寻优个体,将其映射为选择矢量Wi:
其中,step(·)为单位阶跃函数,δ为映射阈值;
C2、根据Wi对心电信号数据集F中的各信号矢量Fn进行特征选择从而形成降维后的信号矢量Fn*;
C3、将降维后的信号矢量Fn*及其对应样本标签tn,构成特征选择数据集F*={(F1*,t1),(F2*,t2),…,(FN*,tN)};
C4、将所述特征选择数据集F*用于训练分类/回归算法,获得学习准确率,并作为当前寻优个体Xi的粗适应度函数值fraw(Xi);
C5、设置稀疏代价函数为Xi的1范数:
;
C6、计算Xi最终的适应度函数值f(Xi)为:
其中β为拉格朗日乘数,用于控制特征选择的稀疏程度。
所述的基于Memetic算法的心电信号特征选择方法,其中,所述步骤C2中,特征选择具体包括:
若Wi中第d维数值wd=0,则删除Fn在此维度上的对应信号值fd,若wd=1则将其保留,从而形成降维后的信号矢量Fn*:
。
所述的基于Memetic算法的心电信号特征选择方法,其中,所述δ设置为:δ=0.5。
所述的基于Memetic算法的心电信号特征选择方法,其中,所述Memetic算法为基于差分进化与DSCG搜索的Memetic算法。
一种基于Memetic算法的心电信号特征选择系统,其中,包括:
设置模块,用于设输入的心电信号数据集为F={(F1,t1),(F2,t2)…,(Fn,tn),…(FN,tN)},其中Fn、tn分别为第n个信号矢量与样本标签,N为样本总数,信号维数为D,并设定优化总迭代次数为K次;
迭代计数器初始化模块,用于初始化迭代计数器k=0,构造用于Memetic算法的进化种群ps,其中每个寻优个体为D维矢量Xi,i=1,2,…,|ps|,Xi的值取为[0,1]范围内的随机值:
;
适应度函数值计算模块,用于计算ps中每个寻优个体Xi的适应度函数值f(Xi);
进化种群优化模块,用于根据各寻优个体Xi的适应度函数值f(Xi),使用Memetic算法优化进化种群ps;
迭代计数器更新模块,用于更新迭代计数器k=k+1,判断k是否小于K,当是时则返回适应度函数值计算模块,否则执行最优个体选择模块;
最优个体选择模块,用于优化迭代完成后,选择进化种群ps中的最优个体Xbest为:
;
特征选择模块,用于将Xbest映射为最佳选择矢量Wbest,并对心电信号数据集F进行特征选择,形成最优降维数据集Fbest*,同时将此最优降维数据集用于训练分类/回归算法获得最终的学习准确率;
输出模块,用于将Wbest、Fbest*及最终的学习准确率作为输出。
所述的基于Memetic算法的心电信号特征选择系统,其中,所述适应度函数值计算模块具体包括:
映射单元,用于对于当前输入的寻优个体,将其映射为选择矢量Wi:
其中,step(·)为单位阶跃函数,δ为映射阈值;
特征选择单元,用于根据Wi对心电信号数据集F中的各信号矢量Fn进行特征选择从而形成降维后的信号矢量Fn*;
特征选择数据集构建单元,用于将降维后的信号矢量Fn*及其对应样本标签tn,构成特征选择数据集F*={(F1*,t1),(F2*,t2),…,(FN*,tN)};
学习准确率计算单元,用于将所述特征选择数据集F*用于训练分类/回归算法,获得学习准确率,并作为当前寻优个体Xi的粗适应度函数值fraw(Xi);
1范数设置单元,用于设置稀疏代价函数为Xi的1范数:
;
适应度函数值计算单元,用于计算Xi最终的适应度函数值f(Xi)为:
其中β为拉格朗日乘数,用于控制特征选择的稀疏程度。
所述的基于Memetic算法的心电信号特征选择系统,其中,所述特征选择单元具体用于:
若Wi中第d维数值wd=0,则删除Fn在此维度上的对应信号值fd,若wd=1则将其保留,从而形成降维后的信号矢量Fn*:
。
所述的基于Memetic算法的心电信号特征选择系统,其中,所述δ设置为:δ=0.5。
所述的基于Memetic算法的心电信号特征选择系统,其中,所述Memetic算法为基于差分进化与DSCG搜索的Memetic算法。
有益效果:本发明无需定位基本波形以提取特征,所以一方面避免了因波形检测失准,而造成后续机器学习算法性能下降,可更为有效地处理多变的实际心电信号;另一方面,还可节省波形检测所需的计算量,计算复杂度更低。本发明也不依赖于预设的特征指标,对先验知识要求较低,且可自动抽取输入原始心电信号中的特征信息,避免了人为设定提取指标导致的不合理性问题。本发明所采用的Memetic算法可比现有方法更有效地解决复杂的大规模优化问题,通过将其用于选择矢量的优化,可获得更具代表性的特征子集,从而显著提升后续分类/回归算法的预测性能。
附图说明
图1为现有技术中正常心动周期的心电信号波形图。
图2为本发明的基于Memetic算法的心电信号特征选择方法较佳实施例的流程示意图。
图3为本发明的基于Memetic算法的心电信号特征选择方法另一实施例的流程示意图。
图4为图2所示方法中步骤S103的具体流程图。
图5为本发明的方法中根据选择矢量对信号样本进行降维的流程示意图。
具体实施方式
本发明提供基于Memetic算法的心电信号特征选择方法及系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图2,图2为本发明一种基于Memetic算法(MemeticAlgorithm,MA)的心电信号特征选择方法较佳实施例的流程图,并结合图3所示的流程图,本发明的方法其包括步骤:
S101、设输入的心电信号数据集为F={(F1,t1),(F2,t2)…,(Fn,tn),…(FN,tN)},其中Fn、tn分别为第n个信号矢量与样本标签,N为样本总数,信号维数为D,并设定优化总迭代次数为K次;
在数据处理开始前,设输入的心电信号数据集为F,以及设定优化总迭代次数为K次。
S102、初始化迭代计数器k=0,构造用于Memetic算法的进化种群ps,其中每个寻优个体为D维矢量Xi,i=1,2,…,|ps|,Xi的值取为[0,1]范围内的随机值:
;
S103、计算ps中每个寻优个体Xi的适应度函数值f(Xi);
其中的适应度函数值f(Xi)(FitnessValue),其是根据映射得到的选择矢量对各信号矢量进行特征选择,从而形成降维矢量,最后计算得到适应度函数值。
S104、根据各寻优个体Xi的适应度函数值f(Xi),使用Memetic算法优化进化种群ps;
其中的Memetic算法优选为基于差分进化(DifferentialEvolution,DE)与DSCG搜索(Davies,Swann,andCampeywithGram-SchmidtOrthogonalizationSearch)的Memetic算法。
S105、更新迭代计数器k=k+1,判断k是否小于K,当是时则返回步骤S103,否则执行步骤S106;
S106、优化迭代完成后,选择进化种群ps中的最优个体Xbest为:
;
S107、将Xbest映射为最佳选择矢量Wbest,并对心电信号数据集F进行特征选择,形成最优降维数据集Fbest*,同时将此最优降维数据集用于训练分类/回归算法获得最终的学习准确率;
S108、将Wbest、Fbest*及最终的学习准确率作为输出。
作为本发明更优选的实施例,如图4所示,所述的步骤S103具体包括:
S201、对于当前输入的寻优个体,将其映射为选择矢量Wi:
其中,step(·)为单位阶跃函数,δ为映射阈值,所述δ一般设置为δ=0.5,那么任意wd∈Wi仅能取得{0,1}两种数值;
S202、根据Wi对心电信号数据集F中的各信号矢量Fn进行特征选择从而形成降维后的信号矢量Fn*;
如图5所示,在进行特征选择时,若Wi中第d维数值wd=0,则删除Fn在此维度上的对应信号值fd,否则(即wd=1)将Fn在此维度上的对应信号值fd保留,从而形成降维矢量Fn*:
。
S203、将降维后的信号矢量Fn*及其对应样本标签tn,构成特征选择数据集F*={(F1*,t1),(F2*,t2),…,(FN*,tN)};
此特征选择数据集将用于训练分类/回归算法,常用的机器学习方法包括SVM(支持向量机)以及ELM(极限学习机器)等。
S204、将所述特征选择数据集F*用于训练分类/回归算法,获得学习准确率,并作为当前寻优个体Xi的粗适应度函数值fraw(Xi);
对于分类算法,fraw(Xi)表示分类错误率(ClassificationErrorRate);对于回归算法,则表示均方跟误差(RootMeanSquareError,RMSE)。
S205、设置稀疏代价函数为Xi的1范数:
;
设置这样的1范数是为了使特征选择尽可能稀疏化。
S206、计算Xi最终的适应度函数值f(Xi)为:
;
其中β为拉格朗日乘数,用于控制特征选择的稀疏程度。
基于上述方法,本发明还提供一种基于Memetic算法的心电信号特征选择系统,其包括:
设置模块,用于设输入的心电信号数据集为F={(F1,t1),(F2,t2)…,(Fn,tn),…(FN,tN)},其中Fn、tn分别为第n个信号矢量与样本标签,N为样本总数,信号维数为D,并设定优化总迭代次数为K次;
迭代计数器初始化模块,用于初始化迭代计数器k=0,构造用于Memetic算法的进化种群ps,其中每个寻优个体为D维矢量Xi,i=1,2,…,|ps|,Xi的值取为[0,1]范围内的随机值:
;
适应度函数值计算模块,用于计算ps中每个寻优个体Xi的适应度函数值f(Xi);
进化种群优化模块,用于根据各寻优个体Xi的适应度函数值f(Xi),使用Memetic算法优化进化种群ps;
迭代计数器更新模块,用于更新迭代计数器k=k+1,判断k是否小于K,当是时则返回适应度函数值计算模块,否则执行最优个体选择模块;
最优个体选择模块,用于优化迭代完成后,选择进化种群ps中的最优个体Xbest为:
;
特征选择模块,用于将Xbest映射为最佳选择矢量Wbest,并对心电信号数据集F进行特征选择,形成最优降维数据集Fbest*,同时将此最优降维数据集用于训练分类/回归算法获得最终的学习准确率;
输出模块,用于将Wbest、Fbest*及最终的学习准确率作为输出。
进一步,所述适应度函数值计算模块具体包括:
映射单元,用于对于当前输入的寻优个体,将其映射为选择矢量Wi:
其中,step(·)为单位阶跃函数,δ为映射阈值;
特征选择单元,用于根据Wi对心电信号数据集F中的各信号矢量Fn进行特征选择从而形成降维后的信号矢量Fn*;
特征选择数据集构建单元,用于将降维后的信号矢量Fn*及其对应样本标签tn,构成特征选择数据集F*={(F1*,t1),(F2*,t2),…,(FN*,tN)};
学习准确率计算单元,用于将所述特征选择数据集F*用于训练分类/回归算法,获得学习准确率,并作为当前寻优个体Xi的粗适应度函数值fraw(Xi);
1范数设置单元,用于设置稀疏代价函数为Xi的1范数:
;
适应度函数值计算单元,用于计算Xi最终的适应度函数值f(Xi)为:
其中β为拉格朗日乘数,用于控制特征选择的稀疏程度。
进一步,所述特征选择单元具体用于:
若Wi中第d维数值wd=0,则删除Fn在此维度上的对应信号值fd,若wd=1则将其保留,从而形成降维后的信号矢量Fn*:
。
进一步,所述δ设置为:δ=0.5。
进一步,所述Memetic算法为基于差分进化与DSCG搜索的Memetic算法。
关于上述模块单元的技术细节在前面的方法中已有详述,故不再赘述。
本发明的方法,使用基于封装的特征选择框架,并且引入了Memetic算法对心电信号进行优化提取,其具有如下有益效果:
1、本发明无需定位基本波形以提取特征:一方面,其避免了因波形检测失准,而造成后续机器学习算法性能下降,可更为有效地处理多变的实际心电信号;另一方面,可节省波形检测所需的计算量,计算复杂度更低。
2、本发明不依赖于预设的特征指标,对先验知识要求较低,且可自动抽取输入原始心电信号中的特征信息。避免了人为设定提取指标导致的不合理性问题。
3、Memetic算法可比现有方法更有效地解决复杂的大规模优化问题。通过将其用于选择矢量的优化,可获得更具代表性的特征子集,从而显著提升后续分类/回归算法的预测性能。此外,通过在适应值计算中加入稀疏代价函数,本方法可有效避免定域性问题,提升算法泛化能力。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。