近邻法与剪辑近邻法.doc_第1页
近邻法与剪辑近邻法.doc_第2页
近邻法与剪辑近邻法.doc_第3页
近邻法与剪辑近邻法.doc_第4页
近邻法与剪辑近邻法.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

云南大学数学与统计学实验教学中心实验报告云南大学数学与统计学实验教学中心实 验 报 告课程名称:模式识别学期:20092010学年 第二学期成绩:指导教师: 胡光华学生姓名:。学生学号:。实验名称:近邻法与剪辑近邻法实验编号:5实验日期:2010-5-22实验学时:4学时学院: 数学与统计学院专业 : 信息与计算科学年级: 2007级一、实验目的能根据给出的训练集与测试集,用近邻法,k近邻法与剪辑近邻法, 重复剪辑近邻法给出测试集的分类结果并分别计算其错误率。二、实验内容画出近邻法的程序框图,对给定的分别存放在文件“riply_trn.mat”和”riply_tst.mat”中的两类样本训练集250个测试集1000个,试用近邻法,k近邻法与剪辑近邻法, 重复剪辑近邻法给出测试集的分类结果并分别计算其错误率。三、实验环境Windows XPMatlab6.5四、实验过程一、程序框图:载入250个训练集1000个测试集i=1000拿出测试集中一个值计算与250个训练集的距离并且根据距离来判别其类别i=i+1YN根据训练集得到的判断结果与测试集实际类别比较得到错误率开始结束二、实验相关代码:(1)最近邻法%计算错误率函数function P=ZQL_func(ys,yr)load riply_tst;yr=y; n=size(ys,2); t=0; for i=1:n if ys(i)-yr(i)=0 t=t+1; end end P=1-t/n;%最近邻函数文件function ypd=ZJL_func(Xtr,ytr,Xts,yts)m1,n1=size(Xtr);m2,n2=size(Xts);d=zeros(1,n1);ypd=zeros(1,n2);for i=1:n2 for j=1:n1 d(j)=(Xts(1,i)-Xtr(1,j)2+(Xts(2,i)-Xtr(2,j)2; %欧式距离 end min=d(1); r=1; for t=2:n1 if d(t)=d(r) a=d(t); d(t)=d(r); d(r)=a; b=ytr(t); ytr(t)=ytr(r); %对距离进行排序 ytr(r)=b; end end end p=0; q=0; for s=1:k if ytr(s)=1 p=p+1; else q=q+1; %寻找最近的k个来判断类别 end end if pq ypd(i)=1; else ypd(i)=2; endendZQL_func(ypd,yts)%根据作图找使得错误率达到最小的k值k=25:120;k1=44,54;P2=KJL(k);figure(1),plot(k,P2(:)hold onplot(k1,min(P2(:),*r)hold off得到图形如下:从图中可看出当k值在43附近能使得错误率达到最小,约为0.079。(3)剪辑近邻法:%剪辑法函数文件:function Xbz,ybz,n=JJF_func(Xjs,yjs,Xxs,yxs)mj,nj=size(Xjs);mx,nx=size(Xxs);d=zeros(1,nj); k=1; i=1; r=0; min=0; n=0;while k=nx for j=1:nj d(j)=(Xxs(1,i)-Xjs(1,j)2+(Xxs(2,i)-Xjs(2,j)2; end min=d(1); for t=2:nj if d(t)=min min=d(t); r=t; end end if yxs(i)-yjs(r)=0 i=i+1; else for j=i:nx Xxs(i)=Xxs(i+1); %剪辑(通过用后面的值覆盖前面的值来实现) yxs(i)=yxs(i+1); end n=nx-1; end k=k+1;endXbz=zeros(mx,n);ybz=zeros(1,n);for i=1:n Xbz(:,i)=Xxs(:,i); ybz(i)=yxs(i);end%剪辑法m文件:load riply_trn;Xtr=X;ytr=y;m1,n1=size(Xtr);load riply_tst;Xts=X;yts=y;%训练集的分类比例为 2:3Xjs1=zeros(m1,n1);yjs1=zeros(1,n1);Xxs1=zeros(m1,n1);yxs1=zeros(1,n1);k=1;t=1;s=0;for i=1:n1 s=rand; if s=0.4 Xjs1(:,k)=Xtr(:,i); %划分样本 yjs1(k)=ytr(i); k=k+1; else Xxs1(:,t)=Xtr(:,i); yxs1(t)=ytr(i); t=t+1; endendXjs=zeros(m1,k);yjs=zeros(1,k);Xxs=zeros(m1,t);yxs=zeros(1,t);for i=1:k Xjs(:,i)=Xjs1(:,i); yjs(i)=yjs1(i);endfor i=1:t Xxs(:,i)=Xxs1(:,i); yxs(i)=yxs1(i);endXbz,ybz=JJF_func(Xjs,yjs,Xxs,yxs);ypd=ZJL_func(Xtr,ytr,Xts,yts); %调用最近邻函数文件来判断类别P=ZQL_func(ypd,yts)剪辑法所得结果:在将样本数据以2:3的比例进行“参考集”与“考试集”的划分,经过数次的重复运行(因为是随机分类故而多运行几次从而体现出规律来)后的到得最小错误率为:P = 0.0830;自己将划分比例进行了调整,发现在比例为4:5附近的时候错误率达到最小,为P =0.0770,而比例比这大或小的时候错误率均高于0.0770(4)重复剪辑法:%重复剪辑法函数文件:(把样本分为5类)function X,Y,t=CFJJ_func(Xtr,ytr)m,n=size(Xtr);x1=zeros(m,n);y1=zeros(1,n);x2=zeros(m,n);y2=zeros(1,n);x3=zeros(m,n);y3=zeros(1,n);x4=zeros(m,n);y4=zeros(1,n);x5=zeros(m,n);y5=zeros(1,n);t1=0;t2=0;t3=0;t4=0;t5=0;for i=1:n t=rand; if t=0.1 t1=t1+1; x1(:,t1)=Xtr(:,i); y1(t1)=ytr(i); elseif t=0.3 t2=t2+1; x2(:,t2)=Xtr(:,i); y2(t2)=ytr(i); elseif t=0.5 t3=t3+1; x3(:,t3)=Xtr(:,i); y3(t3)=ytr(i); elseif t5 c=mod(i+1,5); else c=i+1; end if size(S1,c,2)0 S1,i,Y1,i,p(i)=JJF_func(S1,c,Y1,c,S1,i,Y1,i); end end S=cell2mat(S); %将样本又归为一个集合 Y=cell2mat(Y); A,ys,t=CFJJ_func(S,Y); num=sum(p);endG=S;Yypd=ZJL_func(S,Y,Xts,yts);P=ZQL_func(ypd,yts)实验结果:自己将代码运行数次,分析规律得到一个错误率相对较低的时候剪辑剩下的样本集及其对应的类别为:(大约还剩下28个样本时候错分的概率最小)G =0.0976 -0.8415 -0.1913 -0.6803 0.7577 0.6591 0.3727 0.4667 0.7771 0.7771 0.6719 -0.1913 -0.6803 0.7577 0.6591 -0.5541 -0.3665 0.0614 1.0000 1.0000 1.0000 1.0000 2.0000 1.0000 1.0000 1.0000 1.0000 0.3971 0.7107 0.5720 0.7771 0.3341 0.6483 0.5795 0.0763 0.51540.7107 0.7107 0.5720 0.3341 0.3727 0.6483 0.5795 0.3505 0.51541.0000 2.0000 1.0000 1.0000 1.0000 1.0000 2.0000 1.0000 1.0000-0.5976 0.7577 0.0763 0.6320 -0.9859 0.2104 -0.5745 0.0926 0.6371 0.2551 0.6057 0.0763 0.6320 -0.9859 0.2104 0.1862 0.0926 0.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论