2016/05/05

Windows 7 + LIBSVM + Python 安装及使用说明

安装

  • 安装 Python,安装过程可Google教程,不在此详述;
  • 下载 libsvm,下载libsvm中的 .zip file 文件,解压到 C:\ 下
  • 安装 gnuplot ,下载地址:gnuplot,建议下载 4.6_win32 版本,直接安装即可。

配置

到 C:\libsvm-3.21\tools 下找到 grid.py 和 easy.py ,并复制到 C:\libsvm-3.21\windows ,打开并分别在第27行和第25行更改两者:

gnuplot_exe = r"C:\Program Files (x86)\gnuplot\bin\pgnuplot.exe"

到 数据集 下找 LIBSVM data sets , 这次使用ala这个数据集,a1a为train set,a1a.t为 testing set

程序说明

  • svm-train.exe :可以将 training data 训练为 model。
  • svm-scale.exe :用来调整 feature 的大小范围,以免有某一项 feature 值太大,在算距离时主导了结果。通常将取值的范围定在 [0,1] 或 [-1,1] 。注意:training data 与 testing data 都必须作相同程度的 scale 。
  • svm-predict.exe :预测 testing data 在已训练 model 的状况。
  • svm-toy.exe :可以图形界面操作数据和修改参数,执行后产生分类结果。
  • grid.py :分类要切的好,参数就要下的好。林智仁老师写好的工具帮我们自动测试参数,不用自己动手测试。
  • easy.py :简化命令行下指令的操作。

使用说明

  • cd 到 libsvm-3.21\windows 目录下,执行命令:
svm-scale.exe -s scale a1a > a1a.scale

会出现警告,不用管,继续往下…

svm-scale.exe -r scale a1a.t > a1a.t.scale

会出现警告,不用管,继续往下…

python grid.py a1a.scale

......
......

8.0 0.0078125 83.4891
svm-train.exe -c 8.0 -g 0.0078125 a1a.scale


optimization finished, #iter = 2430
nu = 0.338842
obj = -3667.375758, rho = 0.654220
nSV = 659, nBSV = 443
Total nSV = 659
svm-predict.exe a1a.t.scale a1a.scale.model a1a.t.out


Accuracy = 83.9869% (25999/30956) (classification)

参考文档

没有评论:

发表评论