基于PSO算法的SVM参数优化方法研究
- 格式:pdf
- 大小:430.74 KB
- 文档页数:8
基于PSO与GA的SVM特征选择与参数优化算法作者:温海标来源:《软件导刊》2017年第05期摘要摘要:支持向量机(SVM)在处理大样本特征维数较多的数据集时,算法消耗时间长而且容易陷入局部最优解,选择不合适的SVM算法参数会影响SVM模型分类性能。
为了提高SVM性能,提出了基于粒子群算法(PSO)和遗传算法(GA)相结合的SVM特征选择与参数同步优化算法PGS。
在UCI标准数据集上的实验表明,PGS算法能有效地找出合适的特征子集及SVM算法参数,提高收敛速度并能在较小的特征子集获得较高的分类准确率。
关键词关键词:粒子群算法;遗传算法;支持向量机;特征选择;参数优化DOIDOI:10.11907/rjdk.171267中图分类号:TP312文献标识码:A文章编号文章编号:16727800(2017)0050021030引言分类问题主要是分类器模型的选择、分类样本的特征选择以及分类器参数优化等问题,是模式识别领域的基础问题。
Vapnik等[1]在1995年提出一种新型有监督的统计学习方法——支持向量机(Support Vector Machines,SVM),在文本分类、图像分类、人脸识别等诸多领域得到了成功应用,成为机器学习领域的研究热点。
研究表明,SVM分类器的参数例如核函数参数、惩罚参数C与SVM 的分类性能有很大关系[2],选择合适的参数能显著提高SVM的分类精度。
特征选择是根据某种评估标准从样本的原始特征中选择部分特征作为特征子集[3]。
大数据时代下,样本冗余特征不断出现,如何从大样本特征中去除冗余、选取有利特征是机器学习的重要研究课题。
样本特征选择合理,不但可以消除冗余,而且可以降低算法时间复杂度,加快算法运行速度,提高分类器的准确率。
粒子群优化算法(Particle Swarm Optimization,PSO)是根据鸟群扑食行为产生的仿生设计算法,属于一种简单有效的全局优化算法,已在许多领域得到应用,如用于参数选择[4]。
舰船装备维修费用预测的PSO-LSSVM方法研究
李哲龙
【期刊名称】《舰船电子工程》
【年(卷),期】2013(033)008
【摘要】提出了一种基于粒子群优化的最小二乘支持向量机(PSO-LSSVM)模型的舰船装备维修费用预测方法,该方法利用PSO算法的收敛速度快和全局收敛能力,优化LSSVM模型的惩罚因子和核函数参数,避免了人为选择参数的盲目性,提高了LSSVM模型的预测精度.以某舰船装备维修费用为例进行实例验证,计算结果表明,这种方法比其他方法有更好的预测精度.
【总页数】4页(P129-131,173)
【作者】李哲龙
【作者单位】中国人民解放军91315部队大连116041
【正文语种】中文
【中图分类】TP181
【相关文献】
1.基于灰色理论的舰船装备维修保障费用预测研究 [J], 李哲龙
2.基于改进PSO-LSSVM的军用工程机械研制费用预测模型 [J], 徐波
3.基于PSO-LSSVM的飞机维修保障费用预测模型 [J], 陈高波
4.舰船装备维修保障基础数据体系建设及维护方法研究 [J], 于风竺;张博;高骞
5.舰船装备维修性设计要求生成方法研究 [J], 魏国东;朱石坚;俞翔
因版权原因,仅展示原文概要,查看原文内容请购买。
%% 清空环境clcclearload wine;train = [wine(1:30,:);wine(60:95,:);wine(131:153,:)];train_label = [wine_labels(1:30);wine_labels(60:95);wine_labels(131:153)];test = [wine(31:59,:);wine(96:130,:);wine(154:178,:)];test_label = [wine_labels(31:59);wine_labels(96:130);wine_labels(154:178)];[train,pstrain] = mapminmax(train');pstrain.ymin = 0;pstrain.ymax = 1;[train,pstrain] = mapminmax(train,pstrain);[test,pstest] = mapminmax(test');pstest.ymin = 0;pstest.ymax = 1;[test,pstest] = mapminmax(test,pstest);train = train';test = test';%% 参数初始化%粒子群算法中的两个参数c1 = 1.6; % c1 belongs to [0,2]c2 = 1.5; % c2 belongs to [0,2]maxgen=300; % 进化次数sizepop=30; % 种群规模popcmax=10^(2);popcmin=10^(-1);popgmax=10^(3);popgmin=10^(-2);k = 0.6; % k belongs to [0.1,1.0];Vcmax = k*popcmax;Vcmin = -Vcmax ;Vgmax = k*popgmax;Vgmin = -Vgmax ;% SVM参数初始化v = 3;%% 产生初始粒子和速度for i=1:sizepop% 随机产生种群pop(i,1) = (popcmax-popcmin)*rand+popcmin; % 初始种群pop(i,2) = (popgmax-popgmin)*rand+popgmin;V(i,1)=Vcmax*rands(1); % 初始化速度V(i,2)=Vgmax*rands(1);% 计算初始适应度cmd = ['-v ',num2str(v),' -c ',num2str( pop(i,1) ),' -g ',num2str( pop(i,2) )];fitness(i) = svm train(train_label, train, cmd);fitness(i) = -fitness(i);end% 找极值和极值点[global_fitness bestindex]=min(fitness); % 全局极值local_fitness=fitness; % 个体极值初始化global_x=pop(bestindex,:); % 全局极值点local_x=pop; % 个体极值点初始化tic%% 迭代寻优for i=1:maxgenfor j=1:sizepop%速度更新wV = 0.9; % wV best belongs to [0.8,1.2]V(j,:) = wV*V(j,:) + c1*rand*(local_x(j,:) - pop(j,:)) + c2*rand*(global_x - pop(j,:));if V(j,1) > VcmaxV(j,1) = Vcmax;endif V(j,1) < VcminV(j,1) = Vcmin;endif V(j,2) > VgmaxV(j,2) = Vgmax;endif V(j,2) < VgminV(j,2) = Vgmin;end%种群更新wP = 0.6;pop(j,:)=pop(j,:)+wP*V(j,:);if pop(j,1) > popcmaxpop(j,1) = popcmax;endif pop(j,1) < popcminpop(j,1) = popcmin;endif pop(j,2) > popgmaxpop(j,2) = popgmax;endif pop(j,2) < popgminpop(j,2) = popgmin;end% 自适应粒子变异if rand>0.5k=ceil(2*rand);if k == 1pop(j,k) = (20-1)*rand+1;endif k == 2pop(j,k) = (popgmax-popgmin)*rand+popgmin;endend%适应度值cmd = ['-v ',num2str(v),' -c ',num2str( pop(j,1) ),' -g ',num2str( pop(j,2) )];fitness(j) = svmtrain(train_label, train, cmd);fitness(j) = -fitness(j);end%个体最优更新if fitness(j) < local_fitness(j)local_x(j,:) = pop(j,:);local_fitness(j) = fitness(j);end%群体最优更新if fitness(j) < global_fitnessglobal_x = pop(j,:);global_fitness = fitness(j);endfit_gen(i)=global_fitness;endtoc%% 结果分析plot(-fit_gen,'LineWidth',5);title(['适应度曲线','(参数c1=',num2str(c1),',c2=',num2str(c2),',终止代数=',num2str(maxgen),')'],'FontSize',13);xlabel('进化代数');ylabel('适应度');bestc = global_x(1)bestg = global_x(2)bestCVaccuarcy = -fit_gen(maxgen)cmd = ['-c ',num2str( bestc ),' -g ',num2str( bestg )];model = svmtrain(train_label,train,cmd);[trainpre,trainacc] = svmpredict(train_label,train,model);trainacc[testpre,testacc] = svmpredict(test_label,test,model);testacc。
基于PSO算法的SVM参数优化方法研究基于粒子群优化算法(Particle Swarm Optimization, PSO)的支持向量机(Support Vector Machine, SVM)参数优化是近年来机器学习领域中的热门研究方向。
本文将探讨PSO算法在SVM参数优化中的应用,并介绍其原理和优势。
首先,我们需要介绍一下支持向量机(SVM)。
SVM是一种常用的监督学习算法,可用于分类和回归问题。
其核心思想是在特征空间中找到一个最优的超平面来使不同类别的样本尽可能地分开。
SVM参数优化包括核函数选择、惩罚参数(C)以及其他控制参数的选择。
然而,SVM参数优化是一个复杂的优化问题,传统方法通常需要进行大量的计算和试验。
为了降低计算复杂度,提高参数优化效率,近年来研究者开始引入PSO算法来求解SVM参数优化问题。
PSO算法是一种启发式优化算法,模拟了鸟群捕食的行为。
在PSO算法中,每个解(粒子)都有一个速度和位置,并与其他粒子共享信息。
通过不断更新速度和位置,粒子会向全局最优解靠近。
在使用PSO算法进行SVM参数优化时,需要将SVM参数作为优化目标函数的参数。
PSO算法通过不断更新粒子的速度和位置来优化SVM参数,使得SVM模型在训练集上的性能最优。
具体而言,PSO算法的每个粒子可以看作是一个SVM的参数组合,包括核函数选择、惩罚参数(C)等。
每个粒子通过评估其对应的SVM模型在训练集上的性能来计算适应度值。
然后,粒子根据自己的当前最优位置和全局最优位置来更新速度和位置,以期望找到更好的解。
PSO算法有以下几个优势适合用于SVM参数优化。
首先,PSO算法具有全局能力,能够在参数空间中找到最优解。
其次,PSO算法不依赖于问题的具体形式,适用于各种类型的SVM参数优化。
而且,PSO算法不需要计算梯度,因此能够避免陷入局部最优解。
目前,PSO算法在SVM参数优化中得到了广泛的应用,并取得了较好的结果。
第13卷㊀第7期Vol.13No.7㊀㊀智㊀能㊀计㊀算㊀机㊀与㊀应㊀用IntelligentComputerandApplications㊀㊀2023年7月㊀Jul.2023㊀㊀㊀㊀㊀㊀文章编号:2095-2163(2023)07-0173-06中图分类号:TP391.9文献标志码:B基于PSO-SVM的表面肌电信号多手势识别王㊀博,闫㊀娟,杨慧斌,徐春波,吴㊀晗(上海工程技术大学机械与汽车工程学院,上海201620)摘㊀要:作为人机交互的一种重要形式,手势识别在医疗康复领域已尤显重要㊂针对手势识别技术存在的不足,提出粒子群优化支持向量机(PSO-SVM)的多手势精确识别方法㊂首先,利用表面肌电信号采集仪采集16种手势所对应的表面肌电信号(SEMG);其次,分别从时域㊁频域和时频域提取所需要的SEMG特征;然后,采用主成分分析法(PCA)对数据特征进行降维;最后,使用PSO-SVM对降维后的数据特征进行分类识别㊂经过与传统支持向量机(SVM)分类以及遗传算法优化支持向量机分类(GA-SVM)相对比,本方法识别精度高㊁速度快,研究结果可为手势识别提供新的思路,为人体上肢动作判断和上肢康复机器人的研究提供参考㊂关键词:手势识别;表面肌电信号;主成分分析;粒子群优化;支持向量机Multi-gesturerecognitionofSEMGsignalsbasedonPSO-SVMWANGBo,YANJuan,YANGHuibin,XUChunbo,WUHan(SchoolofMechanicalandAutomotiveEngineering,ShanghaiUniversityofEngineeringScience,Shanghai201620,China)ʌAbstractɔAsanimportantformofhuman-computerinteraction,gesturerecognitionhasbecomethefocusofresearchinthefieldofmedicalrehabilitation.Aimingattheshortcomingsofgesturerecognitiontechnology,amulti-gestureaccuraterecognitionmethodbasedonparticleswarmoptimizationsupportvectormachine(PSO-SVM)isproposed.Firstly,surfaceelectromyography(SEMG)signalscorrespondingto16kindsofhumangesturesarecollectedbysurfaceelectromyographysignalacquisitioninstrument.Secondly,SEMGfeaturesareextractedfromtimedomain,frequencydomainandtime-frequencydomainrespectively.Then,principalcomponentanalysis(PCA)isusedtoreducethedimensionofdatafeatures.Finally,accordingtothedatacharacteristics,PSO-SVMisusedforclassificationandrecognition.Comparedwithtraditionalsupportvectormachine(SVM)classificationandgeneticalgorithmoptimizedsupportvectormachineclassification(GA-SVM),thismethodhashighrecognitionaccuracyandspeed.Theresearchresultscanprovideanewideaforgesturerecognition,andprovidethereferenceforhumanupperlimbmotionjudgmentandtheresearchofupperlimbrehabilitationrobot.ʌKeywordsɔgesturerecognition;surfaceelectromyographysignal;principalcomponentanalysis;particleswarmoptimization;supportvectormachine作者简介:王㊀博(1997-),男,硕士研究生,主要研究方向:智能控制㊁机器学习;闫㊀娟(1978-),女,高级实验师,硕士生导师,主要研究方向:智能控制算法研究㊁机械自动化;杨慧斌(1983-),男,实验师,主要研究方向:智能控制㊁机械自动化;徐春波(1997-),男,硕士研究生,主要研究方向:机器视觉㊁智能控制;吴㊀晗(1997-),男,硕士研究生,主要研究方向:智能控制㊂通讯作者:闫㊀娟㊀㊀Email:aliceyan_shu@126.com收稿日期:2022-08-260㊀引㊀言目前,国内人口老龄化的问题较为严峻,老年人的健康问题已经逐渐成为人们关注的焦点㊂研究可知,老年人往往行动不便或者难以表达,因此通过手势表达内心想法便成为非常重要的一种途径㊂目前,主要的手势识别方式有视觉识别[1]和人体生物信号[2]识别两种,其中表面肌电信号(SEMG)识别方式作为一种生物信号显得尤为重要,因为其中蕴含着大量的信息㊂基于此,本文中通过人体表面肌电信号进行手势识别,通过手势识别的研究为后续研究提供基础㊂迄今为止,关于肌电信号对人体手势识别的研究已经取得较多成果,但大多研究对手势识别研究不够深入,赵诗琪等学者[3]使用了支持向量机来识别4种手势,识别结果为99.92%㊂隋修武等学者[4]通过非负矩阵分解与支持向量机的联合模型识别6种手势动作,识别结果为93%㊂江茜等学者[5]通过多通道相关性特征识别8种手势动作,识别结果为94%㊂当识别的手势种类增多时,分类器的识别精度将会随之降低,大量学者对分类器进行优化以利于提高识别精度㊂Leon等学者[6]对9Copyright ©博看网. All Rights Reserved.种手势进行识别,识别精度为94%㊂Lian等学者[7]通过K最邻近和决策树算法识别10种手势动作,识别率仅为89%㊂综上所述,为了满足当前医疗康复设备的需求,多手势识别的精确度还有待提高㊂使用SEMG信号进行手势识别时,特征提取和模式识别是提高手势识别精度的关键㊂典型的特征提取方法主要包括时域特征提取㊁频域特征提取和时频域特征提取[8]㊂模式识别主要通过搭建分类器实现,基于SEMG识别常用的分类器主要包括BP(BackPropagation)神经网络[9]㊁极限学习机(ExtremeLearningMachine,ELM)[10]㊁卷积神经网络(ConvolutionalNeuralNetworks,CNN)[11]和支持向量机(SupportVectorMachine,SVM)[12]等分类模型㊂但以上方法均存在一定程度的不足:BP神经网络在识别手势时准确率较低;由于极限学习机要经过反复的迭代学习,因此其训练速度在一定程度上相对缓慢;KNN计算量较大,计算时间长;SVM分类思想简单㊁分类效果较好,但训练参数值的选取会影响分类器的效果[13]㊂基于上述分析,本文中提出一种基于粒子群算法(ParticleSwarmOptimization,PSO)优化支持向量机的多手势识别方法,以提高多手势的识别精度㊂首先,利用主成分分析法对提取的表面肌电信号特征进行降维处理;然后,利用PSO对SVM的惩罚参数C和核函数半径参数g迭代寻优;最后,使用PSO优化的SVM(PSO-SVM)分类模型识别了16种手势,并与未优化的SVM分类模型和遗传算法(GeneticAlgorithm,GA)优化的SVM分类模型进行对比,从而验证本文所提方法的准确性㊂1㊀SEMG数据采集方法分析1.1㊀实验数据采集受试者为实验室中3名男生和1名女生㊂受试者年龄在23 28岁,平均身高在170cm,均为右手使用者且无神经肌肉骨骼疾病㊂实验前24h内没有进行高强度运动并且身心舒适㊂用磨砂膏和75%酒精棉清洁右肢掌长肌㊁桡侧腕屈肌㊁尺侧腕屈肌㊁指伸肌㊁指浅屈肌和肱桡肌皮肤表面皮肤,减少皮肤阻抗干扰㊂通过Delsys无线肌电设备对6块肌肉的表面肌电信号同时进行采集㊂受试者端坐于试验台前,背部保持90ʎ,左手臂自然垂下㊂实验时,共采集16个手势动作,每个动作维持6s,休息4s,进行6次循环,重复以上动作直至4名受试者全部采集完成㊂1.2㊀信号预处理SEMG信号是由人体内神经肌肉系统产生的一种特别微弱的生物电信号㊂SEMG信号的电压幅度范围是0 5mV,频率范围是20 1000Hz,其主要能量集中在50 150Hz范围内㊂因此,首先设计陷波滤波去除原始信号中50Hz的工频干扰,再设计30 300Hz的巴特沃斯带通滤波器去除肌电信号中的基线漂移及其他噪声信号㊂图1分别为滤波前后的时域波形及频域振幅谱,较好地滤除了有效范围外的噪声信号㊂210-1-2-3102030405060幅度/10-4t /s(a)原始波形1.51.00.51002003004005006007008009001000频率/H z参考幅值/10-6(c)原始振幅图210-1-2-3102030405060幅度/10-4t /s(b)滤波后波形1.51.00.51002003004005006007008009001000频率/H z参考幅值/10-6(d)滤波后振幅图图1㊀肌电信号滤波图Fig.1㊀FilteringdiagramofSEMGsignal471智㊀能㊀计㊀算㊀机㊀与㊀应㊀用㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀第13卷㊀Copyright ©博看网. All Rights Reserved.1.3㊀特征提取为了能更全面地分析SEMG信号中所包含的信息,本文分别提取了肌电信号中的时域特征㊁频域特征和时频域特征三种特征模型㊂1.3.1㊀时域特征提取本文选用的时域特征有均方根值(RMS)和绝对平均值(ARV)㊂时域特征值的计算公式为:RMS=1NðNi=1x2i(1)ARV=1NðNi=1xi(2)㊀㊀其中,xi(i=1,2, ,N)是信号的时间序列㊂1.3.2㊀频域特征提取本文选用的频域特征是平均功率频率(MPF)和中值频率(MF)㊂频域特征值的计算公式为:MPF=ʏ¥0fˑPSDf()dfʏ¥0PSDf()df(3)MF=12ʏ¥0PSDf()df(4)㊀㊀其中,f是SEMG信号的频率,PSD(f)是SEMG信号的功率谱密度函数㊂1.3.3㊀时频域特征提取时频分析法可以对信号在时域和频域内的能量信号同时进行展现,这对于分析非平稳信号相当重要㊂其中,小波变换具有较好的准确性,本文采用小波变换计算时频域特征瞬时平均功率(IMPF)和瞬时中值频率(IMF),公式具体如下:IMPF=ʏf2f1fˑPSD(t,f)dfʏf2f1PSD(t,f)df(5)ʏIMFf1PSD(t,f)df=ʏf2IMFPSD(t,f)(6)㊀㊀其中,f是SEMG信号的频率,PSD(t,f)是频率和时间的二维函数㊂1.4㊀特征降维本文利用6通道SEMG信号,以此对36个维度的特征参数进行提取㊂高维数据由于存在很多冗余特征,使得实验过程中的计算量增多,并因此对分类器产生极大的影响㊂同时,在此过程会产生 过拟合 ㊁ 维数灾难 等系列问题,从而降低分类器的性能[14]㊂因此,本文中使用主成分分析法进行降维处理㊂对其步骤流程可做分述如下㊂(1)首先,将计算得到的特征值进行处理构建样本矩阵,样本矩阵通过m行n列的矩阵X表示,得到:X=x11x12 x1nx21x22 x2n︙︙⋱︙xm1xm2 xmnéëêêêêêùûúúúúú(7)㊀㊀(2)构建数据样本的协方差矩阵C=1m-1XTX,得到协方差矩阵:C=c11 c1n︙⋱︙cn1 cnnéëêêêêùûúúúú(8)㊀㊀(3)分解协方差矩阵C并计算协方差矩阵的特征值λ1ȡλ2ȡ ȡλn和特征向量a1,a2, ,an㊂(4)确定特征矩阵主成分的个数v并构建主成分矩阵:Ymˑv=XmˑnAnˑv(9)㊀㊀其中,Anˑv=[a1,a2, ,av],最后得到SEMG手势特征降维后的主成分特征Ymˑv㊂2㊀分类器设计2.1㊀支持向量机分类支持向量机(SVM)是基于统计学领域的VC维理论和结构风险学最小理论基础上的一种机器学习算法,常用于模式分类和非线性回归[15]㊂通常,通过将向量映射到高维空间,以此来解决输入量与输出量之间的非线性问题㊂同时,通过设定的核函数g,将输入空间利用非线性变换转变到高维空间,从而通过高维空间得到最优线性分类面㊂对于给定的训练样本集{(xi,yi)},i=1,2, ,n,xɪRn,yɪ(-1,1),设最优平面为ωTx+b=0,分类间隔为:γ=2 ω (10)㊀㊀判别模型为:f(x)=sign(ωTx+b)(11)㊀㊀若要找到最大间隔,即找到参数和使得最大,等价于最小化,因此求解问题最终转化为带约束的凸二次规划问题:minω,b12 ω 2+Cðni=1εi(12)s.t.㊀yi(ωTxi+b)ȡ1-εi571第7期王博,等:基于PSO-SVM的表面肌电信号多手势识别Copyright©博看网. All Rights Reserved.εi>0,i=1,2, ,n㊀㊀其中,εi=1-yi(ωTxi+b)为损失函数,C是惩罚参数,C的值与错误分类的惩罚程度成正比,其值越小,则惩罚程度越小;反之,惩罚程度越大㊂同时,利用凸优化理论,将约束问题通过引入的拉格朗日乘子法转化为无约束问题:㊀Lω,b,λ()=12 ω 2+Cðni=1εi-ðni=1μiεi-ðni=1λi(yi(ωxi+b)-1+εi)(13)λiȡ0,μiȡ0对于极大值㊁极小值及对偶问题,令∂L∂ω=0,∂L∂b=0,∂L∂ε=0,因此得到:ω=ðni=1λiyixiðni=1λiyi=0C=λi+μiìîíïïïïïï(14)㊀㊀因此,最终得到:minλ12ðnj=1ðni=1λiλjyjyixjxi-ðni=1λi(15)s.t.㊀ðni=1λiyi0ɤλiɤC2.2㊀粒子群优化算法粒子群优化算法(PSO)是一种设计无质量的粒子来模拟鸟群中的鸟不断迭代寻优来解决优化问题的方法[16]㊂粒子的速度和位置通过迭代进行更新,粒子群优化算法公式为:Vk+1id=ωVkid+c1r1pbestkid-xkid()+c2r2gbestkid-xkid()xk+1id=xkid+vk+1id{其中,ω表示惯量因子;d=1,2, ,D表示空间维数;i=1,2, ,n表示粒子数;k表示当前迭代次数;vkid表示第i个粒子在第k次迭代速度;xkid表示第i个粒子在第k次迭代位置;pbestkid表示第i个粒子的个体最优解;gbestkid表示第i个粒子的全局最优解;c1,c2表示学习因子;r1,r2表示随机数㊂空间中的粒子不断搜寻其自身的最优解,将自身最优解传递给其他粒子,在所有传递的个体最优解中寻找全局最优解,所有粒子根据自身最优解及全局最优解不断调整位置及速度㊂2.3㊀粒子群优化支持向量机为了使SVM能够对肌电信号特征进行快速精确地识别,通过PSO对SVM中分类识别影响最大的2个元素进行优化,即惩罚参数C和核函数半径参数g,将SVM结果中误差最小的一组惩罚参数和核函数半径参数用于预测分类㊂图2是PSO优化SVM的流程图㊂由图2可知,m个粒子在D维空间中不断更新运动速度及自身所处位置,通过反复迭代寻优得到SVM的最优参数㊂粒子群优化:更新全局最优个体更新速度更新位置根据S V M 参数形成初始种群计算适应度值形成新的种群是否满足条件交叉验证,得到最佳准确率作为适应度值返回输入参数训练S V M得到S V M 最优参数结束开始参数适应度值是否图2㊀PSO-SVM流程图Fig.2㊀PSO-SVMflowchart671智㊀能㊀计㊀算㊀机㊀与㊀应㊀用㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀第13卷㊀Copyright ©博看网. All Rights Reserved.㊀㊀PSO优化SVM主要包括初始化种群㊁寻找初始极值㊁迭代寻优等操作,其步骤为:(1)在D维空间中,随机对m个粒子进行初始化,即对SVM参数编码,形成初始种群㊂(2)初始化的种群输入到SVM分类器中,通过训练得到适应度值㊂(3)评估计算得到的粒子适应度值㊂(4)寻找全局最优参数,并判断是否满足终止条件㊂(5)若寻找得到的最优参数不满足终止条件,则更新迭代过程中的全局最优速度和全局最优位置,形成新的种群返回到步骤2继续计算;当结束条件得到满足时,通过将最优参数对SVM重新训练,并将其作为最终分类器对特征识别分类㊂㊀㊀通过上述PSO优化算法得到SVM中惩罚参数C和核函数半径g的最优解,对分类器进行训练和分类预测㊂3㊀实验结果分析实验将从2方面对所提出方法模型进行分析验证:(1)分别使用本文设计的算法模型与传统SVM模型㊁遗传算法优化SVM模型对相同的实验数据进行实验对比,验证模型的有效性㊂(2)为判断模型的识别性能,使用交叉验证,将训练样本与验证样本的数据来源分割开来用于实验,以评估方法的通用性,使用不同人的训练样本去验证其他人的测试样本㊂3.1㊀不同分类模型的对比分析将PCA降维后的特征矩阵按照5ʒ1的比例分类参与分类器的训练和验证,训练和测试的样本不重叠且从实验者中平均调取㊂测试结果如图3所示㊂表2是关于分类器识别性能在不同方法下的对比㊂实际类型预测类型16141210864220406080100120140160样本序号类型(a)SVM预测结果161412108642020406080100120140160测试集样本类别标签实际测试集分类预测测试集分类测试集的实际分类和预测分类图A c c u r a c y =94.375%(b)GA-SVM预测结果1009080706050400102030405060708090100最佳适应度平均适应度进化代数适应度(c)GA-SVM迭代次数161412108642020406080100120140160测试集样本类别标签实际测试集分类预测测试集分类测试集的实际分类和预测分类图A c c u r a c y =95.625%(d)PSO-SVM预测结果100908070605040最佳适应度平均适应度进化代数102030405060708090100适应度(e)PSO-SVM迭代次数图3㊀测试结果对比图Fig.3㊀Comparisontableofresultsofdifferentmodels771第7期王博,等:基于PSO-SVM的表面肌电信号多手势识别Copyright ©博看网. All Rights Reserved.表1㊀不同模型结果对比表Tab.1㊀Comparisontableofresultsofdifferentmodels实验方法平均迭代次数平均准确率/%SVM\87.500GA-SVM2691.320本文方法1194.253㊀㊀由上述实验结果可以得出分析如下,不同方法表现出不同的分类效果㊂其中,传统的SVM方法,分类效果易受到干扰,分类精度不高;GA-SVM虽然能够提高手势的识别精度,但在分类过程中需要经过31次的迭代才能够达到分类的效果;对于本文中的方法,不仅对手势识别的准确率保持最高,同时也大大缩减了算法的复杂度,极大地提高了运算处理效率,表现出较好的分类识别性能㊂3.2㊀不同数据源实验验证考虑模型的通用性,即模型中训练的数据是基于部分受试者肌电信号进行训练,但手势识别对其他受试者的肌电信号同样适用㊂同时,为了分析所提出的模型在相同被试和不同被试下的识别性能,实验设计了男女混合验证的方式以消除性别的影响,按照2位男性同学的肌电信号进行训练,另外2位同学的肌电信号用于识别㊂分别使用SVM和POS-SVM进行实验对比,验证本文中所提方法的有效性㊂得到的训练结果性能对比见表2㊂表2㊀不同数据源实验结果对比表Tab.2㊀Comparisontableofexperimentalresultsofdifferentdatasources分类模型平均准确率/%SVM82.23PSO-SVM90.64㊀㊀由表2中的结果可知:不同数据源的实验比同一数据源降低了3.61%,而SVM下降程度更高,也进一步说明了本文中所提出的优化方法具有较好的识别性㊂4㊀结束语为了提高多手势识别的精度,文中提出了基于PSO-SVM的识别方法㊂结果表明,通过肌电信号的陷波滤波和带通滤波进行预处理,并对其从时域㊁频域和时频域提取信号特征,再经过PCA降维后使用本文所构建的PSO-SVM分类模型对16种手势识别准确率达到94.253%,将其与未被优化的SVM模型和GA-SVM模型进行对比,可知其识别效果有非常明显的改善㊂后续可将PSO-SVM分类模型应用于机械运动控制㊁外骨骼控制等领域㊂参考文献[1]解迎刚,王全.基于视觉的动态手势识别研究综述[J].计算机工程与应用,2021,57(22):68-77.[2]梁旭,王卫群,侯增广,等.康复机器人的人机交互控制方法[J].中国科学:信息科学,2018,48(01):24-46.[3]赵诗琪,吴旭洲,张旭,等.利用表面肌电进行手势自动识别[J].西安交通大学学报,2020,54(09):149-156.[4]隋修武,牛佳宝,李昊天,等.基于NMF-SVM模型的上肢sEMG手势识别方法[J].计算机工程与应用,2020,56(17):161-166.[5]江茜,李沿宏,邹可,等.肌电信号多通道相关性特征手势识别方法[J/OL].计算机工程与应用:1-9[2022-03-07].https://kns.cnki.net/kcms/detail/11.2127.tp.20220303.2103.008.html.[6]LEONM,GUTIERREZJM,LEIJAL,etal.EMGpatternrecognitionusingSupportVectorMachinesclassifierformyoelectriccontrolpurposes[C]//2011PanAmericanHealthCareExchanges.RiodeJaneiro,Brazil:IEEE,2011.[7]LIANKY,CHIUCC,HONGYJ,etal.Wearablearmbandforrealtimehandgesturerecognition[C]//2017IEEEInternationalConferenceonSystems,Man,andCybernetics(SMC).Banff,AB,Canada:IEEE,2017:2992-2995.[8]石欣,朱家庆,秦鹏杰,等.基于改进能量核的下肢表面肌电信号特征提取方法[J].仪器仪表学报,2020,41(01):121-128.[9]梅武松,李忠新.基于手形和姿态的军用动态手势识别方法研究[J].兵器装备工程学报,2021,42(05):208-214.[10]来全宝,陶庆,胡玉舸,等.基于人工鱼群算法-极限学习机的多手势精准识别[J].工程设计学报,2021,28(06):671-678.[11]许留凯,张克勤,徐兆红,等.基于表面肌电信号能量核相图的卷积神经网络人体手势识别算法[J].生物医学工程学杂志,2021,38(04):621-629.[12]都明宇,鲍官军,杨庆华,等.基于改进支持向量机的人手动作模式识别方法[J].浙江大学学报(工学版),2018,52(07):1239-1246.[13]徐云,王福能.采用sEMG的手势识别用APSO/CS-SVM方法[J].电子测量与仪器学报,2020,34(07):1-7.[14]黄铉.特征降维技术的研究与进展[J].计算机科学,2018,45(S1):16-21,53.[15]王霞,董永权,于巧,等.结构化支持向量机研究综述[J].计算机工程与应用,2020,56(17):24-32.[16]冯茜,李擎,全威,等.多目标粒子群优化算法研究综述[J].工程科学学报,2021,43(06):745-753.871智㊀能㊀计㊀算㊀机㊀与㊀应㊀用㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀㊀第13卷㊀Copyright©博看网. All Rights Reserved.。
pso-svm算法原理PSOSVM算法原理PSOSVM(Particle Swarm Optimization Support Vector Machine)是一种基于粒子群优化(PSO)的支持向量机(SVM)算法。
PSO算法是一种经典的全局优化算法,通过模拟鸟群或鱼群等生物群体行为,寻找最优解。
SVM算法是一种常用的机器学习算法,用于分类和回归问题。
PSOSVM算法结合了PSO算法的全局搜索能力和SVM算法的分类性能,能够在高维数据集中寻找到最佳的分类超平面。
下面将一步一步解释PSOSVM算法的原理。
1. 数据准备PSOSVM算法的输入是一个包含已知分类标签的训练数据集。
训练数据集由一组特征向量和相应的类标签组成。
特征向量描述了数据样本的特征,而类标签指示了每个样本的分类。
2. 初始化粒子群和SVM参数PSOSVM算法首先需要初始化粒子群,即一组粒子的初始位置和速度。
每个粒子代表了一个SVM模型的候选解。
粒子的位置表示了SVM模型的参数向量(例如权重向量和截距)的取值,而粒子的速度表示了参数向量的更新速度。
此外,初始化也需要设置PSO的参数,如惯性权重、加速度系数和迭代次数等。
这些参数决定了算法的搜索效率和精度。
3. 粒子运动和更新在PSOSVM算法中,粒子的运动可通过以下过程实现:- 计算粒子的适应度(即分类性能):根据当前粒子位置和速度,计算对应SVM模型的分类性能,通常使用交叉验证等方法评估。
- 更新粒子的最佳位置:比较当前粒子的适应度与历史最佳适应度,更新粒子的最佳位置,即当前拥有最好性能的SVM模型参数。
- 更新粒子的速度和位置:根据粒子自身的历史行为和群体最优行为,更新粒子的速度和位置。
这个过程使用加速度系数和随机数来控制粒子的移动速度和方向,以实现全局搜索。
- 限制粒子的位置和速度:为了保证SVM模型参数的可行解和避免搜索过程出现过度迭代,需要根据问题的约束条件限制粒子的位置和速度。
基于改进PSO算法优化SVR的信息安全风险评估研究作者:任远芳牛坤丁静谢刚来源:《贵州大学学报(自然科学版)》2024年第01期文章编号 1000-5269(2024)01-0103-07 DOI:10.15958/ki.gdxbzrb.2024.01.16收稿日期:2023-05-10基金项目:贵州省省级本科教学内容和课程体系改革资助项目(2022&25);贵州省科技计划资助项目(黔科合支撑[2023]一般371);贵州大学引进人才科研项目(贵大人基合字2022[21])作者简介:任远芳(1987—),女,助理实验师,硕士,研究方向:多媒体教室、教育技术、信息安全,E-mail:****************.*通讯作者:任远芳,E-mail:****************.摘要:为改善信息安全风险评价的精确度,利用改进的粒子群算法,提出了一种新的优化回归型支持向量机的信息安全风险评估方法。
首先,通过模糊理论对信息安全风险因素进行量化预处理;其次,经过预处理后的数据输入到回归型支持向量机模型中;再次,利用改进的粒子群算法来优化和训练回归型支持向量机的参数,得到了优化后的信息安全风险评估模型;最后,通过仿真实验对该模型的性能进行验证。
实验结果表明,提出的方法能很好地量化评估信息系统风险,提高了信息安全风险评估的精确性,是一种有效的评估方法。
关键词:信息安全;风险评估;模糊理论;回归型支持向量机;粒子群算法;参数优化中图分类号:TP309文献标志码:A随着网络化和信息化的日益进步,网络安全事件层出不穷。
2021年1月3日,国外安全团队cyble发现有人出售中国公民信息。
紧接着,1月26日,巴西数据库泄露。
以上安全事件大都是违法分子利用一些系统的漏洞进行入侵和攻击所导致的。
可见,如何保证网络安全是长期以来的重要探讨课题。
近年来,针对网络安全方面,新的法律法规、工作指南陆续发布。
2021年8月,《中华人民共和国个人信息保护法》正式公布。