SVMlight工具包使用说明(windows)

SVMlight是实现半监督SVM的一个工具包,去官网可以下载文件svm_light.tar.gz,并且官网也有使用说明。

如何调出命令窗口

解压文件之后,在svm_train.exe和svm_classify.exe所在的文件夹中,按住shift+右键,选择“在此处打开命令窗口”(就是日常Win+R调出来的cmd),这时候就可以使用工具包了。

需要了解参数的意义的话,直接在cmd窗口输入svm_train.exe和svm_classify.exe调出参数说明,就可以看到模型设置中各项参数的意义。如果还是不够清楚,点击这里有一篇博文解释不错。

如何使用svm_train.exe和svm_classify.exe

这里解释如何使用下载的svmlight工具包自带example的数据。

在命令窗口输入:

svm_learn.exe -z c example1/train.dat a.txt

开始用example下的train.dat作为输入训练,训练结果为一个分类器,结果保存在a.txt里。

注:
1)这里“-z c”就是设定好这是一个分类问题,当然也可以缺省,因为默认的-z取值就是c;
2)在同“-z c”的位置,额外我可以写“-w 0.2”来修改模型的松弛参数(具体请理解SVM算法原理在来问什么是松弛参数),缺省时取值为0.1。更多参数设定请参考参数说明;
3)这里“example1/train.dat”可以修改成自己的“.dat”文件的目录;
4)这里“a.txt”即输出文件名字,可以任意指定。

在命令窗口继续输入:

vm_classify.exe example1/test.dat a.txt b.txt

用example1下的test.dat训练,用刚才训练的模型,结果输出在b.txt里。

例子的数据文件

给的例子是一个分类问题,从第二行开始是数据,第一个数是样本的label,为1或者-1之后是特征值对,格式为“特征:值”。

特征可以用数字表示,也可以用带引号的字符串,每个特征值对用空格分开。

模型的输出文件

第一行忽略,紧接着几行是参数,也就是我们在调用train.exe时设定的模型参数,可以选择核的种类等等;
接着是训练模型的一些信息,每行#后边是对这行的解释;
最后输出的是每行一个支持向量。

扩展包和接口

windows下exe调用工具包的,数据不好处理。官网最下面可以下载到扩展包,我用的matlab,matlab的接口与使用点击这里。

你可能感兴趣的:(机器学习)