找回密码
 注册
关于网站域名变更的通知
查看: 494|回复: 1
打印 上一主题 下一主题

了解一下Matlab中的SVM工具箱的使用方法吧

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-7-2 15:36 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

1,下载SVM工具箱:http://see.xidian.edu.cn/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;
% D" k% o3 V9 \* @! l9 o    randn('state',6);; Q9 M( T" v* J2 _- W' B) S" I
    x1 = randn(2,N)
. X" g. \* f1 |, p# f" v! n9 B    y1 = ones(1,N);
+ I) a0 ~  t+ f    x2 = 5+randn(2,N);5 K" s4 K8 [1 S0 M
    y2 = -ones(1,N);

    figure;
  `1 p# D5 o- b5 J    plot(x1(1,: ),x1(2,: ),'bx',x2(1,: ),x2(2,: ),'k.');5 w+ \; N8 F5 V# m
    axis([-3 8 -3 8]);; g* ~" ]& G3 _6 Z: }  c$ M
    title('C-SVC')
6 F4 ^+ E7 _( v  D; p    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),回车之后,会显示:


2 j- c  I  g4 a5 d4 j

Support Vector Classification" r* E. x. `7 g9 k. c6 i6 V; g  x6 W2 O
_____________________________# x, J8 l( z1 o- z! \# v9 E6 Y1 L
Constructing ...
5 C) q* j% G# i: U# F) ^  W- n. VOptimising ...
' v: X" }: `  k, o: [/ {5 |  KExecution time:  1.9 seconds# g3 q) N: N% n, y" U
Status : OPTIMAL_SOLUTION
  y$ ?& \, V6 k1 x7 k) ~|w0|^2    : 0.418414
/ B8 u1 @) M( X$ sMargin    : 3.091912
. ~7 T# _% g( Q1 S1 Y) F2 ~8 z8 HSum alpha : 0.418414
* O4 r$ B1 N( ]Support Vectors : 3 (3.0%)

nsv =

     3

. b  |; t4 Y/ k% \
alpha =

    0.0000
, y1 c; o# T: ]2 ]/ v' o    0.00002 F) h& a: E; a
    0.0000; W8 g) y! o7 r$ z" x  m
    0.0000* }0 F% L) z) E( D
    0.0000

    2)输入预测函数,可以得到与预想的分类结果进行比较.

      输入:predictedY = svcoutput(X,Y,X,ker,alpha,bias),回车后得到:

7 L8 U7 t. @; V7 E

predictedY =

     1
* b; d* F5 d+ p! `. W" e) x     1
$ O8 D/ V( ]" P     1
6 ?6 d7 C  X, L     1$ _0 ?/ [: Y* L/ w
     11 z2 u0 I, M& |$ B+ b4 |1 ~
     11 |, @) f; y. Z6 \
     1: q5 @" I* f7 u5 b
     1
" E( t) a9 {7 ?, }2 {5 G$ i     1

    3)画图

      输入:svcplot(X,Y,ker,alpha,bias),回车

补充:

X和Y为数据,m*n:m为样本数,n为特征向量数

比如:取20组训练数据X,10组有故障,10组无故障的,每个训练数据有13个特征参数,则m=20,n=13

Y为20*1的矩阵,其中,10组为1,10组为-1.

对于测试数据中,如果取6组测试数据,3组有故障,3组无故障的,则m=6,n=13

Y中,m=6,n=1

1 C% G) [/ f: {
4 j! M3 M0 o& h
3 V; O2 ^# @! A6 C( D

7 |/ E" X3 u; Q( F- u. V$ M  i& O2 ]. d6 P( i+ q

! t) x: y4 [$ O  F, L6 T; M. _9 S7 M: M% P: d
) n9 b" F% O7 o. R- _; l& v8 ^0 g

该用户从未签到

2#
发表于 2020-7-2 16:22 | 只看该作者
Matlab中的SVM工具箱的使用方法
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-24 11:32 , Processed in 0.125000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表