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

Matlab安装SVM工具箱

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
4 f9 W: B, U5 W' m; H8 m) k
工作环境
1 }+ ]; s5 o  T
  • 软件环境:Windows 7 Ultimate sp1、matlabR2012b 32bit& y8 w2 _/ k9 @- C/ Q% u

& p1 q" t- v. z+ a$ N9 k, w( K& s/ w7 ?
Matlab 官方并没有自带svm工具箱,这就需要我们手动来添加SVM工具箱了,具体步骤如下:
* B* Z( O" q% y/ p2 l  {  \$ r. o' L4 I# t! A) N& }8 \
Step1:下载SVM工具箱,http://see.xidian.edu.cn/faculty ... dexfiles/indexl.htm
+ g5 K- a% R: {& R7 ~, A3 d+ o: Z/ R8 V- z) R
解压缩到matlab安装目录\toolbox
$ U4 }( e# T( z
$ i3 d+ x: _8 F0 WStep2:安装,打开matlab点击set path---->add folder 然后把你的工具箱文件夹添加进去就可以了; C' K% e9 }: ~# h! G2 d

" @- N" y) e& T  ]4 AStep3:路径加进去后在file→Preferences→General的Toolbox Path Caching里点击update Toolbox Path Cache更新一下。3 }$ M/ K1 e+ Z" a

' o. E6 M3 V3 uStep4:测试,可以测试一下:在matlab中输入which svcoutput 回车,如果可以正确显示路径,就证明添加成功了。
$ [6 \$ k) N2 L! m( K1 Y7 d6 B6 t
编写测试脚本:
, l' i! J$ o6 h; i: y( N+ q( k. y
1 S- |- f# E$ Y# u5 o5 ?
  •     % SVM工具箱测试代码,Create by pang
  •     clc
  •     clear all
  •     close all
  •     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;
  •     [nsv alpha bias] = svc(X,Y,ker,C);
  •     predictedY = svcoutput(X,Y,X,ker,alpha,bias);
  •     svcplot(X,Y,ker,alpha,bias);
  • ; C' P2 ~7 S: _
   
0 K, x  Z# i( h5 y, ]! {
: P# n9 i& l5 \0 A4 l' \! b4 l( j9 a
7 L; _* s  R; X2 O! e. S问题:
  }' Z1 q/ f* p) G$ K! }$ l9 }2 @3 K8 `$ t# C
如果报错:Invalid MEX-file 'E:\1_Program_File\MatlabR2012b\toolbox\svm\qp.dll':
! C, f/ ]' w  x  V( t5 N8 AE:\1_Program_File\MatlabR2012b\toolbox\svm\qp.dll is not a valid Win32 application.- I3 n& G9 {+ `" F% h
经过搜索看到有很多人出现这个问题,貌似是因为matlab版本比较高,解决办法:1、在Matlab的command中输入) H  ~! `& Y" o( F2 `1 W2 W

" `4 f) ]  H! ~2 P: ?>> cd matlab安装路径\toolbox\svm\Optimiser
& Y! T# |9 ]+ H9 q& ~>> mex -v qp.c pr_loqo.c
; @  t+ D- b7 F/ Y
9 x8 J9 |( q7 p" M出现选项:
+ o9 Y3 l9 {2 v( f5 J0 w' P/ K! ]# ^! O% l( r/ w3 k
Select a compiler:
8 H) x% [3 p- B7 P- K4 n( o[1] Lcc-win32 C 2.4.1 in E:\1_PROG~1\MATLAB~1\sys\lcc
# M, J9 Z5 J6 v; a( S7 W5 @[0] None
( Q& f5 ^$ \; s3 G1 I  \( b+ o) k8 S( z
选择1,Optimiser文件夹下看到两个文件:qp.dll.old和qp.mexw32;把qp.mexw32重命名为qp.dll覆盖svm文件夹下的qb.dll即可。6 y* X, S* h1 B) t( c- Q/ Y

3 W+ k# _1 r( @+ G

该用户从未签到

2#
发表于 2020-3-9 17:33 | 只看该作者
Matlab安装SVM工具箱
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-12 15:10 , Processed in 0.109375 second(s), 26 queries , Gzip On.

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

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

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