SVM课件..pptVIP

  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文档。上传文档
查看更多
SVM用于多类分类 这是一个有向无环图,因此这种方法也叫做DAG SVM),调用了k-1(K是类别数)个分类器。速度快,且没有分类重叠和不可分类现象。缺点是假如最一开始的分类器回答错误,那么后面的分类器是无法纠正它的错误。对下面每一层的分类器都存在这种错误向下累积的现象。 但是DAG方法好于它们的地方就在于,累积的上限,不管是大是小,总是有定论的,有理论可以证明。并且可以通过调整“根节点的选取”及输出“置信度”来改善效果。 LIBSVM介绍 LIBSVM是台湾大学林智仁教授2001年开发的一套支持向量机的库,运算速度快,可以很方便的对数据做分类或回归。由于LIBSVM程序小,运用灵活,输入参数少,并且是开源的,易于扩展,因此成为目前国内应用最多的SVM的库。这套库目前已经发展到2.9版。 LIBSVM介绍 工具包里主要有5个文件夹: 1. Java主要是应用于java平台; 2. Python是用来参数优选的工具,稍后介绍; 3. svm-toy是一个可视化的工具,用来展示训练数据和分类界面,里面是源码,其编译后的程序在windows文件夹下; 4. tools—主要包含四个python文件,用来数据集抽样(subset),参数优选(grid),集成测试(easy), 数据检查(check data); 5. windows包含libSVM四个exe程序包,我们所用的库就是他们。其中svm-scale.exe是用来对原始样本进行缩放的;svm-train.exe主要实现对训练数据集的训练,并可以获得SVM模型;svmpredict 是根据训练获得的模型,对数据集合进行预测。还有一个svm-toy.exe之前已经交待过,是一个可视化工具。 LIBSVM介绍 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,从编程的角度来说,这样做可以减少内存的使用,并提高做矩阵内积时的运算速度。 实验 实验样本选择工具包下存在的样本文件:heart_scale。内容截图如下: 实验 训练:首先用svm-train进行训练,输入以下命令: svm-train heart_scale train.model 得到一个结果文件:train.model 实验 可以看到结果: optimization finished, #iter = 162 nu = 0.431029 obj = -100.877288, rho = 0.424462 nSV = 132, nBSV = 107 Total nSV = 132 其中,#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 labe

文档评论(0)

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

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

1亿VIP精品文档

相关文档