模式识别算法实现.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文档。上传文档
查看更多
模式识别算法实现

模式识别算法实现?——K近邻法最近邻法?一.?程序用MATLAB做的?1.?用Iris数据集验证的程序?(1)用Iris数据集验证的M文件:?load?iris.mat;?A=randperm(50);B=randperm(50);C=randperm(50);?a1=A(1,1:25);?a2=A(1,26:50);?a=Iris(a1,1:4);%%随机取第一类数据的25组?aa=Iris(a2,1:4);?b1=50*ones(1,25)+B(1,1:25);?b2=50*ones(1,25)+B(1,26:50);?b=Iris(b1,1:4);%%随机取第二类数据的25组?bb=Iris(b2,1:4);?c1=100*ones(1,25)+C(1,1:25);?c2=100*ones(1,25)+C(1,26:50);?c=Iris(c1,1:4);%%随机取第三类数据的25组?cc=Iris(c2,1:4);?train_sample=cat(1,a,b,c);%拼接成包含75组数据的样本集?test_sample=cat(1,aa,bb,cc);?k=7;%7近邻法cha=zeros(1,75);?sum1=0;sum2=0;sum3=0;?sum=0;?[i,j]=size(train_sample);%i=75,j=4?[u,v]=size(test_sample);%u=75,v=4?for?x=1:u??for?y=1:iresult=sqrt((test_sample(x,1)-train_sample(y,1))^2+(test_sample(x,2)-train_sample(y,2))^2+(test_sample(x,3)-train_sample(y,3))^2+(test_sample(x,4)-train_sample(y,4))^2);????????cha(1,y)=result;????end;??[z,Ind]=sort(cha);%Ind用来存储排序前在cha中的下标?m1=0;????m2=0;????m3=0;????for?n=1:k?if?Ind(1,n)=25????????m1=m1+1;??elseif?Ind(1,n)25Ind(1,n)=50????????m2=m2+1;?else?m3=m3+1;???????endend??if?m1=m2m1=m3????????m=1;??elseif?m2=m1m2=m3????????m=2;??elseif?m3=m1m3=m2???????m=3;????end??if?(x=25m==1)?????????sum1=sum1+1;?????elseif(x25x=50m==2)?????????sum2=sum2+1;?????elseif(x50x=75m==3)?????????sum3=sum3+1;?????end????if?(x=25m==1)||(x25x=50m==2)||(x50x=75m==3)????????sum=sum+1;????end?end?disp(sprintf(第一类分类正确率为%4.2f,sum1/25));?disp(sprintf(第二类分类正确率为%4.2f,sum2/25));?disp(sprintf(第三类分类正确率为%4.2f,sum3/25));?disp(sprintf(总分类正确率为%4.2f,sum/75));?(2)验证结果:?K近邻法:K=7?实验结果?(3)?数据分析?第一个表格是用K(k=7)近邻法得到的识别率,第二个表格是用最近邻法得到的识别率,可以看出对于Iris数据,两种方法的识别率都达到了95%左右。?2.?用Wine数据集验证的程序?(1)用Wine数据集验证的M文件:?load?wine.mat;A=randperm(59);B=randperm(71);C=randperm(48);?a1=A(1,1:30);?a2=A(1,31:59);?a=wine(a1,1:14);?aa=wine(a2,1:14);?b1=59*ones(1,36)+B(1,1:36);?b2=59*ones(1,35)+B(1,37:71);?b=wine(b1,1:14);?bb=wine(b2,1:14);?c1=130*ones(1,24)+C(1,1:24);?c2=130*ones(1,24)+C(1,25:48);?c=wine(c1,1:14);?cc=wine(c2,1:14);?train_sample=cat(1,a,b,c);%拼接成样本集?test_sample=cat(1,aa,bb,cc);?k=7;%7近邻法?cha

文档评论(0)

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

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

1亿VIP精品文档

相关文档