- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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我们在前面已经讲过,他主要实现对训练数据集
您可能关注的文档
- 医院照明建议方案——LED照明.pptx.ppt
- SQL课件第七章.ppt
- 教师上岗考试之教育学内容精选.doc
- Router基本配置.doc
- 2010年12月三级考试3.doc
- 中考要求背默篇目.doc
- 经济地理学重点总结.doc
- 3冬不拉_每课一练.ppt
- 专题复习—质量和密度.doc
- 九年级第一次月考化学试卷(1-3单元).doc
- 2025年河北政法职业学院单招职业技能考试必刷测试卷最新.docx
- 2025年河北工艺美术职业学院单招综合素质考试必刷测试卷附答案.docx
- 2025年河北政法职业学院单招职业技能考试必刷测试卷最新.docx
- 2025年河北外国语学院单招职业技能测试必刷测试卷附答案.docx
- 2025年河北化工医药职业技术学院单招职业技能考试必刷测试卷最新.docx
- 2025年沧州职业技术学院单招职业适应性考试题库最新.docx
- 2025年河北东方学院单招综合素质考试题库附答案.docx
- 2025年沈阳职业技术学院单招职业适应性考试必刷测试卷最新.docx
- 2025年大连数学高考真题答案.docx
- 2025年江西软件职业技术大学单招职业技能测试必刷测试卷附答案.docx
文档评论(0)