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

Matlab安装SVM工具箱

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
  L  |$ V2 r& z9 H, \# r1 ~  N
工作环境
3 X8 s) N! i/ u1 `1 Y
  • 软件环境:Windows 7 Ultimate sp1、matlabR2012b 32bit
    + n4 |7 A7 Z  ^% |2 k
; b; V2 R8 n: `# s# d3 w! e; @

" k# q9 ?% @; Q1 GMatlab 官方并没有自带svm工具箱,这就需要我们手动来添加SVM工具箱了,具体步骤如下:/ `. H: s4 X( x- q$ ^# G- G1 o  a+ k, N
9 S" e6 z5 i6 m- U; X2 i7 j; y
Step1:下载SVM工具箱,http://see.xidian.edu.cn/faculty ... dexfiles/indexl.htm
8 u4 _6 @7 r5 o; C) e: n
9 @+ P  C8 F1 L5 c( h( t解压缩到matlab安装目录\toolbox& p* |0 o. E6 `  k1 C- ?
3 B, I  A6 T& Z- a
Step2:安装,打开matlab点击set path---->add folder 然后把你的工具箱文件夹添加进去就可以了. O! G; [( |) ^: e$ A/ J
; T/ ~9 E# d6 N
Step3:路径加进去后在file→Preferences→General的Toolbox Path Caching里点击update Toolbox Path Cache更新一下。; A4 q; Y4 m6 h* p# w, |* @2 O& ^
+ I* P8 g) `, v
Step4:测试,可以测试一下:在matlab中输入which svcoutput 回车,如果可以正确显示路径,就证明添加成功了。
8 g' ~0 c0 m4 }* k; A; u" @) V8 n; T+ r7 S7 {& S! e
编写测试脚本:& X1 Q& M+ c/ w) ]$ R

6 E; Q  t+ a6 v
  •     % 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);
  • ( k( f% c7 j" y: P+ U: f
   
& G- G  R; V  Y
( M1 ^( x1 T8 N" n1 Q8 D8 C& _, j8 u7 H7 D) t
问题:, C7 ?$ A' \7 }; [

& D9 z, \3 b5 c4 G7 j如果报错:Invalid MEX-file 'E:\1_Program_File\MatlabR2012b\toolbox\svm\qp.dll':  T3 M* a3 K  F+ e7 L4 `
E:\1_Program_File\MatlabR2012b\toolbox\svm\qp.dll is not a valid Win32 application.# Z5 @, D/ N: s1 i
经过搜索看到有很多人出现这个问题,貌似是因为matlab版本比较高,解决办法:1、在Matlab的command中输入
' J6 K8 r, w0 x6 ]
& l3 ~+ K, I3 s/ P9 f& E>> cd matlab安装路径\toolbox\svm\Optimiser9 H- e. i0 Q/ @) X2 [
>> mex -v qp.c pr_loqo.c
3 y; d# Q: C- \9 ^/ Q4 E5 `- ]  s2 h  B: R" r
出现选项:
$ c; r$ U! K# L4 M7 S0 D6 [$ ?) R8 A2 z
Select a compiler:
8 M: `) Z' U) V6 Q( b4 X[1] Lcc-win32 C 2.4.1 in E:\1_PROG~1\MATLAB~1\sys\lcc ' e6 N  @' ?, M& P
[0] None
- O6 y5 k/ _+ f. B- P# O/ c# a& i5 t& i9 l
选择1,Optimiser文件夹下看到两个文件:qp.dll.old和qp.mexw32;把qp.mexw32重命名为qp.dll覆盖svm文件夹下的qb.dll即可。
  P! K) T" s4 L% }3 m; y! a
/ w, u& W( {! f. ]8 V+ U1 I! z

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-6 03:23 , Processed in 0.140625 second(s), 26 queries , Gzip On.

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

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

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