FISHER线性判别MATLAB实现_第1页
FISHER线性判别MATLAB实现_第2页
FISHER线性判别MATLAB实现_第3页
FISHER线性判别MATLAB实现_第4页
FISHER线性判别MATLAB实现_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

1、Fisher线性判别上机实验报告班级:学号:姓名:Fisher线性判别分析的基本思想:选择一个投影方向(线性变换,线性组合) 将高维问题降低到一维问题来解决,同时变换后的一维数据满足每一类内部的样本W和阈值尽可能聚集在一起,不同类的样本相隔尽可能地远。Fisher线性判别分析,就是通过给定的训练数据,确定投影方向W0,即确定线性判别函数,然后根据这个线性判别函数,对测试数据进行测试,得到测试数据的类别。线性判别函数的一般形式可表示成g (X) WTX Wo其中XiXXdw1w2WdFisher选择投影方向W的原则,即使原样本向量在该方向上的投影能兼顾类间分布尽可能分开,类内样本投影尽可能密集的

2、要求。如下为具体步骤:(1)W的确定各类样本均值向量mi1 mi X, i 1,2NixXi样本类内离散度矩阵Si和总类内离散度矩阵 SwS (X mi)(x mi)T, i 1,2x XiSWSiS2样本类间离散度矩阵SbSb (m m2)(m m2)T在投影后的一维空间中,各类样本均值mi'= W Tmi样本类内离散度和总类内离散度 S' = WTSi W Sv' = WTSwW 样本类间离散度Sb' = WSbWFisher准则函数为maxjF(W)夢(2)阈值的确定Wo是个常数,称为阈值权,对于两类问题的线性分类器可以采用下属决策规则g(x)g1(x)

3、g2(x)令则:如果g(x)>0,则决策x w ;如果g(x)<0,则决策x W2;如果g(x)=0,则可将x任意分到某一类,或拒绝。(3)Fisher线性判别的决策规则Fisher准则函数满足两个性质:1.投影后,各类样本内部尽可能密集,即总类内离散度越小越好。2.投影后,各类样本尽可能离得远,即样本类间离散度越大越好。根据这个性质确定准则函数,根据使准则函数取得最大值,可求出W : W = S- (rn - %)。这就是Fisher判别准则下的最优投影方向。最后得到决策规则g(x) wTe)大于或小于logP5x W1,则 lW2对于某一个未知类别的样本向量 x,如果y=W T

4、x>y0,则x w1 ;否则x w2。l.iris数据IRIS数据集以鸢尾花的特征作为数据来源,数据集包含150个数据集,有4维,分为3类,每类50个数据,每个数据包含 4个属性,是在数据挖掘、数据分类中非常常用的测试集、训练集。2.sonar 数据Sonar数据集包含208个数据集,有60维,分为2类,第一类为98个数据,第二类为110个数据,每个数据包含 60个属性,是在数据挖掘、数据分类中非常常用的测试集、训练集。三.实验结果以及源代码l.iris(1)代码:ciccleardata=xlsread( 'Iris');lris1=data(1:50,1:4);lri

5、s2=data(51:100,1:4);Iris3=data(101:150,1:4);%类均值向量m1 = mea n( Irisi);m2 = mea n(lns2);m3 = mea n(lns3);%各类内离散度矩阵si = zeros(4);s2 = zeros(4);s3 = zeros(4);for i=1:1:30si = s1 + (Iris1(i,:) - m1)'*(lris1(i,:) - m1);endfor i=1:1:30s2 = s2 + (Iris2(i,:) - m2)'*(lris2(i,:) - m2);endfor i=1:1:30s3

6、 = s3 + (Iris3(i,:) - m3)'*(lris3(i,:) - m3);end%总类内离散矩阵sw12 = si + s2;sw13 = si + s3;sw23 = s2 + s3;%投影方向w12 = (sw12A-1)*(m1 - m2)')'w13 = (sw13A-1)*(m1 - m3)')'w23 = (sw23A-1)*(m2 - m3)')'%判别函数以及阈值 T (即w0 )T12 = -0.5 * (m1 + m2)*i nv(sw12)*(m1 - m2)'T13 = -0.5 * (m1

7、 + m3)*i nv(sw13)*(m1 - m3)'T23 = -0.5 * (m2 + m3)* in v(sw23)*(m2 - m3)'kindl = 0;kind2 = 0;kind3 = 0;n ewiris1=;n ewins2=;n ewiris3=;for i=31:50x = Iris1(i,:);g12 = w12 * x' + T12;g13 = w13 * x' + T13;g23 = w23 * x' + T23;if(g12 > 0)&(g13 > 0)n ewiris1= n ewiris1;x;ki

8、n d1=k in d1+1;g12 = w12 * x' + T12;endelseif (g12 < 0)&(g23 > 0)n ewiris2=n ewiris2;x;elseif (g13 < 0)&(g23 < 0)endfor i=31:50endn ewiris3=n ewins3;x;x = Iris2(i,:);g12 = w12 * x' + T12;g13 = w13 * x' + T13;g23 = w23 * x' + T23;if(g12 > 0)&( g13 > 0)n e

9、wiris1= n ewiris1;x;elseif (g12 < 0)&(g23 > 0)kin d2=k in d2+1;n ewiris2= newiris2;x;elseif (g13 < 0)&(g23 < 0)endfor i=31:50n ewiris3=n ewiris3;x;x = Iris3(i,:);g13 = w13 * x' + T13;g23 = w23 * x' + T23;if(g12 > 0)&(g13 > 0)n ewiris1= n ewiris1;x;elseif(g12 <

10、; 0)&(g23 > 0)n ewiris2=n ewiris2;x;elseif(g13 < 0)&(g23 < 0)kin d3=ki nd3+1;n ewiris3=n ewiris3;x;endendcorrect=(ki nd1+ki nd2+ki nd3)/60;fprintf( 'n 综合正确率:%.2f%nn',correct* 100);(2)实验结果:综合正确率=96.67%2.S onar(1)代码:clccleardata=xlsread( 'sonar');So nar仁data(1:98,1:60)

11、;So nar2=data(99:208,1:60);%类均值向量m1 = mean(Son ar1);m2 = mean(Son ar2);%各类内离散度矩阵s1 = zeros(60);s2 = zeros(60);for i=1:1:70s1 = s1 + (Son ar1(i,:) - m1)'*(So nar1(i,:) - m1);endfor i=1:1:80s2 = s2 + (So nar2(i,:) - m2)'*(So nar2(i,:) - m2);end%总类内离散矩阵sw12 = s1 + s2;%投影方向w12 = (sw12A-1)*(m1 -

12、m2)')'%判别函数以及阈值 T (即w0 )T12 = -0.5 * (m1 + m2)*i nv(sw12)*(m1 - m2)'kindl =0;kind2 =0;n ews on ar1=;n ews on ar2=;for i=71:98x = Son ar1(i,:);g12 = w12 * x' + T12;if g12 > 0n ews on ar1= news on ar1;x;kin d1=k in d1+1;elsen ews on ar2= news on ar2;x;endendfor i=81:110x = Son ar2(i,:);g12 = w12 * x' + T12;i

温馨提示

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

评论

0/150

提交评论