- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MATALB中SVM工具箱快速入手简易教程〔常出现的错误解决办法〕
MATALB中SVM工具箱快速入手简易教程matlab 自带的函数(matlab帮助文件里的例子)[只有较新版本的matlab中有这两个SVM的函数]svmtrain svmclassify
=====简要语法规则====
svmtrain
Train support vector machine classifier
Syntax
SVMStruct = svmtrain(Training, Group)
SVMStruct = svmtrain(..., Kernel_Function, Kernel_FunctionValue, ...)
SVMStruct = svmtrain(..., RBF_Sigma, RBFSigmaValue, ...)
SVMStruct = svmtrain(..., Polyorder, PolyorderValue, ...)
SVMStruct = svmtrain(..., Mlp_Params, Mlp_ParamsValue, ...)
SVMStruct = svmtrain(..., Method, MethodValue, ...)
SVMStruct = svmtrain(..., QuadProg_Opts, QuadProg_OptsValue, ...)
SVMStruct = svmtrain(..., SMO_Opts, SMO_OptsValue, ...)
SVMStruct = svmtrain(..., BoxConstraint, BoxConstraintValue, ...)
SVMStruct = svmtrain(..., Autoscale, AutoscaleValue, ...)
SVMStruct = svmtrain(..., Showplot, ShowplotValue, ...)
---------------------
svmclassify
Classify data using support vector machine
Syntax
Group = svmclassify(SVMStruct, Sample)
Group = svmclassify(SVMStruct, Sample, Showplot, ShowplotValue)
实例操作:
在命令行中输入一下内容:(或者新建一个脚本文件)
警告:
如果你之前安装过libsvm工具箱,则一下程序是不能执行的,并且会出现错误(如下图)。
出现错误的原因及解决办法:
原因:当函数运行时调用的svmtrain svmclassify是你安装的libsvm中的函数并不是MATLAB自带的。
解决办法:将安装时加载的libsvm的路径暂时移除。打开setpath,remove所有惯有libsvm的路径,save!
OK!
load fisheriris
%载入matlab自带的数据[有关数据的信息可以自己到UCI查找,这是UCI的经典数据之一],得到的数据如下图:
tu1
1.jpg (7.94 KB)
2009-5-12 19:50
其中meas是150*4的矩阵代表着有150个样本每个样本有4个属性描述,species代表着这150个样本的分类.
data = [meas(:,1), meas(:,2)];
%在这里只取meas的第一列和第二列,即只选取前两个属性.
groups = ismember(species,setosa);
%由于species分类中是有三个分类:setosa,versicolor,virginica,为了使问题简单,我们将其变为二分类问题:Setosa and non-Setosa.
[train, test] = crossvalind(holdOut,groups);
cp = classperf(groups);
%随机选择训练集合测试集[有关crossvalind的使用请自己help一下]
其中cp作用是后来用来评价分类器的.
svmStruct = svmtrain(data(train,:),groups(train),showplot,true);
%使用svmtrain进行训练,得到训练后的结构svmStruct,在预测时使用.
训练结果如图:
tu2
2.jpg (26.86 KB)
2009-5-12 19:50
classes = svmclassify(svmStruct,data(test,:),showplot,true);
%对于未知的测试集进行分类预测,结果如图:
tu3
3.jpg (37.34 KB)
2
文档评论(0)