matlab中安装libsvm3.21和使用

matlab中安装libsvm3.21和使用

安装和测试环境:win7 64位,matlab2014b,vs2013。

一、生成matlab中使用的文件

  • libsvm官方网站下载安装包
  • 解压该文件,在matlab中包含解压后的文件夹及子文件夹
  • 设置当前工作目录为libsvm-3.21,输入命令mex -setup,之后会让你选择编译器什么的,自己看着选择就好了。
  • 上一步成功后,设置当前工作目录为libsvm-3.21/matlab,输入命令make
  • 之前的步骤都是为了生成在matlab中使用的相应文件:“libsvmread.mexw64”,”libsvmwrite.mexw64”,”svmtrain.mexw64”, “svmpredict.mexw64”。在路径libsvm-3.21/matlab下面可以找到。

二、在matlab使用生成的相应文件

在完成了生成相应文件的步骤后,就可以删除刚才所加到包含路径中的几个文件夹了,只需要保留生成的这四个文件就可以了,为了测试是否可用,把libsvm-3.21文件加下的heart_scale也保留下来。接下来就是将这些添加到matlab中。

  • 把生成的四个文件放在一个文件夹中(如libsvm3.21),把这个文件夹添加到包含路径中。就可以使用了。但是为了和matlab中的svmtrain区分,可以将生成的文件中的svmtrain.mexw64、svmpredict.mexw64名字分别更改为libsvmtrain.mexw64、libsvmpredict.mexw64。
  • 测试:将工作目录更改到测试文件heart_scale所在的文件夹下,在命令行窗口中输入一下命令
[heart_scale_label, heart_scale_inst] = libsvmread('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)

三、注意

其实在64的matlab下,可以省略第一步生成相应文件的步骤,在官网下载的安装包中已经有了一个windows文件夹,里面已经包含了需要生成的相应文件,可以直接后面的步骤。
windows32下需要所有步骤,生成的文件的后缀名是‘.mexw32’。
另外,如果不进行第二个步骤,不删除第一个步骤中的包含路径的话,在最终使用libsvmpredict的时候,结果除了accuracy 会返回更多的参数。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值