温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于
粒子
优化
支持
向量
癫痫
发作
预测
刘金森
第 51 卷收稿日期:2022年8月13日,修回日期:2022年9月27日基金项目:国家自然科学基金面上项目(编号:61671221)资助。作者简介:刘金森,女,硕士研究生,研究方向:生物医学信号检测与处理。黄炜嘉,女,博士研究生,讲师,研究方向:生物医学信号检测与处理。李效龙,男,硕士,副教授,研究方向:射频集成电路,生物医疗电子。1引言癫痫是一种危害极大的神经系统疾病,具有突发性与反复性,严重影响了病人的日常生活。越来越多的研究表明,癫痫发作具有可预测性1。如果能够在癫痫发作之前发出警报,提醒病人家属或者医生对病人采取相应措施来抑制癫痫发作,就能够减缓癫痫病人的痛苦,从而降低癫痫发作给患者带来的危害。目前,癫痫发作自动预测已经成为脑电疾病研究领域的热点问题。癫痫发作分为发作前期、发作期、发作后期和发作间期四个阶段2。癫痫预测的主要目标是对癫痫发作前期与癫痫发作间期的脑电信号进行区分,识别出发作前期信号并发出预警,进而达到癫痫预测目的。对于发作前期与发作间期的二分类问题主要分为特征提取和模式识别两个部分。在癫痫病人的脑电信号特征提取方面,学者们做了大量的研究基于粒子群优化支持向量机的癫痫发作预测刘金森黄炜嘉李效龙(江苏科技大学电子信息学院镇江212100)摘要为实现癫痫发作自动预测,采用一种基于粒子群(PSO)与支持向量机(SVM)方法相结合的癫痫发作预测模型。首先利用小波包变换提取小波包系数相对能量特征,接着将训练样本输入到支持向量机中,经过粒子群算法寻找最优参数从而实现对测试样本进行分类识别,最后论文提出一种阈值决策方法对支持向量机输出结果进行后处理。对CHB-MIT癫痫数据库中5名癫痫病人进行研究,通过与随机参数法、网格搜索方法对比分析,发现使用粒子群优化支持向量机提高了发作前期识别准确率,减少了误警率,从而取得更好的预测效果,证明了该方法的可行性,对癫痫预测研究具有一定的应用价值。关键词癫痫预测;小波包变换;支持向量机;粒子群算法中图分类号R318;TP391DOI:10.3969/j.issn.1672-9722.2023.03.037Epileptic Seizure Prediction Based on Support Vector MachineOptimized by Particle Swarm OptimizationLIU JinsenHUANG WeijiaLI Xiaolong(College of Electronic Information,Jiangsu University of Science and Technology,Zhenjiang212100)AbstractIn order to realize the automatic prediction of epileptic seizures,an epilepsy prediction model based on particleswarm optimization and support vector machine is proposed.Firstly,wavelet packet transform is used to extract the relative energycharacteristics of wavelet packet coefficients.Then,the training samples are input into the support vector machine,and the optimalparameters are found by particle swarm optimization.Finally,a threshold decision is proposed to process the output of support vector machine.Five epileptic patients in CHB-MIT epilepsy database are studied.Compared with random parameter method and gridsearch method,it is found that PSO-SVM improved the accuracy of preictal recognition,the false alarm rate is reduced,and better prediction effect is obtained.It proves the feasibility of the method and has certain application value for epilepsy prediction research.Key Wordsepilepsy prediction,wavelet packet transform,support vector machine,particle swarm optimization algorithmClass NumberR318,TP391总第 401 期2023 年第 3 期计算机与数字工程Computer&Digital EngineeringVol.51 No.37362023 年第 3 期计算机与数字工程工作,主要分为以下四类:1)时域方法:均值、标准差3、Hjorth复杂度4等;2)频域方法:功率谱5;3)时频分析方法:短时傅里叶变换6、小波变换7、小波包变换8、经验模态分解9;4)非线性动力学方法:最大Lyapunov指数10、熵11。时域分析方法主要是分析信号的几何特性,如对癫痫棘波、尖波等特征波形进行分析;频域分析主要是通过傅里叶变换、Weich方法、AR模型参数方法获得信号的功率谱,将脑电信号各频段的功率、相对功率、绝对功率等作为特征进行研究。然而,时域和频域方法都只针对信号单一角度进行度量,且通常需要假设脑电信号为平稳信号,这与脑电信号的非平稳性相矛盾,小波包变换具有良好的正交性和局部特性,可以对信号进行多尺度、多分辨分析,非常适合于脑电信号等非平稳信号的分析研究。随着机器学习的发展,涌现出越来越多的分类方法,应用在脑电信号分析领域的有K-近邻、支持向量机、线性判别式以及人工神经网络等12。其中,支持向量机是应用最多的分类方法,它不涉及人工神经网络中的网络结构选择,并且避免了“维数灾难”13。目前癫痫预测方面涉及到支持向量机作为分类方法,参数设置多采用人工经验选取和网格搜索方法14,凭经验选取具有一定的随机性,网格搜索在较大范围内进行搜索,存在耗时较长等问题。因此,本研究采用小波包变换和支持向量机结合来构建癫痫发作预测模型,同时为提高分类准确率、减少计算时间,采用粒子群算法对支持向量机的参数进行优化。2方法和原理2.1小波包系数能量小波包变换是轴承故障特征提取中常用的信号分析方法,近年来也越来越多地应用于脑电信号的处理当中1516。癫痫发作前期与发作间期的脑电信号不同频段具有不同的变化趋势,应用小波包变换的自适应性可以很好地提取出信号不同频段特征。小波包变换满足如下的二尺度方程:|2n(t)=2kzhkn(2t-k)2n+1(t)=2kzgkn(2t-k)(1)其 中:hk和gk为 一 组 正 交 滤 波 器,满 足gk=(-1)nh1-k。Mallet小波包快速分解算法描述如下:|d2nj(l)=kzhk-2ldnj+1(k)d2n+1j(l)=kzgk-2ldnj+1(k)(2)其中:d2nj(l)、d2n+1j(l)为下层分解结果,dnj+1(l)为上层分解结果。hk-2l和gk-2l为共轭正交的滤波器。信号的时域能量为f(t)2=-+|f(t)2dt(3)由帕斯瓦尔定理16可知:信号在时域能量上的能量与小波包系数能量相等,因此,信号各频段的能量可表示为Ej,k=N|Cj,k2(4)其中:j代表小波包分解层数,k表示信号频率成分,N代表信号采样点数,Cj,k代表小波包分解系数。为了消除量级对数据的影响,本文采用相对能量作为特征,具体表示如下:Pj,k=Ej,knEj,k(5)其中:Ej,k代表信号各频段能量值,nEj,k代表信号各频段总能量值。2.2支持向量机支持向量机主要思想如下:首先通过一个非线性映射(x)将y类脑电信号特征x映射到高维空间,然后找到一个超平面使得所有的点到超平面的距离大于一定值17。算法具体步骤如下。1)超平面的构造归结为凸二次规划问题:|minw,b,12w2+Ci=1Lis.t.yi(wT(xi)+b)1-i(6)其中:w为超平面法向量,C0为惩罚参数,i0为松弛变量,b为超平面的偏置向量。2)利用拉格朗日函数求目标函数极值,设拉格朗日函数为L(w,b,)=12w2-i=1li(yi(wT(xi)+b)-1+i)+Ci=1li(7)其中:0iC为Lagrange系数。3)对式(7)求解最优化问题,得到最优解:a*=()a*1,a*2,a*lT(8)737第 51 卷w*=i=1la*iyi(xi)(9)b*=-12i,r,s=1liyiK()xi,xr+K()xi,xs(10)4)决策函数为f()x=sgn|ili*yiK()xi,x+b*(11)2.3粒子群算法优化支持向量机粒子群算法是基于对鸟类捕食行为进行建模衍生出来的一种智能优化算法。该算法把群体中的个体视为空间中的点,具有一定的初始速度,在此过程中依据自身和同伴的飞行经验对自身的飞行速度、前进方向进行动态调整1819。粒子的速度和位置更新公式如下:vi+1=wvi+c1r1(pbesti-xi)+c2r2(Gbesti-xi)(12)xi+1=xi+vi(13)式中:xi=(x1,x2,xn)表示粒子在N维空间的位置,飞行速度表示为矢量vi=(v1,v2,vn)表示粒子在N为空间位置,pbest表示粒子i的个体最优位置,Gbest表示粒子群的全局最优位置;c1,c2为常数,表示学习因子;1,2()0,1;w表示惯性因子。粒子群算法优化支持向量机的流程图如图 1所示。开始初始化粒子群参数随机产生一组粒子(c,g)计算每个粒子的适应度函数值初始化个体最优值和群体最优值结束输出全局最优解(c,g)到达迭代次数?YN更新粒子个体极值和全局极值重新计算粒子的适应度值更新粒子位置和速度图1PSO优化SVM算法流程图其算法具体流程如下:1)初始化参数:种群规模N、最大迭代次数i、惯性因子w、参数c、的变化范围;2)根据种群规模随机产生一组粒子(c,);3)适应度函数为十折交叉验证计算出的平均准确率,根据适应度函数分别计算每个粒子的适应度函数值;4)每个粒子的适应度函数值即为当前个体最优值,比较所有粒子的个体最优值,值最大的作为全局最优值,对应粒子位置(c,)作为全局最优位置;5)根据式(12)和式(13)更新粒子速度和位置;6)根据更新后的粒子位置重新计算粒子适应度函数值;7)比较更新后的适应度值与个体极值、群体极值,若优于更新前,则用更新后的值进行替换;8)判断迭代次数是否小于Tmax,若达到,则输出当前全局最优解(cbest,best),否则返回步骤5)。本文参数设置如下:种群规模N=20,最大迭代次数Tmax=200,惩罚因子c最小值cmin=0.1,最大值cmax=100,核函数的最小值min=0.01,最大值max=1000,惯性因子w=1,c1=1.5,c2=1.7。2.4输出结果后处理为了减少错误警报,还需要对 SVM输出结果进行判决分析。本文提出一种基于阈值的判断方法,具体过程如下:1)统计每隔1min的时间窗,支持向量机的输出为发作前期的标签数目:numpreictalt=n(t-1)+1ntlabeli(14)其中:numpreictalt表示第t个时间窗内的发作前期样本个数;labeli表示第i个样本的SVM输出标签。2)使用numpreictalt的值可以判断在过去的这1min内信号处于发作前期还是发作间期