matlab中SVM工具箱的使用方法.doc
文本预览下载声明
matlab中SVM工具箱的使用方法
1,下载SVM工具箱:/faculty/chzheng/bishe/indexfiles/indexl.htm
2,安装到matlab文件夹中
1)将下载的SVM工具箱的文件夹放在\matlab71\toolbox\下
2)打开matlab-File-Set Path中添加SVM工具箱的文件夹
现在,就成功的添加成功了.
可以测试一下:在matlab中输入which svcoutput 回车,如果可以正确显示路径,就证明添加成功了,例如:
C:\Program Files\MATLAB71\toolbox\svm\svcoutput.m
3,用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 = [y1,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.418414Margin??? : 3.091912Sum alpha : 0.418414Support Vectors : 3 (3.0%)
nsv =
???? 3
alpha =
??? 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),回车
#Matlab
一、因为要用到SVM,所以想先在matlab下学习一下,简短讲添加工具箱很简单:
1.1:如果是Matlab安装光盘上的工具箱,重新执行安装程序,选中即可。
1.2:如果是单独下载的工具箱,则需要把新的工具箱(以下假设工具箱名字为svm)解压到toolbox目录下,然后用addpath或者pathtool把该工具箱的路径添加到matlab的搜索路径中,
2:最后用which newtoolbox_command.m来检验是否可以访问。如果能够显示新设置的路径,则表明该工具箱可以使用了。
SVM工具箱: addpath(D:\Program Files\MATLAB\R2008a\toolbox\svm) which svcinfo.mD:\Program Files\MATLAB\R2008a\toolbox\svm\svcinfo.m
成功~
PS:还有一些其他方法,可以参考:/smallworker/A31135.html
二、初次使用,采用html中的例子,但是出现了错误信息:D:…………\toolbox\svm\qp.dll 不是有效的 Win32 应用程序,经过搜索看到有很多人出现这个问题,貌似是因为matlab版本比较高。
解决办法:1、command中输入
cd D:\Program Files\MATLAB\R2008a\toolbox\svm\Optimiser mex -v qp.c pr_loqo.c
2、出现:
显示全部