找回密码
 注册
关于网站域名变更的通知
查看: 489|回复: 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;2 w- h  D% S* j
    randn('state',6);
( J4 c' u0 L7 n% ^6 T4 \4 l    x1 = randn(2,N)
7 z  z$ }. [5 p' E5 |1 I: G! B    y1 = ones(1,N);
. z/ W. V8 n5 l    x2 = 5+randn(2,N);' L  ]2 h( ]' @1 Y
    y2 = -ones(1,N);

    figure;
  Y+ v+ C. s$ @+ N* F, T# m* q3 W' W2 F    plot(x1(1,: ),x1(2,: ),'bx',x2(1,: ),x2(2,: ),'k.');
5 a# W- }* v6 M" M; p& N' b6 R0 V3 ]    axis([-3 8 -3 8]);
" z& I4 V' X$ G) G    title('C-SVC')3 j  A* {1 n6 Y9 T  E
    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),回车之后,会显示:


9 ^' i% l0 o. F! B9 @1 J$ x

Support Vector Classification
2 j+ y! C0 W$ C' R4 a_____________________________
1 J' O7 g9 N1 B. r$ m, Q$ UConstructing ...
0 j' |8 h. S  o! C% T3 n% pOptimising ...5 I, s7 M* G9 k& p; a  a1 B
Execution time:  1.9 seconds
1 s5 P. P% p7 O, u- Q8 d. E. ]2 T  JStatus : OPTIMAL_SOLUTION* B/ D* f0 `* ]# L, p; i
|w0|^2    : 0.418414! ]8 t# v! K! ~& Y4 t" a; M
Margin    : 3.091912
; }! ^& `4 q1 R! N9 m, [9 A4 KSum alpha : 0.4184141 y$ W& Z- ~: e+ K5 n" I% W
Support Vectors : 3 (3.0%)

nsv =

     3

+ M% u3 L" n, X, D2 y4 Y
alpha =

    0.0000! E7 o3 b, G9 Y" e5 \3 G: K
    0.0000* f0 f5 A+ b# _/ i9 L) e
    0.0000
3 f: u3 O4 t( R- ^; A9 o    0.0000
* p1 R3 x" h& s, l6 B    0.0000

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

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


/ S% r9 w! T" Z! q

predictedY =

     1$ ^( m8 Y  Z9 |# t# y
     1
" k; i# R! s2 i" o, ]$ @( ]     1. U7 ^7 E/ T3 y8 c& m  c8 X
     1
6 w2 Z8 E" P6 S     1, a) E, O/ P9 o; l4 E
     1
  r" B5 i$ l& U* y     1
" e( [4 l) Q) \$ ?& Q1 g- G     1
. w! C/ ?' T' g, G# M     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


+ h# T3 K( r# D4 a* d
0 f) _- v8 Y1 Y- H* \$ a! a6 w# v/ Q
. U1 o; q- }4 j# m/ r6 m) M6 ]

: \( V$ ?. t$ @2 V; {- g! o: _" c' z6 W( i

8 u4 a1 f) {- G1 |8 m3 H
* n( j9 C* ^1 E0 A

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-24 05:41 , Processed in 0.109375 second(s), 27 queries , Gzip On.

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

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

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