很方面的,懒得自己写了。

  1. clc  
  2. clear all   
  3.  load('wdtFeature');  
  4.      
  5. %    训练样本:train_data             % 矩阵,每行一个样本,每列一个特征  
  6. %   训练样本标签:train_label       % 列向量  
  7. %   测试样本:test_data  
  8. %   测试样本标签:test_label  
  9.  train_data = traindata'  
  10.  train_label = trainlabel'  
  11.  test_data = testdata'  
  12.  test_label = testlabel'  
  13. %  K近邻分类器 (KNN)  
  14. % mdl = ClassificationKNN.fit(train_data,train_label,'NumNeighbors',1);  
  15. % predict_label   =       predict(mdl, test_data);  
  16. % accuracy         =       length(find(predict_label == test_label))/length(test_label)*100  
  17. %                  
  18. %  94%  
  19. % 随机森林分类器(Random Forest)  
  20. % nTree = 5  
  21. % B = TreeBagger(nTree,train_data,train_label);  
  22. % predict_label = predict(B,test_data);  
  23. %    
  24. % m=0;  
  25. % n=0;  
  26. for i=1:50  
  27. %     if predict_label{i,1}>0  
  28. %         m=m+1;  
  29. %     end  
  30. %     if predict_label{i+50,1}<0  
  31. %         n=n+1;  
  32. %     end  
  33. % end  
  34. %   
  35. % s=m+n  
  36. % r=s/100  
  37.     
  38. %  result 50%  
  39.     
  40. % **********************************************************************  
  41. % 朴素贝叶斯 (Na?ve Bayes)  
  42. % nb = NaiveBayes.fit(train_data, train_label);  
  43. % predict_label   =       predict(nb, test_data);  
  44. % accuracy         =       length(find(predict_label == test_label))/length(test_label)*100;  
  45. %   
  46. %   
  47. % % 结果 81%  
  48. % % **********************************************************************  
  49. % % 集成学习方法(Ensembles for Boosting, Bagging, or Random Subspace)  
  50. % ens = fitensemble(train_data,train_label,'AdaBoostM1' ,100,'tree','type','classification');  
  51. % predict_label   =       predict(ens, test_data);  
  52. %   
  53. % m=0;  
  54. % n=0;  
  55. for i=1:50  
  56. %     if predict_label(i,1)>0  
  57. %         m=m+1;  
  58. %     end  
  59. %     if predict_label(i+50,1)<0  
  60. %         n=n+1;  
  61. %     end  
  62. % end  
  63. %   
  64. % s=m+n  
  65. % r=s/100  
  66.     
  67. % 结果 97%  
  68. % **********************************************************************  
  69. % 鉴别分析分类器(discriminant analysis classifier)  
  70. % obj = ClassificationDiscriminant.fit(train_data, train_label);  
  71. % predict_label   =       predict(obj, test_data);  
  72. %    
  73. % m=0;  
  74. % n=0;  
  75. for i=1:50  
  76. %     if predict_label(i,1)>0  
  77. %         m=m+1;  
  78. %     end  
  79. %     if predict_label(i+50,1)<0  
  80. %         n=n+1;  
  81. %     end  
  82. % end  
  83. %   
  84. % s=m+n  
  85. % r=s/100  
  86. %  result 86%  
  87. % **********************************************************************  
  88. % 支持向量机(Support Vector Machine, SVM)  
  89. SVMStruct = svmtrain(train_data, train_label);  
  90. predict_label  = svmclassify(SVMStruct, test_data)  
  91. m=0;  
  92. n=0;  
  93. for i=1:50  
  94.     if predict_label(i,1)>0  
  95.         m=m+1;  
  96.     end  
  97.     if predict_label(i+50,1)<0  
  98.         n=n+1;  
  99.     end  
  100. end  
  101.     
  102. s=m+n  
  103. r=s/100  
  104.     
  105. %  result 86% 

原文链接:http://blog.csdn.net/u014114990/article/details/51067059

Matlab自带常用的分类器,直接复制用就好了,很方面。的更多相关文章

  1. matlab进阶:常用功能的实现,常用函数的说明

    常用功能的实现 获取当前脚本所在目录 current_script_dir = fileparts(mfilename('fullpath')); % 结尾不带'/' 常用函数的说明 bsxfun m ...

  2. 使用matlab自带工具实现rcnn

    平台:matlab2016b matlab自带一个cifar10Net工具可用于深度学习. 图片标注 这里使用的是matlab自带的工具trainingImageLabeler对图像进行roi的标注. ...

  3. matlab自带princomp(PCA降维方式)

    matlab 中自带的函数就不必怀疑. princomp:principal componet analysis (PCA). [COEFF,SCORE,latent,tsquare]=princom ...

  4. 如何利用OpenCV自带的级联分类器训练程序训练分类器

    介绍 使用级联分类器工作包括两个阶段:训练和检测. 检测部分在OpenCVobjdetect 模块的文档中有介绍,在那个文档中给出了一些级联分类器的基本介绍.当前的指南描述了如何训练分类器:准备训练数 ...

  5. Lua基本语法-书写规范以及自带常用函数

    Lua基本语法-书写规范和常用函数 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 String Ope ...

  6. matlab GUI之常用对话框(四)-- 输入对话框 inputdlg、目录对话框 uigetdir、列表对话框 listdlg

    常用对话框(四) 1.输入对话框  inputdlg answer = inputdlg(prompt) answer = inputdlg(prompt,dlg_title) answer = in ...

  7. matlab GUI之常用对话框(三)-- dialog \ errordlg \ warndlg \ helpdlg \ msgbox \questdlg

    常用的对话框(三) 1.普通对话框  dialog 调用格式: h=dialog('PropertyName','PropertyValue'......) %普通对话框 h=dialog( ]); ...

  8. matlab GUI之常用对话框(二)-- 进度条的使用方法

    常用对话框(二) 进度条   waitbar 调用格式: h = waitbar(x,'message')  waitbar(x,'message','CreateCancelBtn','button ...

  9. matlab GUI之常用对话框(一)-- uigetfile\ uiputfile \ uisetcolor \ uisetfont

    常用对话框(一) 1.uigetfile  文件打开对话框 调用格式:      [FileName,PathName,FilterIndex]=uigetfile or     [FileName, ...

随机推荐

  1. Android事件处理概述

    不管是桌面应用还是手机应用程序,面对最多的就是用户,经常需要处理的就是用户的动作——也就是需要为用户动作提供响应,这种为用户动作提供响应的机制就是事件处理. Android提供了强大的事件处理机制,包 ...

  2. Web应用中监听者的通知顺序按照DD中的定义顺序

    Web应用中监听者的通知顺序按照DD中的定义顺序: XML: <?xml version="1.0" encoding="UTF-8"?> < ...

  3. 利用apache的mod_rewrite做URL规则重写

    使用mod_rewrite做url重写,伪静态,做过很多次,这次用几个例子记下来,便于后面查用. 使用方法: 1.在conf目录的httpd.conf文件中找到: LoadModule rewrite ...

  4. HDU2602(背包)

    Bone Collector Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  5. 进阶之初探nodeJS

    一.前言 在"初探nodeJS"随笔中,我们对于node有了一个大致地了解,并在最后也通过一个示例,了解了如何快速地开启一个简单的服务器. 今儿,再次看了该篇随笔,发现该随笔理论知 ...

  6. js中的 arguments ,实参的集合

    当 传递的参数个数不确定时,,可使用 arguments ..

  7. JWebFileTrans: 一款可以从网络上下载文件的小程序(一)

    一 摘要 JWebFileTrans是一款基于socket的网络文件传输小程序,目前支持从HTTP站点下载文件,后续会增加ftp站点下载.断点续传.多线程下载等功能.其代码已开源到github上面,下 ...

  8. C#npoi导出excel一些自己的看法

    之前转过一篇类似的文章,那个是用C#自带的excel类操作Excel的,还有一种在c#上操作excel的方法便是npoi了,npoi是poi的C#版本. npoi操作excel有两种形式,一种是hss ...

  9. 【4N魔方阵】

    /* 4N魔方阵 */ #include<stdio.h> #include<stdlib.h> #define N 8 int main(void){ int i, j; ] ...

  10. C# 6 与 .NET Core 1.0 高级编程 - 39 章 Windows 服务(上)

    译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 39 章 Windows 服务(上)),不对的地方欢迎指出与交流. 章节出自<Professional C ...