资源描述:
《SVM的工具箱简介》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、SVM的工具箱简介现在通用的SVM的工具箱有两种,一种叫做SVM通用工具箱,另一种工具箱叫做SVMOSU_3.00工具箱。那么这两种工具箱有什么区别了?其实它们在界面上没有什么区别,也就是说你在使用SVM通用工具箱和SVMOSU_3.00工具箱时,都是要在Matalab软件的界面下进行使用,但是当你使用第一种工具箱时,你会发现它的计算速度非常的慢以至于有时算一些复杂的数据你需要老半天,相反的是当你在使用第二种工具箱,你会发现,速度还是非常的快的,那么究竟是为什么呢?其实应该发现的是第一种工具箱只有150KB,而第二种工具箱却有850KB,
2、这就是原因,因为第二种工具箱外挂了一个C程序的编译器,也就是说同样的数据用第一种工具箱就是在Matalab语言下进行计算,而用第二种时,它会自动把Matalab程序编译成C程序,然后在C程序下进行计算,这显而易见提高了速度,所以第二种工具箱更为快捷。那么究竟怎样使用工具箱呢?请看本网站的 在线演示。(注意:本网站使用在线演示的是第一种工具箱的使用而且只演示了分类SVM的算法,其实第一种和第二种工具箱在使用方法上没有什么区别,无非都是编写简单的Matalab程序直接调用工具箱已有的函数即可。)matlab中SVM工具箱的使用方法(2009-
3、09-2416:49:16)标签:matlab svm 杂谈 1,下载SVM工具箱:http://see.xidian.edu.cn/faculty/chzheng/bishe/indexfiles/indexl.htm2,安装到matlab文件夹中 将下载的SVM工具箱的文件夹放在matlab7.0.1toolbox下 方法 1)在命令窗口 addpath('F:matlab7.0.1toolboxsvm') whichsvc即可正确显示路径。但这种方法下次运行matlab时有需重新添加。 方法2)打开matlab->F
4、ile->SetPath中添加SVM工具箱的文件夹 现在,就成功的添加成功了. 可以测试一下:在matlab中输入whichsvcoutput回车,如果可以正确显示路径,就证明添加成功了,例如: C:ProgramFilesMATLAB71toolboxsvmsvcoutput.m3,用SVM做分类的使用方法 1)在matlab中输入必要的参数:X,Y,ker,C,p1,p2 我做的测试中取的数据为: N=50; n=2*N; randn('state',6); x1=randn(2,N) y1=one
5、s(1,N); x2=5+randn(2,N); y2=-ones(1,N); figure; plot(x1(1,:),x1(2,:),'bx',x2(1,:),x2(2,:),'k.'); axis([-38-38]); title('C-SVC') holdon; X1=[x1,x2]; Y1=[y1,y2]; X=X1';Y=Y1'; 其中,X是100*2的矩阵,Y是100*1的矩阵 C=Inf; ker='linear'; globalp1p2 p1=3; p2=1;
6、 然后,在matlab中输入:[nsvalphabias]=svc(X,Y,ker,C),回车之后,会显示: SupportVectorClassification_____________________________Constructing...Optimising...Executiontime: 1.9secondsStatus:OPTIMAL_SOLUTION
7、w0
8、^2 :0.418414Margin :3.091912Sumalpha:0.418414SupportVectors:3(3.0%)nsv=
9、 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为特征向量
10、数比如:取20组训练数据X,10组有故障,10组无故障的,每个训练数据有13个特征参数,则m=20,n=13Y为20*1的矩阵,其中,10组为1,10组为-1.对于测试数据中,如果取6组测试数