Matlab自带常用的分类器,直接复制用就好了,很方面。
很方面的,懒得自己写了。
- clc
- clear all
- load('wdtFeature');
- % 训练样本:train_data % 矩阵,每行一个样本,每列一个特征
- % 训练样本标签:train_label % 列向量
- % 测试样本:test_data
- % 测试样本标签:test_label
- train_data = traindata'
- train_label = trainlabel'
- test_data = testdata'
- test_label = testlabel'
- % K近邻分类器 (KNN)
- % mdl = ClassificationKNN.fit(train_data,train_label,'NumNeighbors',1);
- % predict_label = predict(mdl, test_data);
- % accuracy = length(find(predict_label == test_label))/length(test_label)*100
- %
- % 94%
- % 随机森林分类器(Random Forest)
- % nTree = 5
- % B = TreeBagger(nTree,train_data,train_label);
- % predict_label = predict(B,test_data);
- %
- % m=0;
- % n=0;
- % for i=1:50
- % if predict_label{i,1}>0
- % m=m+1;
- % end
- % if predict_label{i+50,1}<0
- % n=n+1;
- % end
- % end
- %
- % s=m+n
- % r=s/100
- % result 50%
- % **********************************************************************
- % 朴素贝叶斯 (Na?ve Bayes)
- % nb = NaiveBayes.fit(train_data, train_label);
- % predict_label = predict(nb, test_data);
- % accuracy = length(find(predict_label == test_label))/length(test_label)*100;
- %
- %
- % % 结果 81%
- % % **********************************************************************
- % % 集成学习方法(Ensembles for Boosting, Bagging, or Random Subspace)
- % ens = fitensemble(train_data,train_label,'AdaBoostM1' ,100,'tree','type','classification');
- % predict_label = predict(ens, test_data);
- %
- % m=0;
- % n=0;
- % for i=1:50
- % if predict_label(i,1)>0
- % m=m+1;
- % end
- % if predict_label(i+50,1)<0
- % n=n+1;
- % end
- % end
- %
- % s=m+n
- % r=s/100
- % 结果 97%
- % **********************************************************************
- % 鉴别分析分类器(discriminant analysis classifier)
- % obj = ClassificationDiscriminant.fit(train_data, train_label);
- % predict_label = predict(obj, test_data);
- %
- % m=0;
- % n=0;
- % for i=1:50
- % if predict_label(i,1)>0
- % m=m+1;
- % end
- % if predict_label(i+50,1)<0
- % n=n+1;
- % end
- % end
- %
- % s=m+n
- % r=s/100
- % result 86%
- % **********************************************************************
- % 支持向量机(Support Vector Machine, SVM)
- SVMStruct = svmtrain(train_data, train_label);
- predict_label = svmclassify(SVMStruct, test_data)
- m=0;
- n=0;
- for i=1:50
- if predict_label(i,1)>0
- m=m+1;
- end
- if predict_label(i+50,1)<0
- n=n+1;
- end
- end
- s=m+n
- r=s/100
- % result 86%
原文链接:http://blog.csdn.net/u014114990/article/details/51067059
Matlab自带常用的分类器,直接复制用就好了,很方面。的更多相关文章
- matlab进阶:常用功能的实现,常用函数的说明
常用功能的实现 获取当前脚本所在目录 current_script_dir = fileparts(mfilename('fullpath')); % 结尾不带'/' 常用函数的说明 bsxfun m ...
- 使用matlab自带工具实现rcnn
平台:matlab2016b matlab自带一个cifar10Net工具可用于深度学习. 图片标注 这里使用的是matlab自带的工具trainingImageLabeler对图像进行roi的标注. ...
- matlab自带princomp(PCA降维方式)
matlab 中自带的函数就不必怀疑. princomp:principal componet analysis (PCA). [COEFF,SCORE,latent,tsquare]=princom ...
- 如何利用OpenCV自带的级联分类器训练程序训练分类器
介绍 使用级联分类器工作包括两个阶段:训练和检测. 检测部分在OpenCVobjdetect 模块的文档中有介绍,在那个文档中给出了一些级联分类器的基本介绍.当前的指南描述了如何训练分类器:准备训练数 ...
- Lua基本语法-书写规范以及自带常用函数
Lua基本语法-书写规范和常用函数 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 String Ope ...
- matlab GUI之常用对话框(四)-- 输入对话框 inputdlg、目录对话框 uigetdir、列表对话框 listdlg
常用对话框(四) 1.输入对话框 inputdlg answer = inputdlg(prompt) answer = inputdlg(prompt,dlg_title) answer = in ...
- matlab GUI之常用对话框(三)-- dialog \ errordlg \ warndlg \ helpdlg \ msgbox \questdlg
常用的对话框(三) 1.普通对话框 dialog 调用格式: h=dialog('PropertyName','PropertyValue'......) %普通对话框 h=dialog( ]); ...
- matlab GUI之常用对话框(二)-- 进度条的使用方法
常用对话框(二) 进度条 waitbar 调用格式: h = waitbar(x,'message') waitbar(x,'message','CreateCancelBtn','button ...
- matlab GUI之常用对话框(一)-- uigetfile\ uiputfile \ uisetcolor \ uisetfont
常用对话框(一) 1.uigetfile 文件打开对话框 调用格式: [FileName,PathName,FilterIndex]=uigetfile or [FileName, ...
随机推荐
- Android3.0 以前的Fragment支持
Fragment非常实用,Android也为3.0以前的平台增加了Fragment支持,只是该Fragment不是继承android.app.Fragment,而是继承android.support. ...
- eclipse 开始运行提示 Java was started but returned exit code=13
Eclipse 是一个开放源代码的.基于Java的可扩展开发平台.就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境. 当我们安装使用时,会出现eclipse启动不了,出现" ...
- Mac 安装Rudy环境 pod安装前的准备工作
之前已经说过怎么使用pod 今天说一下安装pod之前的准备工作 首先呢就是Rudy 环境(前提是你已经安装了Xcode) 在终端输入一下命令 期间可能也许会要你输入密码 curl -L https:/ ...
- iOS tabbar点击动画效果实现
正常情况下,我们点击tabbar都只有一个变色效果,但有时候,如果我们想给它添加一个点击动画,该如何做呢? 先上几个效果图: 1.先放大,再缩小 2.Z轴旋转 3.Y轴位移 ...
- 各个浏览器开启CSS Grid Layout的方式
2017年3月,Chrome.Firefox将开启默认支持. 当然对于很多人等不及浏览器默认支持,想提前体验一把,这里提供一些打开方式: 1.Chrome 在浏览器中输入:chrome://flags ...
- github使用及代码同步
github是近两年比较火的分布式版本控制工具,很多nb的开源项目代码都托管在github上,比如Facebook.JQuery.Node.js等等,这里简单介绍一下github使用方法以及和本地工程 ...
- js json和字符串的互转
json与字符串的互转: 下面格式两种只是针对引号有稍微的区别 var result = JSON.parse("{\"a\":\"擦擦\",\ ...
- 2017qq红包雨最强攻略,
这个只支持苹果手机,而且要有苹果电脑,只有苹果手机是不行的. QQ红包规则:只要你到达指定的位置,就可以领取附近的红包,一般也就几毛,还有几分的,当然也不排除有更高的,只不过我是没遇到... 那么既然 ...
- 真分布式SolrCloud+Zookeeper+tomcat搭建、索引Mysql数据库、IK中文分词器配置以及web项目中solr的应用(1)
版权声明:本文为博主原创文章,转载请注明本文地址.http://www.cnblogs.com/o0Iris0o/p/5813856.html 内容介绍: 真分布式SolrCloud+Zookeepe ...
- Ceph QoS 初探(下)
作者:吴香伟 发表于 2017/01/24 版权声明:可以任意转载,转载时务必以超链接形式标明文章原始出处和作者信息以及版权声明 存储QoS是个可以做很大也可以做很小的特性.SolidFire认为将Q ...