libsvm的使用流程

用libsvm来做应用,需要依次运行svmscale.exe,svmtrain.exe,svmpredict.exe等命令,其实更简单的方法是使用easy.py,而且方便从matlab中用dos或system命令调用。如果你需要对很多数据集做多次试验然后取平均值的话,这是很有用的,可以节省你大量的精力。
1、需要安装windows版本的python和绘图软件gnuplot.exe,python到网上搜一下就可以找到,gnuplot.exe在本贴附件gp373w32目录下。

2、下载台湾人的libsvm工具包。

3、修改easy.py和grid.py最上方两行有关libsvm、python和gnuplot的路径的代码。其中,svmpath 代表 svmscale.exe、svmtrain.exe 等可执行文件的路径,pythonpath 代表easy.py和grid.py等脚本文件路径,gnuplotpath 代表 pgnuplot.exe 的路径。

注意:

a. 脚本文件里似乎不能用“./”和"../"等相对路径。
b. 路径最后面不要带反斜杠"/",即
svmpath = "g:/Specialty/Tools/Libsvm-2.6"
不能写成
svmpath = "g:/Specialty/Tools/Libsvm-2.6/"。
c. 不要更改脚本文件的格式,比如缩进。

4、grid.py默认采用5倍交叉验证,对c采用的搜索范围和步长分别为[-10, 15]和 1,g的为[10, -15]和-1,请根据需要自行修改grid.py。

5、关于libsvm的数据格式:
a. FormatSplitBat.m是一个批量将以Tab或者空格分隔的数据转换为libsvm格式,并且分成占全部数据比例为p的训练集和1-p的测试集,然后调用easy.py的例子。
b. 手工转换数据格式,可以通过excel文件FormatDataLibsvm.xls打开包含数据的文本文件,然后用宏将数据转换为libsvm格式。也可以用宏将libsvm格式的数据转换回来。 

你可能感兴趣的:(windows,python,脚本,Excel,matlab,System)