




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、共享知识分享快乐 模式识别实验报告 班 级:电子信息科学与技术 13级02班 姓 名: 学 号: 指导老师: 成 绩: 通信与信息工程学院 卑微如蝼蚁、坚强似大象 实验一最大最小距离算法 一、实验内容 1. 熟悉最大最小距离算法,并能够用程序写出。 2. 利用最大最小距离算法寻找到聚类中心,并将模式样本划分到各聚类中 心对应的类别中。 二、实验原理 N个待分类的模式样本 XX2 ,Xn,分别分类到聚类中心 乙,Z2 ,Zn 对应的类别之中。 最大最小距离算法描述: (1)任选一个模式样本作为第一聚类中心 Z,。 (2)选择离乙距离最远的模式样本作为第二聚类中心 Z2。 (3)逐个计算每个模式样
2、本与已确定的所有聚类中心之间的距离,并选出 其中的最小距离。 (4) 在所 有最小距离中选出一个最大的 距离,如果 该最大 值达到了 乙Z2的一定分数比值以上,则将产生最大距离的那个模式样本定义为新增的 聚类中心,并返回上一步。否则,聚类中心的计算步骤结束。这里的Z! Z2的 一定分数比值就是阈值T ,即有: T 忆 Z201 (5)重复步骤(3)和步骤(4),直到没有新的聚类中心出现为止。在这个 过程中,当有k个聚类中心Z!,Z2 ,Zn时,分别计算每个模式样本与所有聚 类中心距离中的最小距离值,寻找到N个最小距离中的最大距离并进行判别, 结 果大于阈值T是,Zki存在,并取为产生最大值的相
3、应模式向量;否则,停止寻 找聚类中心。 (6)寻找聚类中心的运算结束后,将模式样本Xi,i 1,2 , N按最近 距离划分到相应的聚类中心所代表的类别之中。 三、实验结果及分析 该实验的问题是书上课后习题 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运行可以求得 Com mjHnd 谢nd* 1*9, s三 三 mm m 三三三 s= s 三 m mss szse 狈晚礁 臭申心为订 从matl
4、ab运行结果可以看出,聚类中心为 ,7,9,以X,为聚类中心的 点有Xi,X2,X3,以X7为聚类中心的点有X4,X5,X6,X7,以X9为聚类中心的有 X8,X9,X10。同时,做出聚类分析后的分布图,如下: 样本坐标聚类显示图 图中用蓝色大圈标记了聚类中心,用星号标记了以Xi为聚类中心的样本, 用三角符号标记了以以X7为聚类中心的样本,用红色小圈标记了以X9为聚类中 心的样本,该程序成功进行了分类 实验二感知器算法 、实验内容 1. 熟悉感知器算法,并能够用程序写出。 2. 利用感知器算法进行判别分类,算出判别函数,画出判别界面 二、实验原理 直接用来对模式进行分类的准则函数。若分属于 1
5、,3 2的两类模式可用一 方程d(X) 0来划分,那么称d(X)为判别函数,或称判决函数、决策函数。如, 一个二维的两类判别问题,模式分布如图示,这些分属于3 i,3 2两类的模式可 用一直线方程d(X) 0来划分。其中d (X) wn w2x2 w3 0式中:x1, x2 为坐标变量。 将某一未知模式X代入: d (X)w2x2 w3 若d(X) 0,则X !类; 若d(X) 0,则X 2类; 若d(X) 0,则X 或X 血或拒绝。 两 类 线 性 可 分 的 模 式 类1, 2 , 设 d(X) WTX 其 中 , W w1,w2, ,wn,wn 1 T , X x1,x2, ,xn,1T
6、 应具有性质 d(X) WT X 0, X 0,X 对样本进行规范化处理,即 2类样本全部乘以(-1),则有: d(X ) W T X 0 感知器算法通过对已知类别的训练样本集的学习, 寻找一个满足上式的权向 量。 感知器算法步骤: (1 )选择N个分属于3 1和3 2类的模式样本构成训练样本集 X1,X2 ,XN 构成增广向量形式, 并进行规范化处理。 任取权向量初始值 W(1), 开始迭代。迭代次数 k=1。 (2)用全部训练样本进行一轮迭代,计算 W k Xi 的值,并修正权向量 分两种情况,更新权向量的值: 1. 若WT k Xi 2 3 0 1 01 ; v2 4 =1 11*; 利
7、用感知器算法,matlab运行得到如下结果: II Command Windc-w 1 Cut ky xcnl plot hrldl 因此,可以得到感知器算法算出的判别函数为: d(X) 3x1 2x2 3x3 1 利用matlab的画图函数画出判别界面以及样本点,得到如下的分布图: 由样本分布图可以看出,判别界面成功将两类训练样本分离 实验三LMSE算法 一、实验内容 1. 了解LMSE算法,并能够用程序写出。 2. 利用LMSE算法进行判别分类,算出判别函数,并画出判别界面。 二、实验原理 LMSE算法为最小平方误差算法,其算法过程如下: (1) 将N个分属于!类和2类的n维模式样本写成增
8、广形式,将属于2的 训练样本乘以( -1 ),写出规范化增广样本矩阵 X 。 (2) 求X的伪逆矩阵X# (XTX)-1XT。 ( 3)设置初值 c 和 B(1), c 为正的校正增量, B(1) 的各分量大于 0,括号 中数字代表迭代次数 k=1 ,开始迭代。 ( 4)计算 e(k) XW (k) B(k) ,进行可分性判别。 如果e(k) 0,模式线性可分,解为W(k),算法结束。 如果e(k) 0,模式线性可分,有解。继续迭代。 如果e(k) 0,停止迭代,检查XW(k)是否大于0。若大于0,有解,否则无 解,算法结束。 ( 5)计算 W (k 1) 和 B(k 1) 先计算 B(k 1
9、) B(k) ce(k) |e(k)|,再计算 W(k 1) X#B(k 1),迭代次 数 k 加 1 ,返回第( 4 )步。 三、实验结果及分析 该实验用的训练样本与感知器算法使用的样本一致,为以下两类训练样本: 1 : (0,0,0)T ,(1,0,0)T,(1,0,1)T,(1,1,0)T 2: (0,0,1)T,(0,1,1)T,(0,1,0)T,(1,1,1)T 设定初始值B(1) (1,1,1,1,1,1,1,1)T,同样地利用matlab中的元胞数组存放训练 样本点,通过编写matlab的LMSE程序可以得到以下结果: Cammi nd Whdz 鵝期別因拚为:di.)=+-22
10、 +卜2*13-:I Currenr ph匸 liel止 如I 所以,LMSE算法求得的该两类训练样本的判别函数为 d(X) 2x1 2x2 2x3 1 利用matlab的画图函数画出判别界面以及样本点,得到如下的分布图: 由样本分布图可以看出,LMSE算法所得的判别界面也成功将两类训练样本 分离。 实验四Parzen窗估计 一、实验内容 1. 了解Parzen窗概率密度的估计方法,能用程序实现。 2. 编写matlab程序,求解一个正态密度的 Parzen窗估计。 二、实验原理 设区域Rn是一个d维的超立方体,并设hN是超立方体的棱长,则超立方体 的体积为定义窗函数(u)为 (u) 1, u
11、j1;j 1,2, ,d 0,其他 由于(u)是以原点为中心的一个超立方体,所以当 Xi落入到以X为中心, 体积为V的超立方体时,(u)(X XJ/hN1,否则(u)0,因此落入该 超立方体内的样本数为 kN (X Xi (hN Pn (X)是p(X)的第N次估计,则有 ?n(X) kN/N Vn 所以联立上面两式得 ?n(X) 1 - (- ) N i i VhN 这个式子就是Parzen窗法的基本公式 三、实验结果与分析 待估计的p(X)的均值为零,方差为1的正态密度函数,利用matlab可以随 1 2 -u 2 (u) 机产生1个,16个,2 5 6个学习样本 Xi的样本集,选取正态窗函
12、数 并设hN ,h1分别取0.25,,0,4.0,利用matlab可以得到不同取值下的 N .2 e 估计结果。 (1)当N 1,h 0.25,1.0,4.0时得到的结果 N=1,h1=0.25 的 Parzen 窗估计 N=1,h1=1 的 Parzen 窗估计 从图中可以看出,估计概率密度函数是一个样本为中心的小丘,误差很大 (2)当N 16,h 0.25,1.0,4.0时得到的结果 原概率分布 0.5 N=l6,h1=0.25 的 Parzen窗 估 计 1.5 r 5 0L -5 N=16,h1=4 的 Parzen 窗估计 从图中可以看出,在h10.25时,噪声误差非常大,产生了不连
13、续性。慢慢 增大时,受到了平滑,但平均性误差也随之增大,分辨率降低。 (3) 当N 256,h 0.25,1.0,4.0时得到的结果 从下图可以看出,当N增大到256,估计量越来越好,在h1 4时,估计量 很接近真实分布。 原概率分布 N=256,h仁0.25 的 Parzen 窗估计 0.8 0.6 0.4 0.2 0 05 N=256,h1=4 的 Parzen 窗估计 -5 N=256,h仁1的Parzen窗估计 0.8 0.6 0.4 0.2 0 -505 从整个实验来看,Parzen窗法只要样本足够多,总可以保证收敛于任何复 杂的未知概率密度函数,但是也受到 hN值的影响,当hN太小
14、时,就会造成不连 续性,噪声误差增大。当hN太大时,分辨率就会下降,平均性误差就会增大。 附录一 最大最小距离算法程序 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(
15、2)=pos; rate=0.5;%分数比值设置为 0.5 T=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; end index=1; max_dist=max(max(min_dist); x
16、y=find(min_dist=max(min_dist); if (max_distT) flag=flag+1; zflag=Xy; position(flag)=y; else break ; end end fprintf( 以下序号的样本为聚类中心 :n for i=1:flag fprintf(%dt ,position(i); end fprintf(n= %计算各样本到各聚类中心的距离 for i=1:10 for j=1:flag distance(i,j)=dist(Xi,zj); end end flag1=1; flag2=1; distance2=distance;
17、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 end end %对聚类结果进行输出 while (flag2=flag) fprintf( n 第%d类的聚类中心为:dn fprintf( 属于第 %d 类的有 :n ,flag2); for i=1:10 if (array(flag2,i)=0) fprintf(%dt ,array(flag2,i); if flag2=1 plot
18、(Xarray(flag2,i)(1),Xarray(flag2,i)(2), ); ); ,flag2,position(flag2); b* ); holdon; end if flag2=2 plot(Xarray(flag2,i)(1),Xarray(flag2,i)(2),black) holdon; end if flag2=3 plot(Xarray(flag2,i)(1),Xarray(flag2,i)(2), title( 样本坐标聚类显示图 ); holdon; end end end fprintf( n ); flag2=flag2+1; end grid on; ax
19、is(0 8 0 9); hold on plot(Xposition(1)(1),Xposition(1)(2), hold on plot(Xposition(2)(1),Xposition(2)(2), hold on plot(Xposition(3)(1),Xposition(3)(2), o , Markersize o , Markersize o , Markersize ro ); ,10); ,10); ,10); 附录二 感知器算法程序 clc;clear; w11 = 0 0 0;w12 =1 0 0;w13 =1 0 1;w14 =1 1 0; w21 = 0 0 1
20、;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; end k=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
21、; 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 ; end end fprintf( 求得判别函数为: t ); ,num2str(W(k,1),num2str fprintf( d(X)=(%s*x1)+(%s*x2)+(%s*x3)+(%s)n (W(k,2),num2str(W(k,3),num2str(W(k,4); for i=1:4 w2i=w2i.*-1; end x1=-2:0
22、.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),rA); end title( 感知器算法判别界面及样本分布图 ); 附录三LMSE算法程序 clc;clear; w11 = 0 0 0;w12 =1 0 0;w13 =1 0 1;w14 =1 1 0; w21 = 0 0 1;w22 =0
23、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; end X=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
24、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 ); ,num2str(W(k,1),num2str ); ); fprintf( d(X)=(%s*x1)+(%s*x2)+(%s*x3)+(%s)n (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=
25、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),rA end end title( LMSE 算法判别界面及样本分布图 ); 附录四Parzen 估计算法程序 clc;clear; X=randn(1,3000); px=normpdf(X,0,1); % N=1 的情况 % pNx1_1=parzen(0.25,1,X); pNx1_2=parze
26、n(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,1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农业银行2025本溪市秋招面试典型题目及参考答案
- 2025年3D打印的医疗应用
- 邮储银行2025南昌市秋招半结构化面试题库及参考答案
- 交通银行2025银川市秋招笔试创新题型专练及答案
- 邮储银行2025莆田市金融科技岗笔试题及答案
- 2025行业可持续发展路径研究
- 反担保协议正规版8篇
- 工商银行2025四平市秋招无领导模拟题角色攻略
- 班组岗位安全培训表模板课件
- 邮储银行2025鞍山市秋招群面模拟题及高分话术
- 广东工业大学年《电机学》期末试题及答案解析
- 解读《义务教育体育与健康课程标准(2022年版)》2022年体育与健康新课标专题PPT
- 2019版外研社高中英语必修三单词默写表
- 食堂合作协议范本食堂档口合作协议.doc
- 直接还原铁生产工艺
- 建筑识图题库及答案
- 《幂的运算》习题精选及答案
- 异质结TCO设备:RPD与PVD比较分析(2021年).doc
- PPT汇报评分表(共1页)
- ESD防静电培训教材.ppt
- 《春》复习课件
评论
0/150
提交评论