




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、包已经解压到文件夹F:R2009btoolboxsvmmatlab中SVM工具箱的使用方法 1,下载SVM工具箱:/faculty/chzheng/bishe/indexfiles/indexl.htm2,安装到matlab文件夹中 1)将下载的SVM工具箱的文件夹放在matlab71toolbox下 2)打开matlab-File-Set Path中添加SVM工具箱的文件夹 现在,就成功的添加成功了. 可以测试一下:在matlab中输入which svcoutput 回车,如果可以正确显示路径,就证明添加成功了,例如:C:Program File
2、sMATLAB71toolboxsvmsvcoutput.m3,用SVM做分类的使用方法 1)在matlab中输入必要的参数:X,Y,ker,C,p1,p2 我做的测试中取的数据为:N = 50; n=2*N; randn(state,6); x1 = randn(2,N) y1 = ones(1,N); x2 = 5+randn(2,N); y2 = -ones(1,N); figure; plot(x1(1,:),x1(2,:),bx,x2(1,:),x2(2,:),k.); axis(-3 8 -3 8); title(C-SVC) hold on; X1 = x1,x2; Y1 = y
3、1,y2; X=X1; Y=Y1; 其中,X是100*2的矩阵,Y是100*1的矩阵 C=Inf; ker=linear; global p1 p2 p1=3; p2=1; 然后,在matlab中输入:nsv alpha bias = svc(X,Y,ker,C),回车之后,会显示: Support Vector Classification_Constructing .Optimising .Execution time: 1.9 secondsStatus : OPTIMAL_SOLUTION|w0|2 : 0.Margin : 3.Sum alpha : 0.Support Vector
4、s : 3 (3.0%)nsv = 3alpha = 0.0000 0.0000 0.0000 0.0000 0.0000 2)输入预测函数,可以得到与预想的分类结果进行比较. 输入:predictedY = svcoutput(X,Y,X,ker,alpha,bias),回车后得到: predictedY = 1 1 1 1 1 1 1 1 1 3)画图 输入:svcplot(X,Y,ker,alpha,bias),回车补充:X和Y为数据,m*n:m为样本数,n为特征向量数比如:取20组训练数据X,10组有故障,10组无故障的,每个训练数据有13个特征参数,则m=20,n=13Y为20*1的
5、矩阵,其中,10组为1,10组为-1.对于测试数据中,如果取6组测试数据,3组有故障,3组无故障的,则m=6,n=13Y中,m=6,n=1/SVM_soft.htmlSVM - Support Vector Machines Software Train support vector machine classifier/access/helpdesk/help/toolbox/bioinfo/ref/svmtrain.html一些问题?1.今天我在使用SVM通用工具箱对眼电
6、的信号数据进行分类时出现如下错误:Support Vector Classification_Constructing .Optimising .? Dimension error (arg 3 and later).Error in = svc at 60alpha lambda how = qp(H, c, A, b, vlb, vub, x0, neqcstr);不知道是什么原因?答:今天上午终于找到出现这一错误的原因:它并不是SVM程序的问题,是我在整理样本时,把参数需要的样本行列颠倒所致。此处X是样本特征(行向量),Y为对应样本的类别(一行对应X的一行样本)!2.使用第一个steve
7、 gunn s SVM 遇到一个问题。? Invalid MEX-file svmqp.dll: The specified procedure could not be found.? Invalid MEX-file D:Program FilesMATLABR2007atoolboxsvmqp.dll: 找不到指定的程序。Error in = svc at 60alpha lambda how = qp(H, c, A, b, vlb, vub, x0, neqcstr);这个问题是由于版本问题引起的,我使用的是Matlab R2007版。我正在努力找解决方案,看看能否重新编译一下qp.
8、dll。查阅一晚上资料,终于找到如何解决这个简单的问题了。关键是一开始没有仔细看。问题:? Invalid MEX-file D:Program FilesMATLABR2007atoolboxsvmqp.dll:找不到指定的程序。问题描述:mex在不同windows OS下编译的结果,所以我们需要重新编译一下qp.dll方法:steve gunn 的包下面有一个optimiser 文件夹,把current Diretory目录改为optimiser目录,例如D:Program FilesMATLABR2007atoolboxsvmOptimiser,然后运行命令 mex -v qp.c pr
9、_loqo.c命令运行完毕后,你会发现原先的qp.dll变为qp.dll.old,还出现了qp.mexw32,我们把该文件改为qp.dll 复制到工具箱文件夹下。原先的工具箱文件qp.dll可以先改一下名字.(F)这个问题解决了.我运行下面的文件通过(该文件从网所搜索测试,作者没有求证,感谢原作者)。N = 50; n=2*N;randn(state,6); x1 = randn(2,N); y1 = ones(1,N); x2 = 5+randn(2,N);y2 = -ones(1,N);figure;plot(x1(1,:),x1(2,:),bx,x2(1,
10、:),x2(2,:),k.);axis(-3 8 -3 8);title(C-SVC)hold on;X1 = x1,x2;Y1 = y1,y2; X=X1;Y=Y1; C=Inf; ker=linear;global p1 p2 p1=3; p2=1;nsv alpha bias = svc(X,Y,ker,C)注:有的读者通过google或者百度搜索,? Invalid MEX-file 找不到指定的程序,找到这里来了,呵呵。其实该文章是对svm的matlab工具包编写的。解决:?Invalid MEX-file 的一个共性就是,版本问题,您可以尝试更换matlab版本。例如您的mex d
11、ll在6.5版本中编写的,请不要使用7.4版本去调用,matlab就这一点很讨厌人.FrysooSVM 函数详解 支持向量机分类的相关函数1. nsv alpha bias = svc(X,Y,ker,C)X 是训练样本Y 是训练样本的输出,即Labelker 为核函数,支持向量机的工具箱支持如下几种核函数:linear poly rbf sigmoid spline bspline fourier erfb anova其中,除了linear和spline两个核函数之外,其他的核函数还需要设定一些参数。例如核函数poly的阶数、径向基函数rbf的宽度等。这些参数的设置在工具箱中的全局变量p1,
12、p2中设置。Values for ker: linear - poly - p1 is degree of polynomial rbf - p1 is width of rbfs (sigma) sigmoid - p1 is scale, p2 is offset spline - bspline - p1 is degree of bspline fourier - p1 is degree erfb - p1 is width of rbfs (sigma) anova - p1 is max order of termsnsv 是svc函数返回的训练样本中支持向量的个数alpha 是
13、svc函数返回的每个训练样本对应的拉格朗日乘子,拉格朗日乘子不为零的向量即为支持向量bias 是偏置量2. predictedY = svcoutput(trnX,trnY,tstX,ker,alpha,bias,actfunc)trnX 训练数据trnY 训练数据类别tstX 测试数据ker 核函数alpha 拉格朗日乘子 Lagrange Multipliersbias 偏置量actfunc 激励函数: 0(默认值) hard; 1 soft 平滑该函数根据训练样本得到的最优分类面计算实际样本的输出。利用它还可以得到测试样本的分类情况,对最优分类面进行测试。3. h = svcplot(X
14、,Y,ker,alpha,bias,aspect,mag,xaxis,yaxis,input)支持向量机分类绘图函数svcplot,用于绘制最优分类面,并标识出支持向量X 训练数据Y 训练数据类别ker 核函数alpha 拉格朗日乘子bias 偏置量aspect 图像纵横比: 0(默认) fixed; 1 variablemag 缩放率 0.1默认xaxis 1(默认)yaxis 2(默认)input vector of input values (default: zeros(no_of_inputs)4. err = svcerror(trnX,trnY,tstX,tstY,ker,alp
15、ha,bias)统计测试样本分类错误数量的函数,用于统计利用已知的最优分类面对测试样本进行分类,发生错误分类的数目trnX 训练数据trnY 训练目标类别tstX 预测数据tstY 预测目标类别ker 核函数alpha 拉格朗日乘子bias 偏置量5. uiclass简易图形用户界面函数。1 load fisheriris2 data = meas(:,1), meas(:,2);3 groups = ismember(species,setosa);4 train, test = crossvalind(holdOut,groups);5 cp = classperf(groups);6 svmStruct = svmtrain(data(train,:),groups(train),showplot,true);7 classes = svmclassify(svmStruct,data(test,:),showplot,true);8 classperf(cp,classes,test);9 cp.CorrectRategroups = cellstr(num2str(groups)第一行是读入matlab数据集第二行是仅分析2列,对根据这2列的数据进行分类第三行是生成组号.原有的组名是seto
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年快餐餐饮面试题及答案
- 2025年大专面试软件测试题及答案
- 2025年媒体专业面试题及答案
- 2025年亲子和谐测试试题及答案
- 2025年化学与生活测试题及答案
- 2025年管护知识考试试题及答案
- 2025年三国文学常识试题及答案
- 设备维护保养规定
- 2025年学科规划面试题及答案
- 鞍山职业建筑装饰练习试题
- 中职学校主题班会教育课件
- 互联网接入服务提供商服务承诺
- 五年高考真题(2020-2024)分类汇编 政治 专题27遵循逻辑思维规则 含解析
- 抖音电商达人招募合同范本
- 城市绿化景观设施安装与维护合同
- 解除冻结及撤销纳入失信和限高令申请书(文本)
- 2024年河北省公务员录用考试《行测》真题及答案解析
- 在线问卷系统的设计与实现
- 英语语法-形容词和副词-复习资料
- 数字校园网络设施调查 课件 2024-2025学年冀教版(2024)初中信息科技七年级上册
- 美食街道策划方案
评论
0/150
提交评论