




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
模式识别实验报告 班 级:电子信息科学与技术13级02 班姓 名: 学 号: 指导老师:成 绩: 通信与信息工程学院二一六年实验一 最大最小距离算法1、 实验内容1. 熟悉最大最小距离算法,并能够用程序写出。2. 利用最大最小距离算法寻找到聚类中心,并将模式样本划分到各聚类中心对应的类别中。2、 实验原理N个待分类的模式样本,分别分类到聚类中心对应的类别之中。最大最小距离算法描述:(1) 任选一个模式样本作为第一聚类中心。(2) 选择离距离最远的模式样本作为第二聚类中心。(3) 逐个计算每个模式样本与已确定的所有聚类中心之间的距离,并选出其中的最小距离。(4) 在所有最小距离中选出一个最大的距离,如果该最大值达到了的一定分数比值以上,则将产生最大距离的那个模式样本定义为新增的聚类中心,并返回上一步。否则,聚类中心的计算步骤结束。这里的的一定分数比值就是阈值,即有:(5) 重复步骤(3)和步骤(4),直到没有新的聚类中心出现为止。在这个过程中,当有k个聚类中心时,分别计算每个模式样本与所有聚类中心距离中的最小距离值,寻找到N个最小距离中的最大距离并进行判别,结果大于阈值是,存在,并取为产生最大值的相应模式向量;否则,停止寻找聚类中心。(6)寻找聚类中心的运算结束后,将模式样本按最近距离划分到相应的聚类中心所代表的类别之中。三、实验结果及分析该实验的问题是书上课后习题2.1,以下利用的matlab中的元胞存储10个二维模式样本X1=0;0;X2=1;1;X3=2;2;X4=3;7;X5=3;6;X6=4;6;X7=5;7;X8=6;3;X9=7;3;X10=7;4;利用最大最小距离算法,matlab运行可以求得从matlab运行结果可以看出,聚类中心为,以为聚类中心的点有,以为聚类中心的点有,以为聚类中心的有。同时,做出聚类分析后的分布图,如下:图中用蓝色大圈标记了聚类中心,用星号标记了以为聚类中心的样本,用三角符号标记了以以为聚类中心的样本,用红色小圈标记了以为聚类中心的样本,该程序成功进行了分类实验二 感知器算法一、实验内容1. 熟悉感知器算法,并能够用程序写出。2. 利用感知器算法进行判别分类,算出判别函数,画出判别界面。2、 实验原理直接用来对模式进行分类的准则函数。若分属于1,2的两类模式可用一方程来划分,那么称为判别函数,或称判决函数、决策函数。如,一个二维的两类判别问题,模式分布如图示,这些分属于1,2两类的模式可用一直线方程来划分。其中 式中: 为坐标变量。图2-1 两类二维模式的分布将某一未知模式 代入:若,则类;若,则类;若,则或拒绝。两类线性可分的模式类 ,设其中,应具有性质 对样本进行规范化处理,即2类样本全部乘以(1),则有: 感知器算法通过对已知类别的训练样本集的学习,寻找一个满足上式的权向量。感知器算法步骤: (1)选择N个分属于1和 2类的模式样本构成训练样本集构成增广向量形式,并进行规范化处理。任取权向量初始值W(1),开始迭代。迭代次数k=1。(2)用全部训练样本进行一轮迭代,计算 的值,并修正权向量。分两种情况,更新权向量的值:1. 分类器对第i个模式做了错误分类,权向量校正为:c:正的校正增量。2. 若分类正确,权向量不变:,统一写为:(3)分析分类结果:只要有一个错误分类,回到(2),直至对所有样本正确分类。感知器算法是一种赏罚过程:分类正确时,对权向量“赏”这里用“不罚”,即权向量不变;分类错误时,对权向量“罚”对其修改,向正确的方向转换。3、 实验结果与分析已知两类训练样本为:设,同样地,利用matlab元胞数组存储该两类训练样本利用感知器算法,matlab运行得到如下结果:因此,可以得到感知器算法算出的判别函数为:利用matlab的画图函数画出判别界面以及样本点,得到如下的分布图: 由样本分布图可以看出,判别界面成功将两类训练样本分离。实验三 LMSE算法1、 实验内容1. 了解LMSE算法,并能够用程序写出。2. 利用LMSE算法进行判别分类,算出判别函数,并画出判别界面。二、实验原理LMSE算法为最小平方误差算法,其算法过程如下:(1) 将N个分属于类和类的n维模式样本写成增广形式,将属于的训练样本乘以(-1),写出规范化增广样本矩阵。(2) 求的伪逆矩阵。(3) 设置初值c和,c为正的校正增量,的各分量大于0,括号中数字代表迭代次数k=1,开始迭代。(4) 计算,进行可分性判别。如果,模式线性可分,解为,算法结束。如果,模式线性可分,有解。继续迭代。如果,停止迭代,检查是否大于0。若大于0,有解,否则无解,算法结束。(5) 计算和先计算,再计算,迭代次数k加1,返回第(4)步。3、 实验结果及分析该实验用的训练样本与感知器算法使用的样本一致,为以下两类训练样本:设定初始值,同样地利用matlab中的元胞数组存放训练样本点,通过编写matlab的LMSE程序可以得到以下结果:所以,LMSE算法求得的该两类训练样本的判别函数为利用matlab的画图函数画出判别界面以及样本点,得到如下的分布图:由样本分布图可以看出,LMSE算法所得的判别界面也成功将两类训练样本分离。实验四 Parzen窗估计1、 实验内容1. 了解Parzen窗概率密度的估计方法,能用程序实现。2. 编写matlab程序,求解一个正态密度的Parzen窗估计。2、 实验原理设区域是一个维的超立方体,并设是超立方体的棱长,则超立方体的体积为定义窗函数为由于是以原点为中心的一个超立方体,所以当落入到以为中心,体积为的超立方体时,否则,因此落入该超立方体内的样本数为是的第N次估计,则有所以联立上面两式得这个式子就是Parzen窗法的基本公式。3、 实验结果与分析待估计的的均值为零,方差为的正态密度函数,利用matlab可以随机产生个,个,个学习样本的样本集,选取正态窗函数并设,分别取,利用matlab可以得到不同取值下的估计结果。()当时得到的结果从图中可以看出,估计概率密度函数是一个样本为中心的小丘,误差很大。() 当时得到的结果从图中可以看出,在时,噪声误差非常大,产生了不连续性。慢慢增大时,受到了平滑,但平均性误差也随之增大,分辨率降低。()当时得到的结果从下图可以看出,当增大到,估计量越来越好,在时,估计量很接近真实分布。从整个实验来看,Parzen窗法只要样本足够多,总可以保证收敛于任何复杂的未知概率密度函数,但是也受到值的影响,当太小时,就会造成不连续性,噪声误差增大。当太大时,分辨率就会下降,平均性误差就会增大。附录一最大最小距离算法程序clear;clc;X1=0;0;X2=1;1;X3=2;2;X4=3;7;X5=3;6;X6=4;6;X7=5;7;X8=6;3;X9=7;3;X10=7;4;%取第一个点为一个聚类中心z1=X1;position(1)=1;%计算其它点到z1的距离for i=1:10 d(i)=dist(Xi,z1);end%找到距离z1最远的点的位置max_dist=max(d);pos=find(d=max(d);z2=Xpos;position(2)=pos;rate=0.5;%分数比值设置为0.5T=rate*dist(z1,z2);%初始阈值min_dist=d;flag=2;index=1; while(1) %循环求出其他距离并与事先设定的阈值作比较for i=1:10 d(flag,i)=dist(Xi,zflag); if min_dist(i)d(flag,i) min_dist(index)=d(flag,i); else min_dist(index)=min_dist(i); end index=index+1;endindex=1;max_dist=max(max(min_dist);x y=find(min_dist=max(min_dist);if(max_distT) flag=flag+1; zflag=Xy; position(flag)=y;else break;endend fprintf(以下序号的样本为聚类中心:n);for i=1:flagfprintf(%dt,position(i);endfprintf(n=);%计算各样本到各聚类中心的距离for i=1:10 for j=1:flag distance(i,j)=dist(Xi,zj); endendflag1=1;flag2=1;distance2=distance;mincol I=min(distance2); %对10个样本进行聚类for i=1:10 for j=1:flag if(I(i)=j) array(j,flag1)=i; flag1=flag1+1; else continue; end endend%对聚类结果进行输出while(flag2=flag)fprintf(n第%d类的聚类中心为:%dn,flag2,position(flag2); fprintf(属于第%d类的有:n,flag2);for i=1:10 if(array(flag2,i)=0) fprintf(%dt,array(flag2,i); if flag2=1 plot(Xarray(flag2,i)(1),Xarray(flag2,i)(2),b*); hold on; end if flag2=2 plot(Xarray(flag2,i)(1),Xarray(flag2,i)(2),black); hold on; end if flag2=3 plot(Xarray(flag2,i)(1),Xarray(flag2,i)(2),ro); title(样本坐标聚类显示图); hold on; end endendfprintf(n);flag2=flag2+1;endgrid on;axis(0 8 0 9);hold onplot(Xposition(1)(1),Xposition(1)(2),o,Markersize,10);hold onplot(Xposition(2)(1),Xposition(2)(2),o,Markersize,10);hold onplot(Xposition(3)(1),Xposition(3)(2),o,Markersize,10); 附录二感知器算法程序clc;clear;w11 = 0 0 0;w12 =1 0 0;w13 =1 0 1;w14 =1 1 0;w21 = 0 0 1;w22 =0 1 1;w23 =0 1 0;w24 =1 1 1;rol col = size(w11);for i=1:4 w1i(rol+1,1)=1; w2i(rol+1,1)=1; w2i=w2i.*-1;endk=1;W(k,:)=-1,-2,-2,0;flag=0;while(1) %w1的计算 for i=1:4 k=k+1; if (W(k-1,:)*w1i)=0) W(k,:)=W(k-1,:)+w1i; flag=1; %发生错判,立即将标记位赋1 else W(k,:)=W(k-1,:); end end %w2的计算 for i=1:4 k=k+1; if (W(k-1,:)*w2i)=0) W(k,:)=W(k-1,:)+w2i; flag=1;%发生错判,立即将标记位赋1 else W(k,:)=W(k-1,:); end end if flag=1 flag=0; else break; endendfprintf(求得判别函数为:t);fprintf(d(X)=(%s*x1)+(%s*x2)+(%s*x3)+(%s)n,num2str(W(k,1),num2str(W(k,2),num2str(W(k,3),num2str(W(k,4);for i=1:4 w2i=w2i.*-1;endx1=-2:0.01:2;x2=-2:0.01:2;x1 x2=meshgrid(x1,x2);x3=(W(k,1)*x1+W(k,2)*x2+W(k,4)/(-1*W(k,3);surf(x1,x2,x3);hold for i=1:4 plot3(w1i(1),w1i(2),w1i(3),b*); plot3(w2i(1),w2i(2),w2i(3),r);endtitle(感知器算法判别界面及样本分布图); 附录三算法程序clc;clear;w11 = 0 0 0;w12 =1 0 0;w13 =1 0 1;w14 =1 1 0;w21 = 0 0 1;w22 =0 1 1;w23 =0 1 0;w24 =1 1 1;rol col = size(w11);for i=1:4 w1i(rol+1,1)=1; w2i(rol+1,1)=1; w2i=w2i.*-1;endX=w11,w12,w13,w14,w21,w22,w23,w24;XW=inv(X*X)*X;k=1;B(k,:)=1,1,1,1,1,1,1,1;flag=0;c=1;while(1) W(k,:)=XW*B(k,:); e=X*W(k,:)-B(k,:); if mean(abs(e)1.0e-014|e=0 flag=0; break; end if e=0 flag=1; break; end end k=k+1; B(k,:)=B(k-1,:)+c*(e+abs(e);end if flag=1 fpritf(该模式样本线性不可分n);else fprintf(求得判别函数为:t); fprintf(d(X)=(%s*x1)+(%s*x2)+(%s*x3)+(%s)n,num2str(W(k,1),num2str(W(k,2),num2str(W(k,3),num2str(W(k,4); for i=1:4 w2i=w2i.*-1; end x1=-2:0.01:2; x2=-2:0.01:2; x1 x2=meshgrid(x1,x2); x3=(W(k,1)*x1+W(k,2)*x2+W(k,4)/(-1*W(k,3); surf(x1,x2,x3); hold for i=1:4 plot3(w1i(1),w1i(2),w1i(3),b*); plot3(w2i(1),w2i(2),w2i(3),r); endendtitle(LMSE算法判别界面及样本分布图); 附录四Parzen估计算法程序clc;clear;X=randn(1,3000);px=normpdf(X,0,1); % N=1的情况 %pNx1_1=parzen(0.25,1,X);pNx1_2=parzen(1,1,X);pNx1_3=parzen(4,1,X); subplot(221);plot(X,px,.);grid on;title(原概率分布);subplot(222)plot(X,pNx1_1,.);grid on;title(N=1,h1=0.25的Parzen窗估计);subplot(223);plot(X,pNx1_2,.);grid on;title(N=1,h1=1的Parzen窗估计);subplot(224);plot(X,pNx1_3,.);grid on;title(N=1,h1=4的Parzen窗估计); % N=16的情况 %pNx16_1=parzen(0.25,16,X);pNx16_2=parzen(1,16,X);pNx16_3=parzen(4,16,X);figure;subplot(221);plot(X,px,.);grid on;title
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 生物样本与微生物检验的关联试题及答案
- 方法论学习的证券从业资格证考试试题及答案
- 注册会计师考试备考过程中资源的有效整合与利用试题及答案
- 项目管理专业人士的重要技能及试题答案
- 注册会计师备考综合模拟技巧试题及答案
- 2025年公司新员工试用期个人工作总结(29篇)
- 幼儿园语言文字规范的工作计划(30篇)
- 八年级生物上册期末教学工作总结(3篇)
- 2025年证券从业资格证金融市场题型分析试题及答案
- 微生物检验实践中的伦理考虑试题及答案
- 广东省地质灾害危险性评估实施细则(2023年修订版)
- 梯子的安全使用课件
- 《非税收入征收管理》课件
- 老年人的口腔知识讲座
- 西格列汀二甲双胍缓释片-药品解读
- 政府采购工作的不足和整改措施
- Unit1+Art+Ancient+Reading+and+Thinking+Chinese+Art+on+show教学设计 高中英语人教选择性必修第三册
- 自驾车出差油费报销单
- 隧道超前地质预报(课件)
- 平移(1)课件 人教版数学四年级下册
- 建筑装饰工程施工总平面布置图
评论
0/150
提交评论