libsvm的使用.docxVIP

  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文档。上传文档
查看更多
libsvm的使用发表于?/?p=1182012 年 8 月 2 日1:?了解libsvm工具包LIBSVM是台湾大学林智仁(Lin Chih-Jen)教授等2001年开发设计的一个简单, 易于使用和快速有效的SVM模式识别与回归的软件包, 他不但提供了编译好的可在Windows系列系统的执行文件, 还提供了源代码, 方便改进, 修改以及在其它操作系统上应用; 该软件对SVM所涉及的参数调节相对比较少, 提供了很多的默认参数, 利用这些默认参数可以解决很多问题; 并提供了交互检验(Cross Validation)的功能. 该软件包可在.tw/~cjlin/ 免费获得. 该软件可以解决C-SVM, ν-SVM, ε-SVR和ν-SVR等问题, 包括基于一对一算法的多类模式识别问题.这套库可以从.tw/~cjlin/libsvm/index.html免费获得, 目前已经发展到3.12版(2012.4.1更新).下载.tar.gz格式的版本, Windows下也可以直接解压, 主要有6个文件夹和一些源码文件.Java: 主要是应用于java平台;matlab: windows下64位matlab平台;python: 是用来参数优选的工具, 稍后介绍;svm-toy: 一个可视化的工具, 用来展示训练数据和分类界面, 里面是源码, 其编译后的程序在windows文件夹下;tools: 主要包含四个python文件, 用来数据集抽样(subset), 参数优选(grid), 集成测试(easy), 数据检查(checkdata);windows: 包含libSVM四个exe程序包, 我们所用的库就是他们.文件夹里面还有个heart_scale, 是一个样本文件, 可以用记事本打开, 用来测试用的.其他.h和.cpp文件都是程序的源码, 可以编译出相应的.exe文件. 其中, 最重要的是svm.h和svm.cpp文件, svm-predict.c, svm-scale.c和svm-train.c(还有一个svm-toy.c在svm-toy文件夹中)都是调用的这个文件中的接口函数, 编译后就是windows下相应的四个exe程序. 另外, 里面的README跟FAQ也是很好的文件, 对于初学者如果W文较好的话, 可以看一下.对于仅仅使用libsvm库的人来说, windows下的4个exe包已经足够了, 如果是为了做深入研究, 可以按照自己的思路文件夹中的.cpp和.c文件, 然后编译验证)2:?下面开始测试libsvm工具包1). 把LibSVM包解压到相应的目录(因为我只需要里面windows文件夹中的exe程序包, 我们也可以只把windows文件夹拷到相应的目录), 比如C:\jacoxu\test\libsvm-3.122). 在电脑”开始”的”运行”中输入cmd, 进入DOS环境. 定位到C:\jacoxu\test\libsvm-3.12下, 具体命令如下:?3). 进行libsvm训练, 输入命令:svm-train ../heart_scale train.modelheart_scale: 是目录下的已经存在的样本文件, 要换成自己的文件, 只需改成自己的文件名就可以了;train.model: 是创建的结果文件, 保存了训练后的结果:?其中, #iter 为迭代次数;nu 是选择的核函数类型的参数;obj 为SVM文件转换为的二次规划求解得到的最小值;rho 为判决函数的偏置项b;nSV 为标准支持向量个数(0a[i]c);nBSV 为边界上的支持向量个数(a[i]=c);Total nSV为支持向量总个数(对于两类来说, 因为只有一个分类模型Total nSV = nSV但是对于多类, 这个是各个分类模型的nSV之和).在目录下, 还可以看到产生了一个train.model文件, 可以用记事本打开, 记录了训练后的结果.svm_type?c_svc//所选择的svm类型,?默认为c_svc??kernel_type?rbf//训练采用的核函数类型,?此处为RBF核??gamma?0.0769231//RBF核的参数γ??nr_class?2//类别数,?此处为两分类问题??total_sv?132//支持向量总个数??rho?0.424462//判决函数的偏置项b??label?1?-1//原始文件中的类别标识??nr_sv?64?68//每个类的支持向量机的个数??SV//以下为各个类的权系数及相应的支持向量??1?1:0.166667?2:1?3:-0.333333?…?10:-0.903226?11:-1?12:-1?13:10.5104832128985164?1:0.125?2:1?3:0.333333?

文档评论(0)

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

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

1亿VIP精品文档

相关文档