《基于Fisher准则线性分类器设计实验报告.doc》由会员分享,可在线阅读,更多相关《基于Fisher准则线性分类器设计实验报告.doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于Fisher准则线性分类器设计实验报告北京邮电大学模式识别实验 专业: 学生姓名: 指导教师: 完成时间: 实验二:基于Fisher准则线性分类器设计 目录 一、实验类型 2 二、实验目的 2 三、实验条件 2 四、实验原理 2 五、实验内容 4 六、实验要求 7 七、实验结果 7 1、代码 7 2、 决策面 11 3、 参数 11 决策面向量 11 阈值 11 样本点分类 11 八、 实验分析p 13 1、 比例因子 13 2、语法障碍 13 一、实验类型 设计型:线性分类器设计(Fisher准则)二、实验目的 本实验旨在让同学进一步了解分类器的设计概念,能够根据自己的设计对线性分类器有
2、更深刻地认识,理解Fisher准则方法确定最佳线性分界面方法的原理,以及Lagrande乘子求解的原理。三、实验条件 matlab软件 四、实验原理 线性判别函数的一般形式可表示成其中 根据Fisher选择投影方向W的原则,即使原样本向量在该方向上的投影能兼顾类间分布尽可能分开,类内样本投影尽可能密集的要求,用以评价投影方向W的函数为:上面的公式是使用Fisher准则求最佳法线向量的解,该式比较重要。另外,该式这种形式的运算,我们称为线性变换,其中式一个向量,是的逆矩阵,如是d维,和都是dd维,得到的也是一个d维的向量。向量就是使Fisher准则函数达极大值的解,也就是按Fisher准则将d维
3、_空间投影到一维Y空间的最佳投影方向,该向量的各分量值是对原d维特征向量求加权和的权值。以上讨论了线性判别函数加权向量W的确定方法,并讨论了使Fisher准则函数极大的d维向量 的计算方法,但是判别函数中的另一项尚未确定,一般可采用以下几种方法确定如或者或当与已知时可用 当W0确定之后,则可按以下规则分类, 使用Fisher准则方法确定最佳线性分界面的方法是一个著名的方法,尽管提出该方法的时间比较早,仍见有人使用。五、实验内容 已知有两类数据和二者的概率已知=0.6, =0.4。中数据点的坐标对应一一如下:数据:_1 = 0.2331 1.5207 0.6499 0.7757 1.0524 1
4、.1974 0.2908 0.2518 0.6682 0.5622 0.9023 0.1333 -0.5431 0.9407 -0.2126 0.0507 -0.0810 0.7315 0.3345 1.0650 -0.0247 0.1043 0.3122 0.6655 0.5838 1.1653 1.2653 0.8137 -0.3399 0.5152 0.7226 -0.20_ 0.4070 -0.1717 -1.0573 -0.2099 _2 = 2.3385 2.1946 1.6730 1.6365 1.7844 2.0155 2.0681 2.1213 2.4797 1.5118 1
5、.9692 1.8340 1.8704 2.2948 1.7714 2.3939 1.5648 1.9329 2.2027 2.4568 1.7523 1.6991 2.4883 1.7259 2.0466 2.0226 2.3757 1.7987 2.0828 2.0798 1.9449 2.3801 2.2373 2.1614 1.9235 2.2604 _3 = 0.5338 0.8514 1.0831 0.4164 1.1176 0.5536 0.6071 0.4439 0.4928 0.5901 1.0927 1.0756 1.0072 0.4272 0.4353 0.9869 0.
6、4841 1.0992 1.0299 0.7127 1.0124 0.4576 0.8544 1.1275 0.7705 0.4129 1.0085 0.7676 0.8418 0.8784 0.9751 0.7840 0.4158 1.0315 0.7533 0.9548 数据点的对应的三维坐标为 _1 = 1.4010 1.2301 2.0814 1.1655 1.3740 1.1829 1.7632 1.9739 2.4152 2.5890 2.8472 1.9539 1.2500 1.2864 1.2614 2.0071 2.1 1.7909 1.3322 1.1466 1.7087
7、1.5920 2.9353 1.4664 2.9313 1.8349 1.8340 2.5096 2.7198 2.3148 2.0353 2.6030 1.2327 2.1465 1.5673 2.9414 _2 = 1.0298 0.9611 0.9154 1.4901 0.820_0.9399 1.1405 1.0678 0.8050 1.2889 1.4601 1.4334 0.7091 1.2942 1.3744 0.9387 1.2266 1.3 0.8798 0.5592 0.5150 0.9983 0.9120 0.7126 1.2833 1.1029 1.2680 0.714
8、0 1.2446 1.3392 1.1808 0.5503 1.4708 1.1435 0.7679 1.1288 _3 = 0.6210 1.3656 0.5498 0.6708 0.8932 1.4342 0.9508 0.7324 0.5784 1.4943 1.0915 0.7644 1.2159 1.3049 1.1408 0.9398 0.6197 0.6603 1.3928 1.4084 0.6909 0.8400 0.5381 1.3729 0.7731 0.7319 1.3439 0.8142 0.9586 0.7379 0.7548 0.7393 0.6739 0.8651
9、 1.3699 1.1458 数据的样本点分布如下图:图 1:样本点分布图 六、实验要求 1) 请把数据作为样本,根据Fisher选择投影方向的原则,使原样本向量在该方向上的投影能兼顾类间分布尽可能分开,类内样本投影尽可能密集的要求,求出评价投影方向的函数,并在图形表示出来。并在实验报告中表示出来,并求使取极大值的。用matlab完成Fisher线性分类器的设计,程序的语句要求有注释。2) 根据上述的结果并判断(1,1.5,0.6)(1.2,1.0,0.55),(2.0,0.9,0.68),(1.2,1.5,0.89),(0.23,2.33,1.43),属于哪个类别,并画出数据分类相应的结果图
10、,要求画出其在上的投影。3) 回答如下问题,分析p 一下的比例因子对于Fisher判别函数没有影响的原因。七、实验结果 1、代码 _1=0.2331 1.5207 0.6499 0.7757 1.0524 1.1974 0.2908 0.2518 0.6682 0.5622 0.9023 0.1333 -0.5431 0.9407 -0.2126 0.0507 -0.0810 0.7315 0.3345 1.0650 -0.0247 0.1043 0.3122 0.6655 0.5838 1.1653 1.2653 0.8137 -0.3399 0.5152 0.7226 -0.20_ 0.4
11、070 -0.1717 -1.0573 -0.2099; y1=2.3385 2.1946 1.6730 1.6365 1.7844 2.0155 2.0681 2.1213 2.4797 1.5118 1.9692 1.8340 1.8704 2.2948 1.7714 2.3939 1.5648 1.9329 2.2027 2.4568 1.7523 1.6991 2.4883 1.7259 2.0466 2.0226 2.3757 1.7987 2.0828 2.0798 1.9449 2.3801 2.2373 2.1614 1.9235 2.2604; z1=0.5338 0.851
12、4 1.0831 0.4164 1.1176 0.5536 0.6071 0.4439 0.4928 0.5901 1.0927 1.0756 1.0072 0.4272 0.4353 0.9869 0.4841 1.0992 1.0299 0.7127 1.0124 0.4576 0.8544 1.1275 0.7705 0.4129 1.0085 0.7676 0.8418 0.8784 0.9751 0.7840 0.4158 1.0315 0.7533 0.9548; 存储第一类点 _2=1.4010 1.2301 2.0814 1.1655 1.3740 1.1829 1.7632
13、1.9739 2.4152 2.5890 2.8472 1.9539 1.2500 1.2864 1.2614 2.0071 2.1 1.7909 1.3322 1.1466 1.7087 1.5920 2.9353 1.4664 2.9313 1.8349 1.8340 2.5096 2.7198 2.3148 2.0353 2.6030 1.2327 2.1465 1.5673 2.9414; y2=1.0298 0.9611 0.9154 1.4901 0.820_0.9399 1.1405 1.0678 0.8050 1.2889 1.4601 1.4334 0.7091 1.2942
14、 1.3744 0.9387 1.2266 1.3 0.8798 0.5592 0.5150 0.9983 0.9120 0.7126 1.2833 1.1029 1.2680 0.7140 1.2446 1.3392 1.1808 0.5503 1.4708 1.1435 0.7679 1.1288; z2=0.6210 1.3656 0.5498 0.6708 0.8932 1.4342 0.9508 0.7324 0.5784 1.4943 1.0915 0.7644 1.2159 1.3049 1.1408 0.9398 0.6197 0.6603 1.3928 1.4084 0.69
15、09 0.8400 0.5381 1.3729 0.7731 0.7319 1.3439 0.8142 0.9586 0.7379 0.7548 0.7393 0.6739 0.8651 1.3699 1.1458; 存储第二类点 Pw1=0.6 Pw2=0.4 求第一类点的均值向量m1 m1_=mean(_1(:) 全部平均 m1y=mean(y1(:) 全部平均 m1z=mean(z1(:) 全部平均 m1=m1_ m1y m1z 求第二类点的均值向量m2 m2_=mean(_2(:) 全部平均 m2y=mean(y2(:) 全部平均 m2z=mean(z2(:) 全部平均 m2=m2_
16、m2y m2z 求第一类类内离散矩阵S1 S1=zeros(3,3) for i=1:36 S1=S1+(_1(i),y1(i),z1(i)-m1)_(_1(i),y1(i),z1(i)-m1) end 求第二类类内离散矩阵S2 S2=zeros(3,3) for i=1:36 S2=S2+(_2(i),y2(i),z2(i)-m2)_(_2(i),y2(i),z2(i)-m2) end 求总类内离散度矩阵Sw Sw=S1+S2 求向量W_W=(inv(Sw)_(m1-m2) 画出决策面 _=0:.1:2.5 y=0:.1:3 _,Y=meshgrid(_,y) Z=(W(1)_+W(2)_Y
17、)/(-W(3) mesh(_,Y,Z) 保持 hold on 透视决策面 hidden off 求第一类样品的投影值均值 Y1=0 for i=1:36 Y1=Y1+W_1(i),y1(i),z1(i) end M1=Y1/36 求第二类样品的投影值均值 Y2=0 for i=1:36 Y2=Y2+W_2(i),y2(i),z2(i) end M2=Y2/36 选取阈值Y0 Y0=(M1+M2)/2+(log(Pw1)/log(Pw2)/70 判定未知样品类别 _1=1,1.5,0.6 if W_1Y0 disp(点_1(1,1.5,0.6)属于第一类) plot3(1,0.5,0.6,or
18、) else disp(点_1(1,1.5,0.6)属于第二类) plot3(1,0.5,0.6,ob) end _2=1.2,1.0,0.55 if W_2Y0 disp(点_2(1.2,1.0,0.55)属于第一类) plot3(1.2,1.0,0.55,or) else disp(点_2(1.2,1.0,0.55)属于第二类) plot3(1.2,1.0,0.55,ob) end _3=2.0,0.9,0.68 if W_3Y0 disp(点_3(2.0,0.9,0.68)属于第一类) plot3(2.0,0.9,0.68,or) else disp(点_3(2.0,0.9,0.68)属
19、于第二类) plot3(2.0,0.9,0.68,ob) end _4=1.2,1.5,0.89 if W_4Y0 disp(点_4(1.2,1.5,0.89)属于第一类) plot3(1.2,1.5,0.89,or) else disp(点_4(1.2,1.5,0.89)属于第二类) plot3(1.2,1.5,0.89,ob) end _5=0.23,2.33,1.43 if W_5Y0 disp(点_5(0.23,2.33,1.43)属于第一类) plot3(0.23,2.33,1.43,or) else disp(点_5(0.23,2.33,1.43)属于第二类) plot3(0.23
20、,2.33,1.43,ob) end 2、 决策面 图 2:决策面(红色代表第一类,蓝色代表第二类)3、 参数 决策面向量 W = -0.0798 0.20_5 -0.0478 阈值 Y0 = 0.1828 样本点分类 _1 = 1.0000 1.5000 0.6000 点_1(1,1.5,0.6)属于第一类 _2 = 1.20_ 1.0000 0.5500 点_2(1.2,1.0,0.55)属于第二类 _3 = 2.0000 0.9000 0.6800 点_3(2.0,0.9,0.68)属于第二类 _4 = 1.20_ 1.5000 0.8900 点_4(1.2,1.5,0.89)属于第二类 _5 = 0.2300 2.3300 1.4300 点_5(0.23,2.33,1.43)属于第一类 八、 实验分析p 1、 比例因子 决策面向量W的比例因子并不影响判别函数。分析p 如下:阈值:判别函数:可以证明,Y0与WT有关,所以当改变WT时,判别函数两边同时改变,所以WT并不影响判别函数。2、语法障碍 由于之前不怎么接触matlab,所以此次实验做得比较漫长。为了方便程序进行矩阵的运算,我把原始数据由矩阵转化成一维向量,后面的求和运算相应的转化为循环结构实现。第 7 页 共 7 页