matlab安装lvbsvm教程

最近在做一个图片分类项目,想用lvbsvm跑一下,结果安装lvbsvm遇到了个坑,特来总结一下。

下载lvbsvm

https://www.csie.ntu.edu.tw/~cjlin/libsvm/oldfiles/

一般是下载最新版本

将下载的lvbsvm解压在matlab的toolbox下,如C:\Program Files\MATLAB\R2017a\toolbox

打开matlab,将libsvm-3.23\matlab 添加到路径,比如将:\MATLAB\R2017a\toolbox\libsvm-3.23\matlab 添加到路径。

在命令窗口输入 mex setup

如果提示没有编辑器,就去安装MinGW64 Compiler

http://tdm-gcc.tdragon.net/download

默认安装

安装完之后,

打开Matlab中,进入LIBSVM根目录下的matlab目录(如\MATLAB\R2017a\toolbox\libsvm-3.23),在命令窗口的输入mex -setup 输出为:

MEX 配置为使用 'Microsoft Windows SDK 7.1 (C)' 以进行 C 语言编译。
Warning: The MATLAB C and Fortran API has changed to support MATLAB
     variables with more than 2^32-1 elements. In the near future
     you will be required to update your code to utilize the
     new API. You can find more information about this at:

http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html.
要选择不同的语言,请从以下选项中选择一种命令:
 mex -setup C++ 
 mex -setup FORTRAN

然后在命令窗口输入make,如果报错就将make.m里面的CFLAGS 改成COMPFLAGS

再次输入make,就会出现

使用 'Microsoft Windows SDK 7.1 (C)' 编译。
MEX 已成功完成。
使用 'Microsoft Windows SDK 7.1 (C)' 编译。
MEX 已成功完成。

测试

[heart_scale_label, heart_scale_inst] = libsvmread('C:\Program Files\MATLAB\R2017a\toolbox\libsvm-3.23\heart_scale');
model = libsvmtrain(heart_scale_label, heart_scale_inst, '-c 1 -g 0.07');
[predict_label, accuracy, dec_values] = libsvmpredict(heart_scale_label, heart_scale_inst, model);

 

命令窗口出现:

optimization finished, #iter = 134
nu = 0.433785
obj = -101.855060, rho = 0.426412
nSV = 130, nBSV = 107
Total nSV = 130
Accuracy = 86.6667% (234/270) (classification)

说明安装成功。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值