一开始见到Chenjielin教授的这个软件没怎么细究,不知怎么用,就放着研究别的方法了,回头找了点网上的资料,研究了一下终于明白怎么用了。网上资料很详细,只是自己有些地方没有注意,所以一直没有结果,现总结如下:(希望会有帮助)
1.首先从主页上下载libsvm、Python2.5.2和gnuplot 三个软件。
2.准备好数据,首先要把数据转换成Libsvm软件包要求的数据格式为:
label index1:value1 index2:value2 ...
其中对于分类来说label为类标识,指定数据的种类;对于回归来说label为目标值。(我主要要用到回归)
Index是从1开始的自然数,value是每一维的特征值。
该过程可以自己使用excel或者编写程序来完成,也可以使用网络上的FormatDataLibsvm.xls来完成。
FormatDataLibsvm.xls使用说明:
先将数据按照下列格式存放(注意label放最后面):
value1 value2 ?? label
value1 value2 ?? label
??
然后将以上数据粘贴到FormatDataLibsvm.xls中的最左上角单元格,接着工具->宏执行行FormatDataToLibsvm宏。就可以得到libsvm要求的数据格式。将该数据存放到文本文件中进行下一步的处理。
3.对数据进行归一化。
该过程要用到libsvm软件包中的svm-scale.exe
Svm-scale用法:
用法:svmscale [-l lower] [-u upper] [-y y_low