LibSVM使用的简单介绍.docVIP

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

LIBSVM使用的详细说明 一、基本介绍 LIBSVM是台湾大学林智仁教授2001年开发的一套支持向量机的库,运算速度快,可以很方便的对数据做分类或回归。由于LIBSVM程序小,运用灵活,输入参数少,并且是开源的,易于扩展,因此成为目前国内应用最多的SVM的库。这套库目前已经发展到2.9版。主要有5个文件夹和一些c++源码文件。 Java主要是应用于java平台; Python是用来参数优选的工具,稍后介绍; svm-toy是一个可视化的工具,用来展示训练数据和分类界面,里面是源码,其编译后的程序在windows文件夹下; tools—主要包含四个python文件,用来数据集抽样(subset),参数优选(grid),集成测试(easy), 数据检查(check data); windows包含libSVM四个exe程序包,我们所用的库就是他们。其中svm-scale.exe是用来对原始样本进行缩放的;svm-train.exe主要实现对训练数据集的训练,并可以获得SVM模型;svmpredict 是根据训练获得的模型,对数据集合进行预测。还有一个svm-toy.exe之前已经交待过,是一个可视化工具。 里面还有个heart_scale,是一个样本文件,可以用记事本打开,用来测试用的。 二、LIBSVM的使用规范 1. libSVM的数据格式 Label 1:value 2:value … Label是类别的标识,比如上节train.model中提到的1 -1,你可以自己随意定,比如-10,0,15。如果是回归,这是目标值,就要实事求是了。 Value就是要训练的数据,从分类的角度来说就是特征值,数据之间用空格隔开,比如: -15 1:0.708 2:1056 3:-0.3333 需要注意的是,如果特征值为0,特征冒号前面的(姑且称做序号)可以不连续。如: -15 1:0.708 3:-0.3333 表明第2个特征值为0,从编程的角度来说,这样做可以减少内存的使用,并提高做矩阵内积时的运算速度。 2. svm-scale的用法 svm-scale是用来对原始样本进行缩放的,范围可以自己定,一般是[0,1]或[-1,1]。缩放的目的主要是: (1)防止某个特征过大或过小,从而在训练中起的作用不平衡; (2)为了计算速度。因为在核计算中,会用到内积运算或exp运算,不平衡的数据可能造成计算困难。 用法:svm-scale [-l lower] [-u upper] [-y y_lower y_upper] [-s save_filename] [-r restore_filename] filename 其中,[]中都是可选项: -l:设定数据下限;lower:设定的数据下限值,缺省为-1 -u:设定数据上限;upper:设定的数据上限值,缺省为 1 -y:是否对目标值同时进行缩放;y_lower为下限值,y_upper为上限值; -s save_filename:表示将缩放的规则保存为文件save_filename; -r restore_filename:表示将按照已经存在的规则文件restore_filename进行缩放; filename:待缩放的数据文件,文件格式按照libsvm格式。 默认情况下,只需要输入要缩放的文件名就可以了:比如(已经存在的文件为test.txt) svm-scale test.txt 这时,test.txt中的数据已经变成[-1,1]之间的数据了。但是,这样原来的数据就被覆盖了,为了让规划好的数据另存为其他的文件,我们用一个dos的重定向符 来另存为(假设为out.txt): svm-scale test.txt out.txt 运行后,我们就可以看到目录下多了一个out.txt文件,那就是规范后的数据。假如,我们想设定数据范围[0,1],并把规则保存为test.range文件: svmscale –l 0 –u 1 –s test.range test.txt out.txt 这时,目录下又多了一个test.range文件,可以用记事本打开,下次就可以用-r test.range来载入了。 3. svm-train的用法 svmtrain我们在前面已经讲过,他主要实现对训练数据集

文档评论(0)

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

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

1亿VIP精品文档

相关文档