Libsvm工具箱的使用
来源:互联网 发布:plc编程实例详解 编辑:程序博客网 时间:2024/05/06 22:59
不同版本的使用过程并不是一样的,所以一定好好读读官方的README!!!
libsvm-3.21
1.设置路径
File->set path ->add with subfolders->加入libsvm-3.21文件夹的路径
2.选择编译器,在matlab下编译文件- mex -setup
- 选择对应的编译器
- make
3.下载数据集并测试
- load heart_scale;
Libsvm有两个数据集,一个是C++的, 一个是matlab的。libsvm库中下载的是C++数据,
所以matlab直接加载我们下载的heart_scale是会报错的
解决方法一:
使用给的一个函数,转化数据。此函数为libsvmread();
使用如下: [label_vector, instance_matrix] =libsvmread('filename');
在这里可以写成[heart_scale_label,heart_scale_inst] =libsvmread('heart_scale');
注意:由于heart_scale在libsvm-3.21目录下,不是在matlab下,所以直接用libsvmread命令会报错,要买改变当前路径,或者使用[heart_scale_label,heart_scale_inst] =libsvmread('../heart_scale');../代表返回上层路径。
解决方法二:
下载旧版本的数据集http://download.csdn.net/detail/abcjennifer/4215779
将这点搞清楚了,下面就很简单了,具体代码如下:
1.[heart_scale_label,heart_scale_inst] =libsvmread('../heart_scale');
2. model = svmtrain(heart_scale_label,heart_scale_inst);
3. [predict_label,accuracy,decision_values] = svmpredict(heart_scale_label,heart_scale_inst,model,1);
2. model = svmtrain(heart_scale_label,heart_scale_inst);
3. [predict_label,accuracy,decision_values] = svmpredict(heart_scale_label,heart_scale_inst,model,1);
测试结果:
Accuracy = 86.6667% (234/270) (classification)
注意事项:
1.设置的路径是libsvm-3.21文件夹所在的路径,为../libsvm-3.21:当前工作路径是程序运行的路径,为../libsvm-3.21/matlab
2.有人在测试时使用[predict_label,accuracy] = svmpredict(heart_scale_label,heart_scale_inst,model); 得不到结果,其实 [predicted_label, accuracy, decision_values/prob_estimates] = svmpredict(testing_label_vector, testing_instance_matrix, model, 'libsvm_options') 这个函数有三个输出。改成[predict_label,accuracy,decision_values] = svmpredict(heart_scale_label,heart_scale_inst,model,1)试试
0 0
- Libsvm工具箱的使用
- LIBSVM工具箱的安装与使用
- LibSVM学习1:Libsvm工具箱的下载、安装和使用
- libsvm工具箱使用出现的各种错误的解决方法
- Libsvm工具箱在matlab中使用的编译过程
- Libsvm(liblinear)工具箱的下载,安装及使用
- MATLAB R2013a下libsvm工具箱的安装
- 关于matlab安装LIBSVM工具箱的问题
- Matlab R2017a中libsvm工具箱的安装
- MATLAB实现多分类和libsvm工具箱的安装使用详解
- 如何在Visual Studio(VS)里使用libsvm工具箱
- 使用libsvm工具箱,README文档要仔细阅读
- matlab 使用libsvm工具箱进行手写数字识别
- LibSVM 工具箱...不可分肿么办!
- matlab 安装libsvm工具箱
- libsvm工具箱在64位matlab下的安装说明
- libsvm的使用流程
- Libsvm的具体使用
- 树莓派安装samba服务器
- [Java学习] Expression Add Operators 添加运算符
- 小米智能家庭套装ZigBee
- 离线在Eclipse上安装ADT
- 修改局域网代理IP方法
- Libsvm工具箱的使用
- python 多线程
- JavaScript常用的String方法
- Android判断是否有网络连接,如果没有开启移动网络
- Android 获取控件宽高的3种方法
- C++ 类的聚集和浅拷贝与深拷贝
- /etc/fstab文件内容
- UILabel属性
- 解决循环操作ObjectInputStream的readObject()方法的EOF异常