找回密码
 注册
关于网站域名变更的通知
查看: 536|回复: 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;" h* b5 D3 {6 v! ^" H& J! u& {
    randn('state',6);
2 K( a4 o5 D! r4 C9 S3 X) x& |    x1 = randn(2,N)
# Q6 ~3 ~, D" a/ B    y1 = ones(1,N);, y0 N- i, T8 T; K) z8 w! p
    x2 = 5+randn(2,N);1 Q. R% P+ W; I, e" L' J0 Z
    y2 = -ones(1,N);

    figure;& D8 A* u# g+ c  J
    plot(x1(1,: ),x1(2,: ),'bx',x2(1,: ),x2(2,: ),'k.');
$ T. T2 N# ~% \$ l6 }( k2 F6 M0 j    axis([-3 8 -3 8]);  S4 f! C( D9 }1 ]% K
    title('C-SVC')4 C8 N2 C- Q: i  j9 M
    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),回车之后,会显示:


( j  w+ Y; ?8 p$ X, [6 T

Support Vector Classification: o# Y: L6 x4 A" R- d9 ]9 L
_____________________________+ U$ {' b3 d! h5 A# [- _
Constructing ...
3 F+ b% B' @/ Z2 s5 C8 SOptimising ...; J7 S5 S1 K; {- F+ D$ U
Execution time:  1.9 seconds
2 A& c+ F7 R) O3 ~Status : OPTIMAL_SOLUTION
, d0 }9 o' C% S  \" ~|w0|^2    : 0.418414* M& R( R0 J2 F; V5 I
Margin    : 3.091912
' i8 |; K6 p3 ~; OSum alpha : 0.4184144 G2 f3 g; i$ m' I: q+ `
Support Vectors : 3 (3.0%)

nsv =

     3


7 x9 d6 K; Y8 E' galpha =

    0.0000
( {6 S- r& ?) O9 N    0.00006 k; A* ^. k* f' `1 v$ M0 T
    0.0000! R0 _, o4 \$ z, s3 K
    0.00003 J* x; e) r6 E. M8 F% a
    0.0000

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

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

) P1 N/ _) a4 r$ R4 r1 M- G

predictedY =

     1
! I$ g3 f8 T& w8 Q* Y& s     1
4 v; w1 s' K; H6 A     1! [$ z5 x, J' m: {6 ]
     1
4 V* p# V' a6 e& g     16 P1 Y8 ]& c- c# U. N  g1 `; w
     19 X" Q3 }& y: `8 E3 C* _, \" Y
     1
& ^7 x3 b5 R/ X$ F" S     1( G( g: x+ [1 V) ^0 f7 ~6 a
     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

, ?" g! z! d) j+ u/ n: ^% E5 C

  a4 m4 P: f0 p* N1 u! C3 H/ M5 V* i6 g* X- I2 I  L- i; ]/ M

3 `! p( z! k8 v7 j5 Z) ^, e
5 X; [  C$ L0 N& H7 K6 v) O6 M4 g, M
9 ?+ m; ~6 G: u
3 f. b2 m8 Y, y: R% {0 f" r' I* w" |% B0 F5 s

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

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

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

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

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