Felomeng翻译:libsvm2.88之安装和数据格式

来源:互联网 发布:python 字符串replace 编辑:程序博客网 时间:2024/06/08 06:29

 

Unix系统中,键入“make”来生成“svm-train”和“svm-predict”程序。不带参数运行它们,可以查看它们的语法。

在其它的操作系统中,请参考“Makefile”文件来生成它们(例如,查看本文档中的“生成Windows二进制文件”,或者直接使用已经生成的二进制文件(Windows二进制文件在文件夹“windows”中)。

训练与测试数据文件的格式如下所示

<label> <index1>:<value1> <index2>:<value2>…

.

.

.

每行包含一个实例,并且以字符’/n’结束。对于分类来讲,<label>是整型数据,表示类别(支持多分类)。对于回归来讲,<label>是任意实数(浮点数),表示目标值。one-class SVM并不使用这个参数,所以使用什么数值都可以。除非使用预计算好的内核(稍候章节介绍),否则<index>:<value>是描述属性值的。<index>(索引)是从1开始的整型数据,而<value>(值)是实数(浮点型)。索引必须升序排列。在测试文件中的标签只是用于计算精确度或错误率。如果它们是未知的,那么只要将第一列赋任意数值。

本包含有一个用于分类的示例数据文件,文件名是“heart_scale”。要验证你的数据格式的正确性,请使用“tools/checkdata.py”工具(详见文件“tools/README”)。

键入“svm-train heart_scale”,程序会读读入训练数据并生成模型文件“heart_scale.model”。假设你有一个名为“heart_scale.t”的测试集,那么键入“svm-predict heart_scale.t heart_scale.model output”以测试预测精确度。文件“output”中含有预测的分类标签。

本包中还有一些别的实用程序:

svm-scale:

       将输入数据数值化的工具。

svm-toy:

       简单的图形界面工具,它可以展示支持向量机怎样在二维空间(即平面)上将数据分类。你可以在该窗口上面单击以绘制数据点。使用“change”按钮来选择类别123(也就是说,最多支持三类),按“load”按钮可以从文件载入数据,按“save”按钮可以将数据保存到文件,按“run”按钮可以获得一个SVM模型(根据绘制的点集或从文件载入的数据),按“clear”按钮可以清屏。

 

       在该窗口的底部文本框内,你可以输入参数,参数的句法和“svm-train”一样。

 

       注意:“load”和“save”只考虑数据分类而不考虑回归的情况。每个数据点拥有一个标签(颜色,必须是123)和两个属性(横坐标和纵座标),取值区间[0,1]

 

       在相应目录键入“make”来生成这些程序。

 

       如果要生成Qt版本,那么需要有Qt库的支持。    (可以从http://www.trolltech.com下载)

 

       如果要生成GTK+版本,那么需要有GTK+库的支持。(可以从http://www.gtk.org下载)

      

       已编译二的Windows二进行文件在“windows”文件夹中。我们是在32位的机器上使用Visual C++生成的这些二进制文件,所以最大可以缓存是2G

 

原创粉丝点击