基于遗传算法优化支持向量机的肌电信号步态识别方法
技术领域
本发明属于模式识别技术领域,涉及一种肌电信号的识别方法,特别涉 及一种基于遗传算法优化支持向量机的肌电信号步态识别方法。
背景技术
下肢步态是人体在行走过程中,双腿所表现出的姿势和状态,具有周期 性、连续性和重复性等特点。人体运动过程中,从一侧脚跟着地到该侧脚跟 再次着地的时间为一个完整的步态周期,并且可以根据脚是否触地分为两个 时期:脚触地为支撑期,脚离地为摆动期。对人体步态进行识别研究,主要 通过采集下肢运动有关信息,并对信息进行解码分析,准确地还原下肢运动 所处的步态阶段,从而完成步态的实时识别。运动信息主要包括压力信息、 关节角度信息以及肌电信息(Electromyograpy,EMG)等。
利用EMG信号对肢体动作进行识别研究,已有20多年的历史,随着模式 识别技术的进步,已经取得多项进展。如Wang等人使用离散小波包变换对EMG 信号在时域内进行分解并提取特征,利用遗传算法(Genetic Algorithm,GA) 选择特征,最后应用BP神经网络(BP Neural Network,BPNN)对4类手部 动作进行识别,取得了较高的准确率。Song等人采用模糊小-大神经网络 (Fuzzy Min-Max Neural Network,FMMNN),依据肌肉收缩时间的变化,调 节识别模型的参数取值范围,很好地克服了肌肉疲劳对识别效果造成的影响。 然而,神经网络的理论基础是经典统计学,依赖于样本数量趋于无穷大时的 渐进值,但是实际问题中样本数量往往有限,在应用中往往不能满足实际需 求。
支持向量机(Support Vector Machine,SVM)是目前用于EMG分类识别 的较好方法。如李林伟等人在sEMG动作模式的识别中,构造SVM分类器,成 功地对sEMG信号做出了辨识,并与径向基函数神经网络(Radial Basis Function Neural Network,RBFNN)相比较,体现了优越性。Castllini等人 在前臂EMG信号的分类过程中,采用了高斯核支持向量机、神经网络以及局 部加权投影回归法,并对实际分类效果进行对比分析。结果表明,SVM分类器 取得的识别效果明显优于其余两种方法。然而,SVM分类器性能的好坏,与其 参数(主要与惩罚参数c、核函数参数g)密切相关。如何快速有效地进行参 数组合选择,是提高SVM识别效果的关键。
发明内容
本发明针对目前支持向量机在肌电信号步态识别中不易确定最优参数组 合的问题,提出一种基于遗传算法优化支持向量机的肌电信号步态识别方法, 快速找出最优惩罚参数c和核函数参数g,优化支持向量机分类器,提高其在 下肢运动步态识别中的效率和准确率。
为了实现以上目的,本发明方法包括以下步骤:
步骤(1),下肢运动肌电信息获取。
选择与下肢运动关系紧密的肌肉群作为EMG信息获取源,采集运动过程中 产生的多路EMG信号,再对采集到的原始EMG信号进行消噪处理。所述的消噪 处理采用小波模极大值去噪方法,首先对肌电信号进行小波分解,然后根据 小波系数的奇异性,利用信号与噪声模极大值在小波尺度上的不同变化特性, 分离出信号与噪声,最后重构消噪后的肌电信号样本数据,获得下肢运动肌 电信息。
步骤(2),提取消噪后肌电信号的特征向量样本集。
先分别计算出消噪后肌电信号的绝对值均值和方差作为特征值,再将各 组特征值组合成为特征向量样本集。绝对值均值A和方差V的求解公式为,
A = 1 N Σ i = 0 N - 1 | x i | - - - ( 1 ) ]]>
V = 1 N - 1 Σ i = 0 N - 1 ( x i - A ) 2 - - - ( 2 ) ]]>
其中,xi表示消噪后的EMG,i=0,1,2,…,N-1为一长度为N的肌电信号时间 序列。
步骤(3),通过GA对SVM进行参数优化,得到最优SVM分类器,实现下肢 肌电信号的步态分类与识别;
具体方法如下:
一、遗传算法(GA)的设计。遗传算法是一种新型并行搜索和优化的神 经网络算法,采用构造初始种群的方式覆盖问题的所有可能解,通过遗传操 作寻找最优解。在SVM分类器的优化问题中主要包括以下内容:惩罚参数和核 函数参数的所有可能解构成初始种群,将每一可能解作为遗传算子并按二进 制法进行编码,适应度定标,对遗传算子进行选择、交叉和变异遗传操作, 设置最大遗传代数为终止条件。本发明选取SVM对训练集在5折交叉验证(CV) 意义下的识别率作为适应度值,识别率越高,适应度值越大,并通过选择操 作保留适应度值高的个体。采用交叉操作使两个父染色体相互交换部分基因, 从而形成更好的个体。设交叉概率为Pc,则第i个染色体ri和第j个染色体rj在 h位的交叉操作如下:
r jh = r jh ( 1 - P c ) + r ih P c r ih = r ih ( 1 - P c ) + r jh P c - - - ( 3 ) ]]>
上式中,Pc是[0,1]区间的随机数。变异操作可以完善种群多样性,避免陷 入局部最优解的困境,且改善局部搜索能力。对种群按照变异概率Pm随机确 定变异个体,并采用变异操作形成新的个体。设对第j个个体的第d位基因rjd进 行变异,则具体变异操作如下:
r jd = r jd + ( r jd - r max ) * f ( g ) P m > 0.5 r jd + ( r min - r jd ) * f ( g ) P m ≤ 0.5 - - - ( 4 ) ]]>
其中,rmax是基因rjd的上界,rmin为基因rjd的下界。f(g)=Pm(1-g/Gmax)2为具 体变异操作,其中,g表示当前迭代次数,Gmax是最大进化代数,Pm为[0,1]间 随机数。
二、支持向量机(SVM)分类器的构造。支持向量机利用核函数变换将低 维空间不可分的样本投影到高维空间,在高维空间中建立使不同类别样本间 隔最大的面,即分类超平面,实现分类,并使用惩罚参数对错分样本进行惩 罚,修正分类模型。SVM的决策函数为:
f ( X ) = sgn [ Σ i = 1 l α i l i K ( X , Z i ) + b ] - - - ( 5 ) ]]>
其中,X为输入向量,即待分类样本,Zi为支持向量。K(X,Zi)为核函数, 本发明采用径向基核函数,K(X,Zi)=exp[-g·(X-Zi)2],g是核函数参数。αi称 为训练样本对应的Lagrange乘子,且0≤αi≤c,c是惩罚参数,b∈R为偏置。 f(X)为决策曲线,根据其值的不同,对输入的待分类样本进行分类。
三、GA对SVM参数的优化方法。本发明采用GA寻找使SVM分类器性能最佳 的惩罚参数c和核函数参数g组合,以此最优参数组合重新训练SVM模型,即 可得到最优分类器。GA优化SVM的具体流程如下:
(1)设置惩罚参数c和核函数参数g范围,构成初始种群;
(2)以c和g参数组合下的SVM识别率作为适应度值;
(3)进行遗传操作,并计算每组c、g下的识别率。若该组c、g下识别率 最高,则以此时c、g参数更新cbest、gbest;若此时识别率不是最高,则保留以 前cbest、gbest;
(4)终止条件设为最大迭代次数。若不满足终止条件,则返回第(3)步继 续进行遗传操作;当满足终止条件,即迭代次数达到最大,选取此时的cbest、 gbest为最优参数组合,并依据此惩罚参数和核函数参数重新训练支持向量机, 作为最终分类器。
四、将步骤2得到的特征向量样本集,随机分为两组,分别作为训练样 本和测试样本。利用训练样本得到GA优化后的SVM分类器,并应用优化后分 类器对测试样本进行识别,得到识别结果。
本发明与已有下肢步态识别方法相比,具有以下优点:
1、计算快速,识别率高。遗传算法具有全局搜索能力,在参数可选范围 较大时,不必完全遍历网格内所有参数点就可以通过遗传操作找到全局最优 解,完成优化。GA-SVM方法在降低计算时间的同时,还能有效提高步态识别 率。
2、避免过学习、欠学习发生。合适的遗传代数和种群大小可以避免欠学 习的发生,正确的c、g选择顺序可以避免过学习的出现。
附图说明:
图1为本发明具体实施流程图;
图2为GA优化SVM参数流程图;
图3为GA寻找最佳参数的适应度(准确率)曲线图。
具体实施方式
下面结合说明书附图对本发明的具体实施例作详细说明:本实施例在以 本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过 程。但本发明的保护范围不限于下述的实施例。
如图1,本发明方法的实施主要包括以下步骤:
步骤一,下肢运动肌电信息获取。根据下肢在行走过程中不同肌肉所起 作用的大小、肌肉的典型性以及肌电信号采集的准确性、便捷性,本文选择 股内侧肌、大腿后侧的半腱肌、大腿内侧的长收肌和大腿与胯部相连的阔筋 膜张肌为测试肌肉群。实验设备选择美国Noraxon公司的MyoTrace 400肌电 采集仪,同时拾取上述4块肌肉上产生的4路肌电信号,采样频率为1000Hz, 并且同步采集视频和音频,方便后续对步态的划分进行验证。实验对象为22 岁健康男性,并以1.8m/s的速度进行平地行走运动。采集到的信号由蓝牙设 备传输到PC机。再对原始肌电信号进行小波分解,并采用Hermite插值方法 重构出消噪后的EMG信号。
步骤二,提取消噪后肌电信号特征向量样本集;一个完整步态周期可划 分为五个阶段,即支撑前期、支撑中期、支撑后期、摆动前期、摆动后期, 并分别以1,2,3,4,5编号。利用窗口法截取特征数据,对消噪后的4路肌电 信号分别提取其绝对值均值和方差特征,得到各步态阶段的特征向量为 Xi={Ai1,Vi1,Ai2,Vi2,Ai3,Vi3,Ai4,Vi4},其中,i=1,2,3,4,5为步态阶段序列号。
步骤三,通过GA对SVM进行参数优化,得到最优SVM分类器,对步骤二生 成的特征样本进行归一化处理,以特征样本数量逐次倍增的方式构造三组特 征样本集。随机取用所选择特征样本集内特征样本数的2/3作为学习样本,按 照5折交叉验证方法,利用GA寻找使学习样本识别效果最优的惩罚参数c和核 函数参数g,并应用该最优参数组合重新训练支持向量机。剩下特征样本数的 1/3作为测试样本,用来对优化后所得的SVM模型进行测试。优化流程图如图2 所示,运行参数设置为:最大进化代数maxgen为100,种群最大数量sizepop 为20,交叉概率Pc为0.7,变异概率Pm为0.9%,惩罚参数c取值范围为[0,10000], 核函数参数g取值范围为[0,100]。当遗传代数最大时,所得cbest、gbest即为最优 参数。图3为GA寻找SVM最佳参数的适应度曲线图,当满足终止条件时,优化 结束,得到最优惩罚参数cbest、核函数参数gbest。
步骤四,实现下肢肌电信号的步态分类与识别。利用步骤三得到的最优 惩罚参数cbest、核函数参数gbest,优化SVM分类器,分别使用优化前后的分类器 对测试样本进行识别实验,得到识别结果。如果识别结果和测试目标相一致, 则说明该步态动作得到了正确归类,否则为错误归类。优化前后具体实验结 果分别如表1和表2所示,可以看出,GA优化后的SVM分类器,不论是在准确率 还是泛化能力方面,都明显高于未经优化的SVM分类器。
表1优化前阶段各步态识别率
表2优化后阶段各步态识别率
![]()