一种基于支持向量机的表面肌电信号多类别模式识别方法

文档序号:6599954阅读:271来源:国知局

专利名称::一种基于支持向量机的表面肌电信号多类别模式识别方法
技术领域
:本发明属于模式识别
技术领域
,涉及一种基于支持向量机的表面肌电信号多类别模式识别方法。
背景技术
:特征提取是模式识别的核心问题,它直接影响到分类器的设计和性能。对于非平稳的表面肌电信号来说,在任一时刻附近的频域特性对于模式识别来说都很有价值,所以单单从时域或者是频域上来分析是远远不够的。这就需要寻找一种新的方法,能将时域和频域结合起来描述观测信号的时频联合特征,构成信号的时变谱。小波变换就是这样一种方法,它建立在傅里叶变换的基础之上,克服了傅里叶变换要么完全在时域,要么完全在频域而无法表达信号的时频局域性质的缺陷;弥补了短时傅里叶变换作为一种单一分辨率,只能使用一个固定的短时窗函数进行信号分析的不足;很好地解决了信号分析中的一对最基本的矛盾即时域和频域的局部化矛盾,实现了在不同频率处包含非静态能量分布的时频分析。现有方法对于表面肌电信号多类别模式识别时,由于不能提取到更加有效的肌电信号特征,影响了肌电信号模式分类的准确性,影响了在肌电假肢实用中的推广使用。对于多类别模式识别来说,寻找一个好的模式分类器是关键。支持向量机(SupportVectorMachines,SVM)算法由Vapnik等人提出到现在经过了十多年的发展,已经由最初的二分类算法成为广泛使用的统计学习算法,在模式分类和回归建模方面都得到了长足的发展。SVM以其坚实的理论基础、全局优化、泛化性能好等优点,已经成为目前国内外研究的热点,在解决小样本、非线性及高维模式识别问题中表现出许多特有的优势。
发明内容本发明的目的是提供一种基于支持向量机的表面肌电信号多类别模式识别方法,能够提取到更加有效的肌电信号特征,同时也提高了模式识别的准确性。本发明的技术方案是,一种基于支持向量机的表面肌电信号多类别模式识别方法,其特征在于,按照以下步骤实施步骤1、对采集到的表面肌电信号,基于小波分析进行特征提取1.1)从MIT-BIH数据库中下载所需的表面肌电信号数据,并采集需要进行分类的样本信号,将一部分用作训练样本,另一部分作为测试样本;1.2)选用sym4小波基函数对样本信号作五尺度小波分解;1.3)提取样本信号的小波系数,从小波分解系数构成的矩阵中提取矩阵的奇异值作为信号特征,构建特征矢量;步骤2、基于SVM的模式识别2.1)用MOC方法设计基于支持向量机的多类别分类器;2.2)将训练样本的特征矢量输入到分类器进行分类训练;2.3)将测试样本的特征矢量输入到分类器进行分类测试;2.4)用交叉验证方法对支持向量机分类器进行参数优化,重复步骤2.2和步骤2.3;2.5)分析模式识别的结果。本发明的模式识别方法,较好的完成了表面肌电信号的特征提取和模式识别,在提取到更加有效的特征构建特征矢量的同时,提高了模式识别的准确性,在肌电假肢实用化进程中具有重要意义。图1是本发明方法实施例中要处理的表面肌电信号时域图;图2是本发明方法实施例中采用的sym4小波函数的尺度函数和时域图,其中,a为尺度函数图,b为时域图;图3是本发明方法实施例中的三尺度小波分解示意图;图4是现有的支持向量机结构框图;图5是本发明方法实施例中对表面肌电信号进行五尺度小波分解提取到的小波系数示意图;图6是本发明方法实施例中对表面肌电信号进行分类的结果示意图(无参数优化时);图7是本发明方法实施例中对表面肌电信号进行分类的结果示意图(参数优化后);图8是本发明方法实施例中在无参数优化和参数优化后得到的分类结果比较示意图;图9是本发明方法实施例中的结果与传统的神经网络分类方法比较示意图。具体实施例方式下面结合附图和具体实施方式对本发明进行详细说明。本发明的基于支持向量机的表面肌电信号多类别模式识别方法,按照以下步骤实施步骤1、对采集到的表面肌电信号,基于小波分析进行特征提取图1所示为采集到的表面肌电信号f(t)eL2(R),L2(R)表示平方可积的实数空间,即能量有限的空间信号,其连续小波变换为<formula>formulaseeoriginaldocumentpage5</formula>其中fO)为Ψ(t)的Fourier变换,Ψ(t)eL2(R),满足容许条件<formula>formulaseeoriginaldocumentpage5</formula>ψ(t)称为基小波,将基小波经伸缩和平移得到小波序列,称子小波<formula>formulaseeoriginaldocumentpage6</formula>其中,a为伸缩因子或尺度因子,将基小波作伸缩;b为平移因子,将基小波作平移。在信号的小波分析中,小波基函数的选择非常重要,不同的小波基函数具有不同的特性,适应的应用场合也不同。本发明选用sym小波函数对表面肌电信号进行小波分解,sym小波的构造类似db小波族,两者的差别在于sym小波有更好的对称性,更合适对表面肌电信号进行分析。图2所示为本发明实施例选用的sym4小波基函数的尺度函数和时域图。本发明对表面肌电信号的小波分解方法是基于多分辨分析而提出的,若用三尺度小波分解来说明多分辨率分析,则可以用图3来表示。从图3中可以看出,多分辨分析只是对低频部分进行进一步的分解,而高频部分则不予考虑。分解具有关系s=L3+H3+H2+H10如果要进行进一步分解,则可以把低频部分L3再分解为次低频部分L4和次高频部分H4,依次类推。本发明对表面肌电信号作五尺度小波分解。对于给定的一个长度为N的信号S,第一步分解开始于信号S,分解后分解系数由两部分组成低频系数向量Ll和高频系数向量Hl,向量Ll是由信号S与低通分解滤波器经过卷积运算得到的,向量Hl是由信号S与高通分解滤波器经过卷积运算得到的。在下一步分解中,用同样的方法把低频系数Ll分成两部分,即把上面的S用Ll代替,分解后返回尺度2的低频系数L2和高频系数H2,再往下依此类推进行分解,最后得到一个低频系数列Ll和五个高频系数列H1、H2、H3、H4、H5,即六个实际过程中的有用小波系数。在得到表面肌电信号的六个小波系数后,即可提取小波系数奇异值来构建特征矢量,对于提取到的小波系数矩阵Amxn,则存在正交矩阵U=[U1,-,Uffl],V=[vi;-,Vffl]使得UtAV=diag[σ…σρ]=W,ρ=min(m,η),即A=UWVt,该式称为A的奇异值分解,其中,σi彡σ2σρ^0,ο“i=1,2,…,ρ)为A的奇异值。因为对于任意一个实矩阵A,它的奇异值分解是唯一的,所以当奇异值排列成O1^σ2彡…彡(^时,原信号小波系数阵A对应一个唯一的奇异值向量。矩阵的奇异值具有如下两个特征当矩阵中的元素发生小的变化时,奇异值的变化很小;其次,奇异值是矩阵固有的特征,奇异值可充分地反映矩阵中所含的信息,因此奇异值特征可以作为信号的一种有效的代数特征描述。对于信号的特征提取而言,往往要求提取的特征具有一些代数和几何上的不变性,奇异值向量正好具有良好的代数和几何不变性。因此,奇异值向量有效反映了信号特征,我们称之为奇异值特征向量。本发明对肌电信号进行多尺度小波分解,从信号的小波变换系数矩阵中提取矩阵的奇异值作为信号的特征,构建特征矢量进行模式识别。因此,利用小波分析提取表面肌电信号特征的具体过程如下1)选取合适的小波基函数和分解尺度对表面肌电信号进行多尺度分解;2)从分解后的表面肌电信号的各尺度细节分量中提取小波系数;3)从得到的小波系数中提取奇异值作为信号特征,构成特征矢量。步骤2、基于SVM的模式识别对于样本集(Xi,Yi),!=1,2,-,n,XieRd,Yie{-1,+1}是类别标号。d维空间中线性判别函数的一般形式为f(X)=ω*X+b,分类面方程为<formula>formulaseeoriginaldocumentpage7</formula>对判别函数进行归一化,使离分类面最近的样本的|f(X)I=1,可得到分类间隔2/1IωII,因此要求分类间隔最大等价于使IIωII最小,而要求分类面将所有样本正确分类,则需满足<formula>formulaseeoriginaldocumentpage7</formula>因此,满足上述条件且使IIωII最小的分类面就是最优分类面,其中使式(5)中等号成立的那些样本称作支持向量,因为它们支撑了最优分类面。这样求最优分类面就成为在条件(5)约束下,求函数<formula>formulaseeoriginaldocumentpage7</formula>的最小值,利用Lagrange乘子法,最终可求得<formula>formulaseeoriginaldocumentpage7</formula>η最优分类函数为<formula>formulaseeoriginaldocumentpage7</formula>用内积K(Xi,χ)替代最优分类面中的点积,就相当于将原特征空间变换到了另一新的特征空间,此时相应的判别函数式(8)变换为<formula>formulaseeoriginaldocumentpage7</formula>式(9)为支持向量机分类器的基本算法。式(9)中的K(Xi,χ)为核函数,核函数的引入,很好的解决了高维问题,将高维空间的内积运算转化为低维空间的函数运算,常用的核函数有多项式核函数、径向基核函数和sigmoid核函数等。以上算法是针对两类样本,对于多类分类问题,本发明通过组合多个二值分类器来实现对多类别分类器的构造,本发明使用最小输出编码(MinimumOutputCoding,简称为M0C)的方法来构造多类别分类器。该多类别分类器的基本原理如下对于M类问题进行分类时,首先构造一个矩阵A,其行数为M,列数为[lbM]。依次把数0,…,M-I写成二进制的形式。然后,从矩阵的第一行开始,按照最后一位放到最后一列的原则,把这些二进制数从小到大写入矩阵中,空位或者0都写成-1。把矩阵A转秩得到矩阵B,那么,B的行数[lbM]就是两类分类机的数目,而分类的原则就是按照每行的元素的正负来进行,1代表正类,-1代表负类。例如,对于四类分类问题,矩阵A的形式为<formula>formulaseeoriginaldocumentpage7</formula>把上面的矩阵进行转秩,得到<formula>formulaseeoriginaldocumentpage8</formula>则,四类分类问题只需要两个二类分类机即可构造分类编码矩阵,且第一个分类机以3、4类为正类,第二个分类机以2、4类为正类。对于一个新的输入进行判别时所使用的编码矩阵就是矩阵A。其测试过程和纠错输出编码的测试过程相同。二类分类机由支持向量机分类器构成,其分类过程是一个三层网络结构,它是一个多输入、单输出的学习机器,其基本体系结构如图4所示。原始数据经过预处理,进行特征提取,然后采用适当的核函数进行变换,将输入空间转换到一个高维的线性可分空间,这个空间就是所谓的再生核希尔波特空间(!^producingkernelHilbertspace,RKHS),在映射后的空间内构造最优分离超平面,其中利用核函数进行转换通常是隐式的。由于构造支持向量机的最后表达式是以内积的形式出现的,因此就采用内积来表达这种转换,而不是映射函数本身,这就免去了映射函数难以显式表达的问题。在RKHS空间中构造最优分离超平面的过程就是搜索支持向量的过程,如图SVpSV2,……、SVn是支持向量,由这些支持向量构造出学习机,训练阶段的工作完成。经过同样预处理的未知类别数据输入到学习机进行分类判别,得到学习结果,整个学习过程结束。采用支持向量机求解模式识别时需要选择一个核函数,由于不同的核函数构成的分类器的性能不同,因此选择哪种核函数对于支持向量机的设计是非常重要的。惩罚因子(g)和核函数的参数(C)是影响支持向量机性能的主要原因,其中核函数的参数主要影响样本数据在高维特征空间中分布的复杂程度,而惩罚因子的作用是在确定的特征空间中调节支持向量机的置信范围和经验风险的比例,所以,要想获得泛化能力良好的支持向量机,首先要选择合适的核函数参数将数据映射到合适的特征空间,然后针对该确定的特征空间寻找合适的惩罚因子以使支持向量机的置信范围和经验风险具有最佳比例。本发明利用网格搜索算法对核函数参数优化,用交叉验证法对目标函数(如均方差最小等)进行寻优,直至找到最佳的参数对(g,C),使交叉验证的精度最高,具体步骤是其中,网格搜索算法要将惩罚因子g和核函数参数形成MXN个(g,C)组合(其中M和N分别为g和C的个数),分别训练不同的支持向量机,估计其学习精度,从而在MXN个(g,C)的组合中得到学习精度最高的一个组合作为最优值。交叉验证方法的基本过程如下假设η是分组数,如η=3就是拆成3组,然后先用1和2来训练分类器并预测3以得到正确率;再用2和3训练并测试1,最后用1跟3训练并测试2,其他以此类推。综上所述,本发明基于支持向量机的表面肌电信号多类别模式识别方法,按照如下步骤具体实施步骤11.1)从MIT-BIH数据库中下载所需的表面肌电信号数据,并采集需要进行分类的样本信号,将一部分用作训练样本,另一部分作为测试样本;1.2)选用sym4小波基函数对样本信号作五尺度小波分解;1.3)提取样本信号的小波系数,从小波分解系数构成的矩阵中提取矩阵的奇异值作为信号特征,构建特征矢量;步骤22.1)采用MOC方法设计基于支持向量机的多类别分类器;2.2)将提取到的训练样本的特征矢量输入到分类器进行分类训练;2.3)将提取到的测试样本的特征矢量输入到分类器进行分类测试;2.4)用交叉验证方法对支持向量机分类器进行参数优化,重复步骤2.2和步骤2.3;2.5)分析模式识别的结果。实施例“对于一种八类表面肌电信号的模式识别”首先可以从MIT-BIH数据库[http://WWW.physionet.org/]中下载到所需要的表面肌电信号数据,然后选取八个动作的肌电信号,对每个动作的肌电信号采集100个样本进行实验,具体过程如下步骤1选用Sym4小波基函数分别对8个动作的表面肌电信号作五尺度小波分解;步骤2对分解后得到的sEMG的各尺度细节分量,提取每级的小波系数,提取到的某一动作的一个样本的小波系数如图5所示;步骤3从得到的小波系数中提取小波系数的奇异值作为信号特征,构成特征矢量,提取到的一组表面肌电信号的小波系数奇异值的特征值见表1;表1是本发明实施例提取到的表面肌电信号小波系数奇异值特征值<table>tableseeoriginaldocumentpage9</column></row><table>步骤4用MOC方法构造多类别支持向量机分类器;步骤5从提取到的特征矢量中任选两个动作的20组特征矢量作为训练样本输入到分类器中进行分类训练;步骤6任选两个动作的20组特征矢量作为测试样本输入到分类器进行分类测试;步骤7任选3、4、5、6、7、8个动作的20组特征矢量样本作为训练样本和20组作为测试样本输入到分类器分别进行多个类别的分类实验,得到的分类结果如图6所示;步骤8对构造的分类器进行参数优化;步骤9重复步骤5、步骤6、步骤7,得到的分类结果如图7所示。步骤10对两个结果进行比较,比较的结果如图8所示,可看出优化后的识别率明显好于优化前。步骤11将支持向量机的分类结果与神经网络的结果进行比较,得到如图9所示的结果,SVM的分类效果好于RBF神经网络。综上所述,本发明选用sym4小波函数对表面肌电信号进行五尺度分解后,提取到的小波系数奇异值特征有效性很高,用MOC方法设计的支持向量机分类器的准确度也得到了很大提高,采用交叉验证方法对参数的优化得到了很好的效果,使支持向量机的应用范围更加广泛。基于以上理论基础,对表面肌电信号进行多尺度小波分解,从信号的小波变换系数矩阵中提取矩阵的奇异值作为信号的特征,构建特征矢量。最后设计支持向量机分类器实现模式识别,这将明显地提高模式识别的准确性,有助于实现肌电假肢的精确控制和随意控制,使之最大程度逼近健肢,在肌电假肢实用化进程中具有重要意义。权利要求一种基于支持向量机的表面肌电信号多类别模式识别方法,其特征在于,按照以下步骤实施步骤1、对采集到的表面肌电信号,基于小波分析进行特征提取1.1)从MIT-BIH数据库中下载所需的表面肌电信号数据,并采集需要进行分类的样本信号,将一部分用作训练样本,另一部分作为测试样本;1.2)选用sym4小波基函数对样本信号作五尺度小波分解;1.3)提取样本信号的小波系数,从小波分解系数构成的矩阵中提取矩阵的奇异值作为信号特征,构建特征矢量;步骤2、基于SVM的模式识别2.1)用MOC方法设计基于支持向量机的多类别分类器;2.2)将训练样本的特征矢量输入到分类器进行分类训练;2.3)将测试样本的特征矢量输入到分类器进行分类测试;2.4)用交叉验证方法对支持向量机分类器进行参数优化,重复步骤2.2和步骤2.3;2.5)分析模式识别的结果。2.根据权利要求1所述的识别方法,其特征在于所述步骤1的具体实施方法是采集表面肌电信号f(t)GL2(R),L2(R)表示平方可积的实数空间,即能量有限的空间信号,其连续小波变换为<formula>formulaseeoriginaldocumentpage2</formula>其中卢为V(t)的Fourier变换,V(t)GL2(R),外劝满足容许条件(2)¥(t)称为基小波,将基小波经伸缩和平移得到小波序列,称子小波<formula>formulaseeoriginaldocumentpage2</formula>其中,a为伸缩因子或尺度因子,将基小波作伸缩;b为平移因子,将基小波作平移,选用sym小波函数对表面肌电信号进行小波分解,在得到表面肌电信号的小波系数后,即提取小波系数奇异值来构建特征矢量,对于提取到的小波系数矩阵AmXn,则存在正交矩阵U=[Ul,...,um],V=[Vl,...,vm]使得UtAV=diag[o...op]=ff,p=min(m,n),即A=UWVT,该式称为A的奇异值分解,其中,o2彡…彡op^0,0i(i=1,2,…,P)为A的奇异值,即构建特征矢量。3.根据权利要求1所述的识别方法,其特征在于,所述的步骤2的具体实施步骤是对于样本集(Xi,yi),i=1,2,…,n,XiGRd,yiG{_1,+1}是类别标号,d维空间中线性判别函数的一般形式为f(x)=*x+b,分类面方程为cox+b=0(4)对判别函数进行归一化,使离分类面最近的样本的|f(x)|=1,得到分类间隔2/||||,由于分类间隔最大等价于使||||最小,则需满足Yi<formula>formulaseeoriginaldocumentpage2</formula>其中使式(5)中等号成立的那些样本称作支持向量,这样求最优分类面就成为在条件(5)约束下,求函数<formula>formulaseeoriginaldocumentpage3</formula>(6)的最小值,利用Lagrange乘子法,最终求得最优分类函数为<formula>formulaseeoriginaldocumentpage3</formula>(8)用内积K(Xi,x)替代最优分类面中的点积,就相当于将原特征空间变换到了另一新的特征空间,此时相应的判别函数式(8)变换为<formula>formulaseeoriginaldocumentpage3</formula>(9)式(9)中的K(Xi,X)为核函数,利用网格搜索算法对核函数参数优化,用交叉验证法对目标函数进行寻优,直至找到最佳的参数对(g,C),使交叉验证的精度最高,具体步骤是网格搜索算法要将惩罚因子g和核函数参数形成MXN个(g,C)组合,其中M和N分别为g和C的个数,分别训练不同的支持向量机,估计其学习精度,从而在MXN个(g,C)的组合中得到学习精度最高的一个组合作为最优值,交叉验证方法的实施过程是假设n是分组数,如n=3就是拆成3组,然后先用1和2来训练分类器并预测3以得到正确率;再用2和3训练并测试1,最后用1跟3训练并测试2,其他以此类推。4.根据权利要求3所述的识别方法,其特征在于,所述的核函数选用多项式核函数、径向基核函数或sigmoid核函数。5.根据权利要求3所述的识别方法,其特征在于,所述的对于多类分类问题,通过组合多个二值分类器来实现对多类别分类器的构造,使用最小输出编码,即M0C方法来构造多类别分类器,该多类别分类器的实施如下对于M类问题进行分类时,首先构造一个矩阵A,其行数为M,列数为[lbM],依次把数0,…,M-1写成二进制的形式;然后,从矩阵的第一行开始,按照最后一位放到最后一列的原则,把这些二进制数从小到大写入矩阵中,空位或者0都写成-1;把矩阵A转秩得到矩阵B,那么,B的行数[lbM]就是两类分类机的数目,而分类的原则就是按照每行的元素的正负来进行,1代表正类,"1代表负类。全文摘要本发明公开了一种基于支持向量机的表面肌电信号多类别模式识别方法,按照以下步骤实施步骤1、从MIT-BIH数据库中下载所需的表面肌电信号数据,并采集需要进行分类的样本信号,将一部分用作训练样本,另一部分作为测试样本;选用sym4小波基函数对样本信号作五尺度小波分解;提取样本信号的小波系数,从小波分解系数构成的矩阵中提取矩阵的奇异值作为信号特征,构建特征矢量;步骤2、用MOC方法设计基于支持向量机的多类别分类器;将提取到的训练样本及测试样本的特征矢量分别输入到分类器进行分类训练或测试;用交叉验证方法对支持向量机分类器进行参数优化,分析模式识别的结果。本发明方法极大地提高模式识别的准确性。文档编号G06K9/66GK101833671SQ201010136019公开日2010年9月15日申请日期2010年3月30日优先权日2010年3月30日发明者刘涵,黄赟伟申请人:西安理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1