libsvm3.22——在matlab(32位和64位)中的安装

来源:互联网 发布:能赚集分宝的软件 编辑:程序博客网 时间:2024/05/16 06:55

一、libsvm官方网址:

http://www.csie.ntu.edu.tw/~cjlin/libsvm/

使用入门阅读文档:《A practical guide to SVM classification》 

下载地址:http://download.csdn.net/detail/ckzhb/9840092

 

二、

matlab中安装说明:在matlab2016a(64位)下成功安装libsvm-3.22。

64位matlab不需要如此麻烦的编译过程,直接将libsvm-3.22中windows文件夹添加到工作目录即可。

参考:http://blog.csdn.net/buaasuozi/article/details/50781615/

更新:若想要使用官方版本的libsvm中的参数优化工具grid.py等,不要将libsvm的安装路径整得很复杂!!

安装过程概括如下:

详细安装教程:http://www.matlabsky.com/thread-11925-1-1.html

1、下载libsvm-3.22。

将解压后的文件可以保存在任意地方,最好放在matlab安装文件下的toolbox中。

2、添加libsvm-3.22所在位置到matlab的工作搜索路径。(不同于当前目录)

命令行中键入:pathtool,然后添加libsvm-3.22所在位置即可。

3、选择编译器

mex –setup

4、编译命令行中输入make。

5、用自带数据测试是否可以使用。


三、用heart_scale数据集测试出现的问题

1、load heart_scale;                          %matlab提示出错。

方法一:将数据转换为其他格式比如.mat、.txt等。

方法二:用libsvmread(‘heart_scale’),需将当前目录设置为数据所在目录。

2、

model = svmtrain(heart_scale_label,heart_scale_inst);  

 [predict_label,accuracy] = svmpredict(heart_scale_label,heart_scale_inst,model);  

输入上面两句命令后,得到的accuracy为空。

解决办法:

安装版本为libsvm3.22,其中svmpredict的返回参数的形式有变化。将其改为

[predict_label,accuracy,decision_value] = svmpredict(heart_scale_label,heart_scale_inst,model);  








0 0
原创粉丝点击