没有合适的资源?快使用搜索试试~ 我知道了~
首页libsvm最新ReadMe中文档New2013
libsvm最新ReadMe中文档New2013

深圳电信培训中心徐海蛟博士 支持向量机svm 教学用的最新中文参考资料。原文档是英文版本的,本文档是徐海蛟博士授课的LibSVM 2013最新版ReadMe中文文档。 LIBSVM是台湾大学林智仁(Lin Chih-Jen)副教授等开发设计的一个简单、易于使用和快速有效的SVM模式识别与回归的软件包,他不但提供了编译好的可在Windows系列系统的执行文件,还提供了源代码,方便改进、修改以及在其它操作系统上应用;该软件对SVM所涉及的参数调节相对比较少,提供了很多的默认参数,利用这些默认参数可以解决很多问题;并提供了交互检验(Cross Validation)的功能。该软件包可在官网免费获得。该软件可以解决C-SVM、ν-SVM、ε-SVR和ν-SVR等问题,包括基于一对一算法的多类模式识别问题。 如何下载,在本ReadMe中文文档中有说明。如何使用也有例子。深化学习,那就去网上搜索深圳电信培训中心[徐海蛟博士]的svm理论与实验系列文章吧。 徐海蛟老师授课时候讲得还是蛮详细的!!^_^
资源详情
资源评论
资源推荐

数据与软件工程实验室 徐海蛟博士 2013
Libsvm ReadMe 最新中文说明文件
徐海蛟博士 深圳电信培训中心 2013 年
Libsvm 是一个简单高效的软件,用于 SVM 分类与回归. 它解决了 C-SVM 分类, nu-
SVM 分类, one-class-SVM, epsilon-SVM 回归, 与 nu-SVM 回归. 对于 C-SVM 分类,也提供
了自动模型选择. 本文详述了 Libsvm 的用法.
Libsvm 可以从这里得到:http://www.csie.ntu.edu.tw/~cjlin/libsvm , 新版:3.17。
在使用 libsvm 之前先阅读 COPYRIGHT 文件。
1 目录
-1 快速开始
-2 安装和数据格式
-3 `svm-train' 用法
-4 `svm-predict' 用法
-5 `svm-scale' 用法
-6 实际使用技巧
-7 例子
-8 预计算核
-9 库函数用法 PS: 仔细看!(徐海蛟老师提醒)
-10 Java 版本
-11 构建二进制 windows 文件
-12 其他工具: 子采样, 参数选择, 格式检查, 等等.
-13 MATLAB/OCTAVE 接口
-14 Python 接口
-15 其他信息
2 快速启动
如果你是 SVM 的一个新手,并且数据不大,那么在安装完成之后请打开 tools 目录使
用 easy.py。它将把一切全自动化,从数据规化到参数选择。
1

数据与软件工程实验室 徐海蛟博士 2013
用法: easy.py training_file [testing_file]
你可以在“tools/README”中找到关于参数选择的更多信息。
3 安装与数据格式
3.1 安装
在 Unix 系统中,输入 make 来生成“svm-train”和“svm-predict”程序。不带参数地运行它
们可以显示他们的用法。
在其他系统中,参考“Makefile”来生成它们(例如:你可以参数这篇文档中的“生成
Windows 可执行文件”)或者使用预生成二进制文件(Windows 二进制文件在”windows“目
录中)
3.2 数据格式
训练和测试数据文件中的格式是:
<label> <index1>:<value1> <index2>:<value2> ...
…
…
…
每行包含一个实例,并且以换行符结束。对于分类来说,<label>是一个指向该类标志
的整数(支持多类)。对于回归来说,<label>是一个可为任何实数的目标值。对于 one-
class-SVM 来说,它不会被用到,所以可以为任何数值。除非使用预先计算的核(将在另
一节介绍),<index>:<value>给出了一个特性(属性)值。<index>是一个从 1 开始的整数,
<value>是一个实数。索引必须按升序排列。标签在测试文件中只被用来计算精确度或者错
误。如果它们是未知的,把第一列赋任意值。
分类例子
这个包内的一个分类数据的例子是“heart_scale”。可以使用“tools/checkdata.py”来检测
你数据格式是否正确。(详见“tools/README”)。
2

数据与软件工程实验室 徐海蛟博士 2013
输入“svm-train heart_scale”,程序将读取训练数据并输出模型文件“ hear_scale.model ” 。
如果你有一个测试集叫“heart_scale.t”,那么输入“svm-predict heart_scale.t heart_scale.model
output” 来检查预测的准确性。“output”文件包含了预测的类标签。
对于分类, if training data are in only one class (i.e., all
labels are the same), then `svm-train' issues a warning message:
`Warning: training data in only one class. See README for details,'
which means the training data is very unbalanced. The label in the
training data is directly returned when testing.
这个包里还有一些其他的有用的程序:
svm-scale:
规化你的输入数据文件
svm-toy:
这是一个简单的图形界面,它将在一个面板上显示 SVM 如果分离数据。你可以在窗
口里单击来画数据点。使用“change”按钮来选择类 1,2 或者 3(例如:一直到 3 个类都是支
持的),“load”按钮用来从文件里装入数据,“save”按钮用来保存数据到一个文件,“run”按
钮用来获取一个 SVM 模型,“clear”按钮用来清除窗口。
你可以窗口的底部输入选项,选项的符号规则和“svm-train”一样。
注意“load”和“save”考虑了分类与回归情况下的稠密数据格式. 对于分类,
each data point has one label (the color) that must be 1, 2, or 3 与 two attributes (x-axis 与
y-axis values) in [0,1).
对于回归, each data point has one target value (y-axis) 与 one attribute (x-axis values) in
[0, 1).
在各个目录中输入 make 来生成它们。
你需要 Qt 库来生成 Qt 版本(可以在这里得到:http://www.trolltech.com )
你需要 GTK+库来生成 GTK 版本(可以在这里得到:http://www.gtk.org )
预生成的 Windows 二进制文件可“Windows”目录中。我们使用的是 32-位机上的 Visual
C++,所以最大缓存是 2GB。
3

数据与软件工程实验室 徐海蛟博士 2013
4`svm-train' 用法
用法: svm-train [选项] training_set_file [model_file]
选项:
-s svm_type : 设定 SVM 的类型 (默认 0)
0 -- C-SVC (多类分类) 默认值
1 -- nu-SVC (多类分类)
2 -- one-class SVM (二类)
3 -- epsilon-SVR (回归)
4 -- nu-SVR (回归)
-t kernel_type : 设定核函数的类型 (默认 2)
0 – 线性: u'*v
1 – 多项式: (gamma*u'*v + coef0)^degree
2 – 径向基函数: exp(-gamma*|u-v|^2) 默认值
3 -- sigmoid: tanh(gamma*u'*v + coef0)
4 -- precomputed kernel (kernel values in training_set_file)
-d degree : set degree in kernel function (default 3)
-g gamma : set gamma in kernel function (default 1/num_features)
-r coef0 : set coef0 in kernel function (default 0)
-c cost : set the parameter C of C-SVC, epsilon-SVR, 与 nu-SVR (default 1)
-n nu : set the parameter nu of nu-SVC, one-class SVM, 与 nu-SVR (default 0.5)
-p epsilon : set the epsilon in loss function of epsilon-SVR (default 0.1)
-m cachesize : set cache memory size in MB (default 100)
-e epsilon : set tolerance of termination criterion (default 0.001)
-h shrinking : whether to 使用 the shrinking heuristics, 0 or 1 (default 1)
-b probability_estimates : whether to train a SVC or SVR model for probability estimates, 0 or 1
(default 0)
-wi weight : set the parameter C of class i to weight*C, for C-SVC (默认 1) 惩罚权重
-v n: n-fold cross validation mode
-q : quiet mode (no outputs)
-g 中的 k 表示输入数据中属性的数目。
-v n 选项把数据随机分成 n 个部分,并计算它们的交叉验证 accuracy/mean 方差。
通过 libsvm FAQ 来查看输出文件的含义。
4
剩余19页未读,继续阅读


















安全验证
文档复制为VIP权益,开通VIP直接复制

评论4