Lib-SVM使用的说明 .docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Lib-SVM使用的说明

许多想用lib-svm解决分类或者回归的初学者可能像我一样一开始摸不着头绪。面对长篇的english,头都大了。有好心人把自己的经验总结了,我们就一起共享吧! 附录 1 : LIBSVM 的简单介绍 1. LIBSVM 软件包简介 LIBSVM 是台湾大学林智仁 (Chih-Jen Lin) 博士等开发设计的一个操作简单、 易于使用、快速有效的通用 SVM 软件包,可以解决分类问题(包括 C- SVC 、 n - SVC )、回归问题(包括 e - SVR 、 n - SVR )以及分布估计( one-class-SVM ) 等问题,提供了线性、多项式、径向基和 S 形函数四种常用的核函数供选择,可以有效地解决多类问题、交叉验证选择参数、对不平衡样本加权、多类问题的概 率估计等。 LIBSVM 是一个开源的软件包,需要者都可以免费的从作者的个人主页 .tw/~cjlin/ 处获得。他不仅提供了 LIBSVM 的 C++ 语言的算法源代码,还提供了 Python 、 Java 、 R 、 MATLAB 、 Perl 、 Ruby 、 LabVIEW 以及 C#.net 等各种语言的接口,可以方便的在 Windows 或 UNIX 平台下使用, 也便于科研工作者根据自己的需要进行改进(譬如设计使用符合自己特定问题需要的核函数等)。另外还提供了 WINDOWS 平台下的可视化操作工具 SVM-toy , 并且在进行模型参数选择时可以绘制出交叉验证精度的等高线图。 2. LIBSVM 使用方法简介 LIBSVM 在给出源代码的同时还提供了 Windows 操作系统下的可执行文件, 包括:进行支持向量机训练的 svmtrain.exe ;根据已获得的支持向量机模型对数 据集进行预测的 svmpredict.exe ;以及对训练数据与测试数据进行简单缩放操作的 svmscale.exe 。它们都可以直接在 DOS 环境中使用。如果下载的包中只有 C++ 的源代码,则也可以自己在 VC 等软件上编译生成可执行文件。 LIBSVM 使用的一般步骤是: 1 ) 按照 LIBSVM 软件包所要求的格式准备数据集; 2 ) 对数据进行简单的缩放操作; 3 ) 考虑选用 RBF 核函数 2 K(x,y) e x y = -g - ; 4 ) 采用交叉验证选择最佳参数 C 与 g ; 5 ) 采用最佳参数 C 与 g 对整个训练集进行训练获取支持向量机模型; 6 ) 利用获取的模型进行测试与预测。 一 . LIBSVM 使用的数据格式 LIBSVM 使用的训练数据和测试数据文件格式如下: : : value2 … 其中 是训练数据集的目标值,对于分类,它是标识某类的整数 ( 支持多个类 ) ;对于回归,是任意实数是以 1 开始的整数,表示特征的序号; 为实数,也就是我们常说的特征值或自变量。当特征值为 0 时,特征序号与特征值 value 都可以同时省略,即 index 可以是不连续的自然数。 与第一个特征序号、前一个特征值与后一个特征序号之间用空格隔开。测试数据文件中的 label 只用于计算准确度或误差,如果它是未知的,只需用任意一个数填写这一栏,也可以空着不填。例如: +1 1:0.708 2:1 3:1 4:-0.320 5:-0.105 6:-1 8:1.21 二 . svmscale 的用法 对数据集进行缩放的目的在于: 1 )避免一些特征值范围过大而另一些特征值范围过小; 2 )避免在训练时为了计算核函数而计算内积的时候引起数值计算的困难。因此,通常将数据缩放到 [ -1,1] 或者是 [0,1] 之间。 用法: svmscale [-l lower] [-u upper] [-y y_lower y_upper] [-s save_filename] [-r restore_filename] filename (缺省值: lower = -1 , upper = 1 ,没有对 y 进行缩放) 其中, -l :数据下限标记; lower :缩放后数据下限; -u :数据上限标记; upper :缩放后数据上限; -y :是否对目标值同时进行缩放; y_lower 为下限值, y_upper 为上限值; -s save_filename :表示将缩放的规则保存为文件 save_filename ; -r restore_filename :表示将缩放规则文件 restore_filename 载入后按此缩放; filename :待缩放的数据文件(要求满足前面所述的格式)。 缩放规则文件可以用文本浏览器打开,看到其格式为: lower upper lval1 uval1 lv

文档评论(0)

ctuorn0371 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档