模式识别作业.docx
- 文档编号:7189364
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:24
- 大小:186.56KB
模式识别作业.docx
《模式识别作业.docx》由会员分享,可在线阅读,更多相关《模式识别作业.docx(24页珍藏版)》请在冰豆网上搜索。
模式识别作业
6.题目:
Fisher分类和基于核的Fisher分类的设计与实现研究
具体内容:
1.简述Fisher分类和基于核的Fisher分类的算法原理;
2.举出实例;
3.用MATlAB软件编写程序实现;
4.分析实验结果。
Fisher分类和基于核的Fisher分类的设计与实现研究
1Fisher分类和基于核的Fisher分类的算法原理
1.1Fisher线性判别的算法原理
Fisher判别分析法对样本数据也没什么要求,而且可以弥补距离判别作外延计算时计算量大的问题,一般情况下,其判别的效果也比距离判别更好些。
由于Fisher判别分析法不需要对样本数据进行检验,而且有一定的正确率,因此在实际中它被广泛的应用。
假设有一集合X包含n个d维样本X={x1,…,xn},其中n1个属于w1类的样本记为X1={
,…,
},n2个属于w2类的样本记为X2={
,…,
}。
,n=1,2,3,…
根据上式从几何上看,如果
=1,则每个
就是相对应得
到方向为w的直线上的投影,w的方向不同,将使样本投影后的分离程度不同,从而直接影响识别效果。
Fisher线性判别所要解决的基本问题是找到一个最好的投影方向(如图1所示),使样本在这个方向上的投影能最好,最易于分类。
寻找最好投影方向的问题在数学上就是寻找最好的变换向量
的问题。
因此Fisher判别分析的基本思想就是投影,即将k类n维数据投影到某个方向,是组与组间的距离最大,也即采用方差分析的思想。
判别函数的参数向量如下:
在D维X空间:
1)各样本均值向量
,
2)样本类内离散度矩阵
和各类内离散矩阵
3)样本间离散度矩阵
我们最终可得Fisher准则函数为:
其希望各类样本内部尽量密集,样本间尽可能分得开些。
图1Fisher线性判别的基本原理
1.2核Fisher判别分析方法的理论基础
Fisher判别分析方法是一种典型的线性判别方法。
它的基本思路是对原数据系统进行坐标变换,寻求能将总体尽可能分开的方法,即采用方差分析的思想。
对样本线性分类问题,传统Fisher判别方法的判别能力得到了普遍认可,然而对于非线性问题,线性判别函数无法有效地区分不同特征的样本。
在这种情况下,构造判别函数可以采用复杂的非线性分布函数,但在具体实现时,有很多困难。
因此,可以考虑采用非线性投影方法,即通过非线性映射把原始数据投影到特征空间中,然后在特征空间中用线性Fisher判别达到分类目的。
但是,若特征空间的维数非常高,甚至是无限维的空间时,求解将非常困难。
因此,针对该问题,可以引进核函数,将高维空间的内积计算转化为原空间的内积计算,这样就可以简化计算。
设
是一个原空间到某个特征空间H的非线性映射。
它把原空间中的样本点非线性的映射到特征空间中。
在H找一个线性Fisher判别函数,使下式达到最大。
Max
,
这里w∈H,是Fisher判别的解,
和
是H中的相应矩阵,分别为
,
,
,
。
根据再生核理论,在特征空间中任意一个解向量w∈H是特征空间H中训练样本的组合,因而可以找到w的扩展形式:
,
于是有
,
式中定义
,是第i类个样本与总体内积和的均值,
现在来考虑式(3)中的分子,利用
的定义(4)和(8),它可重写为
,
式中
。
再来考虑式(3)中的分母.利用式(7),(6)及式(9)中类似的变换,得到
式中
,
其中
是第j类的核矩阵
,I是单位矩阵,
是所有元素为
的矩阵。
把式(9)和(10)代入式(3),可得到特征空间F的Fisher线性判别,即最大化
,
类似于输入空间的算法,这个问题的求解可以通过求矩阵N-1M的特征值和特征矢量,或者等效地计算
得到。
则新模式x到w的投影为
,
显然,所提出的设置是非适定的。
因为要从n个样本中估计n维的协方差结构,而特征空间的维数等于或高于训练样本数目n,因此就有必要利用正则化技术。
可以给N加上一个单位阵的倍数,即用矩阵Nμ代替矩阵N,
,
来惩罚
,或者给N加上一个全核矩阵
的倍数来惩罚
。
在实际中根据需要选取μ的值。
对矩阵做这种变换有如下优点:
1.该方法降低了样本特征值估计的偏差;
2.它会使数值求解更加稳定,μ足够大会变成正定矩阵;
3.方法对
进行了正规化,最佳结果具有最小的扩展系数。
在本题中我们采用已知两类三维数据样本点进行训练以达到最佳权值对个待测样本点进行聚类,实现聚类。
其基本思想是将三维空间中的样本投影到一条最易于分类的投影线上,再进行分类。
已知两类数据样本点sample1,sample2,以及待测样本点yb(其具体数据请见主程序)。
在下节中我们讲述如何通过mathlab软件实现Fisher线性判别准则设计分类器的仿真。
2Matlab软件实现
2.1仿真步骤
1.建立数据源,我们这里运用的是三维空间。
两类数据样本进行训练达到最佳的权值。
将x1,y1,z1构成第一类样本点sample1。
同理,将x2,y2,z2构成样本点sample2;
2.给出两类数据线性可分的先验概率,并给出一组待测数据yb,判断它分别属于哪一类;
3.求出各样本的均值向量mi;
4.样本类内离散度矩阵Si与总类内离散度矩阵Sw,并确定最佳W值,并利用先验知识确定分界阈值点;
5.根据最佳W值,计算各类的各点在W上的投影向量;
6.求解待测样本点的投影,再对样本点进行判决;并将其判为第一类或第二类的样本点用不同颜色和符号标出其位置及投影点。
(见仿真截图)
2.2源程序
2.2.1主程序
%基于Fisher准则线性分类器设计
closeall
clearall
echooff
%先验概率
p1=0.6;%第一类数据
p2=0.4;%第二类数据
%已知样本
x1=[0.23311.52070.64990.77571.05241.1974...
0.29080.25180.66820.56220.90230.1333...
-0.54310.9407-0.21260.0507-0.08100.7315...
0.33451.0650-0.02470.10430.31220.6655...
0.58381.16531.26530.8137-0.33990.5152...
0.7226-0.20150.4070-0.1717-1.0573-0.2099];
y1=[2.33852.19461.67301.63651.78442.0155...
2.06812.12132.47971.51181.96921.8340...
1.87042.29481.77142.39391.56481.9329...
2.20272.45681.75231.69912.48831.7259...
2.04662.02262.37571.79872.08282.0798...
1.94492.38012.23732.16141.92352.2604];
z1=[0.53380.85141.08310.41641.11760.5536...
0.60710.44390.49280.59011.09271.0756...
1.00720.42720.43530.98690.48411.0992...
1.02990.71271.01240.45760.85441.1275...
0.77050.41291.00850.76760.84180.8784...
0.97510.78400.41581.03150.75330.9548];
x2=[1.40101.23012.08141.16551.37401.1829...
1.76321.97392.41522.58902.84721.9539...
1.25001.28641.26142.00712.18311.7909...
1.33221.14661.70871.59202.93531.4664...
2.93131.83491.83402.50962.71982.3148...
2.03532.60301.23272.14651.56732.9414];
y2=[1.02980.96110.91541.49010.82000.9399...
1.14051.06780.80501.28891.46011.4334...
0.70911.29421.37440.93871.22661.1833...
0.87980.55920.51500.99830.91200.7126...
1.28331.10291.26800.71401.24461.3392...
1.18080.55031.47081.14350.76791.1288];
z2=[0.62101.36560.54980.67080.89321.4342...
0.95080.73240.57841.49431.09150.7644...
1.21591.30491.14080.93980.61970.6603...
1.39281.40840.69090.84000.53811.3729...
0.77310.73191.34390.81420.95860.7379...
0.75480.73930.67390.86511.36991.1458];
%第一类样本集每一列为一组待测数据
sample1=[x1;y1;z1];
%第二类样本集每一列为一组待测数据
sample2=[x2;y2;z2];
%待测数据每一列为一组待测数据
yb=[1.00001.20002.00001.20000.2300;
1.50001.00000.90001.50002.3300;
0.60000.55000.68000.89001.4300;];
%在d维X空间中
%各类样本的均值向量
m1=mean(sample1,2);%第一类
m2=mean(sample2,2);%第二类
%样本类内离散度矩阵
s1=zeros(size(sample1,1));
NUM1=length(x1);%第一类样本数
forii=1:
NUM1
s1=s1+(sample1(:
ii)-m1)*(sample1(:
ii)-m1)';
end%第一类
s2=zeros(size(sample2,1));
NUM2=length(x2);%第二类样本数
forii=1:
NUM2
s2=s2+(sample2(:
ii)-m2)*(sample2(:
ii)-m2)';
end%第二类
%总类内离散度矩阵
sw=p1*s1+p2*s2;
%最佳投影方向
w=inv(sw)*(m1-m2);
%投影直线
t=[0:
0.01:
4];
xt=w
(1)*t;
yt=w
(2)*t;
zt=w(3)*t;
plot3(xt,yt,zt,'g');
holdon
%在一维Y空间中
%各类样本的均值
mf1=w'*m1;%第一类
mf2=w'*m2;%第二类
%利用先验知识确定分界阈值点
w0=(mf1+mf2)/2+log(p1/p2)/(NUM1+NUM2-2);
%描出所有给定样本点的位置
forii=1:
size(sample1,2)%第一类样本
plot3(sample1(1,ii),sample1(2,ii),sample1(3,ii),'r*')
end
forii=1:
size(sample2,2)%第二类样本
plot3(sample2(1,ii),sample2(2,ii),sample2(3,ii),'b*')
end
%求解待测样本点的投影
point=tyf(w,yb);
%分类判决
forii=1:
size(yb,2)
ifw'*yb(:
ii)>w0%将其判为第一类并标出其位置及投影点
disp('A')
plot3(yb(1,ii),yb(2,ii),yb(3,ii),'m+')
plot3(point(1,ii),point(2,ii),point(3,ii),'m*')
else%将其判为第二类并标出其位置及投影点
disp('B')
plot3(yb(1,ii),yb(2,ii),yb(3,ii),'c+')
plot3(point(1,ii),point(2,ii),point(3,ii),'c*')
end
end
gridon
2.2.2调用函数
%求解投影点
function[tyfv]=tyf(w,point)
temp1=w'*point;
temp2=w/(w'*w);
tyfv=temp2*temp1;
3仿真截图和结果分析
3.1仿真截图:
3.2结果分析
Fisher判别分析方法是统计数据分析中一种标准的线性技术,Fisher线性判别是线性分类算法中最基本的一种算法,其基本思想是将d维空间中的样本投影到一条最易于分类的投影线上,再进行分类。
然而它的局限性是它只能应用于线性空间。
应用核Fisher判别分析方法可以成功地解决了多总体分类问题,并能给出了理论分析。
将其应用于科研项目评估分析,结果表明核Fisher判别分析方法的判别能力比Fisher判别分析方法有很大程度的提高。
传统的Fisher判别只能局限于线性空间,在处理非线性问题时往往不能取得好的果。
核Fisher判别法是一种基于Fisher线性判别的非线性判别法。
这种方法由于使用了核技巧,从而将Fisher判别推广到了非线性空间,有效地提高了判别分类效果。
参考文献
[1]梅桢,申琦,冶保献.基于杂交式基因选择的核Fisher分类算法[J].郑州大学学报(理学版),2008,(02).
[2]吴静进,罗小青.分形图像编码的研究[J].科技广场,2008,(08).
[3]方妙辉.毛竹林节肢动物群落时间格局及其Fisher分类[J].竹子研究汇刊,2006,(03).
[4]闫冰,张虹.静止图像编码方法[J].中小企业科技,2007,(06).
[5]田端财,殷晓丽.基于哈夫曼编码的图像压缩技术研究[J].科技资讯,2009,(08).
[6]刘正波,孙群中,姚美玲.分形图像编码及其改进算法[J].科技资讯,2008,(10).
[7]焦莉莉,刘丽,马苗.改进的自适应阈值小波图像抑噪算法[J].中国体视学与图像分析,2009,(02).
[8]裴晓梅,和卫星,郑崇勋.基于脑电复杂度的意识任务的特征提取与分类[J].中国生物医学工程学报,2005,(04).
[9]万柏坤,郑旭媛,朱欣,杨春梅,吕杨生.癫痫脑电特征波的综合检测分类方法研究[J].中国生物医学工程学报,2002,(03).
[10]张雄伟,牛俊英,李艳萍,张红丽.周期性脑电异常的分类及临床意义[J].中国神经精神疾病杂志,2003,(06).
[11]边肇祺等.模式识别[M].清华大学出版社,1988
[12]齐敏,李大健,郝重阳编著.模式识别导论[M].清华大学出版社,2009
20.题目:
模糊相似关系直接用于分类
具体内容:
1.简述原理;
2.举出实例;
3.用MATlAB软件编写程序实现;
4.分析实验结果。
模糊相似关系直接用于分类
1模糊相似关系原理
对于具有自反性和对称性的模糊相似关系,需要用平方法生成模糊等价矩阵,然后才能用截矩阵正确分类,但多次矩阵相乘,计算麻烦,耗费时机很多,特别是当元素个数很多时,这一问题变得更为严重。
故模糊相似矩阵直接进行聚类的方法被普遍运用,一般有:
最大树法,和编网法等。
下面以最大树法为例:
第一步:
画出被分类的元素集。
从矩阵R中按
从大到小的顺序依次连边,标上权重,如果在某步出现回路,便不画那一步,直到所有元素连通为止。
画出的元素集可以不唯一;
第二步:
分类。
取定
,砍去权重低于
的边,即为分类,也就是将互通的元素归为同类。
而在模糊相似关系直接用于分类最重要的是如何通过原始数据得到普通的模糊矩阵,建立模糊关系。
聚类分析的基本思想是用相似尺度来衡量事物之间的亲疏程度,并以此来实现分类,模糊聚类分析的实质是根据对象本身的属性来构造模糊矩阵,在此基础上根据一定的隶属度来确定分类关系。
1)建立原始数据矩阵
设论域
为n个待分类的对象,每个对象有m个指标表示其性质,
由此可得到原始数据矩阵
2)样本数据标准化
对上述矩阵进行可用标准差变换或极差变换,将数据压缩到[0,1]:
标准差变换:
其中k=1,2,…,m
极差变换:
当
=
时,
1;当
,
0;否则取[0,1]之间的值。
3)构造模糊相似矩阵根据各分类对象的不同指标的标准化数据,计算分类对象间的相似程度
,建立模糊相似矩阵R,该操作又称标定,计算标定的方法很多,主要有欧式距离法、余弦夹角法、相关系数法、最大最小法、最小算术平均法、最小几何平均法等;
4)再根据最大树法对其进行分类,得到最后分类结果。
其框图表示如下:
图1程序框图
下面我们已知15个班的五科平均成绩:
语文,数学,英语,物理,化学。
然后对这15个班的成绩运用模糊相似关系直接进行分类,在这里我们采用最大树法对这些数据进行分类。
下面通过mathlab软件进行仿真实验,通过不同的截位r对其进行聚类。
2Matlab软件实现
2.1仿真步骤
1)读入原始数据,对原始数据进行标准标准化:
这里的标准化是通过标准差变换和极差变换。
通过改变F_JlSjBzh(cs,X)函数中的cs来选择标准化的方式:
cs=0,不变换;cs=1,标准差变换:
cs=2,极差变换;
2)对标准化后的数据进行模糊聚类分析建立模糊相似矩阵,主要通过F_JlR(cs,X)函数来建立相似矩阵,通过改变参数cs的值来改变标准化的方式:
%X,数据矩阵cs=1,数量积法;cs=2,夹角余弦法;cs=3,相关系数法;cs=4,指数相似系数法;cs=5,最大最小法;cs=6,算术平均最小法;cs=7,几何平均最小法;cs=8,直接欧几里得距离法;cs=9,直接海明距离法(绝对值减数法);cs=10,直接切比雪夫距离法;cs=11,倒数欧几里得距离法;cs=12,倒数海明距离法(绝对值倒数法);cs=13,倒数切比雪夫距离法;cs=14,指数欧几里得距离法;cs=15,指数海明距离法(绝对值指数法);cs=16,指数切比雪夫距离法。
3)运用最大树法对相似矩阵中的R(i,j)值进行排序:
在这里我们通过冒泡法来对它们进行排序,再构造最大树;
4)设定一个水平截位r来对进行截位,砍去权重低于r的边,即为分类,就是将互相连通的元素归为同类;
5)最后实现和显示分类。
2.2源程序
2.2.1主程序
functionF_Jlfx_mohujulei(bzh,fa,X)%%bzh数据标准化类型;fa建立模糊相似矩阵的方法;X原始数据矩阵
X=[6087949590
7768818194
64100868583
7266656870
60889710096
6287949791
6687838586
6867658979
8069787790
6180637265
6870857388
8068777592
8992776775
7678667577
68739710096]
X=F_JlSjBzh(2,X);%模糊聚类分析数据标准化变换%X原始数据矩阵;cs=0,不变换;cs=1,标准差变换:
cs=2,极差变换
R=F_JlR(14,X);%%模糊聚类分析建立模糊相似矩阵
[m,n]=size(R);
r=0.8;
p=m*(n-1)/2;
k=1;
for(j=1:
m)
for(i=j+1:
n)
T(k,1:
3)=[i,j,R(i,j)];%T(k,1)记录点i,T(k,2)记录点j,T(k,3)记录边ij的相似度
k=k+1;
end;
end;
for(u=1:
p-1)%冒泡法边的值从大到小排序
for(k=1:
p-u)
if(T(k,3) tmax=T(k+1,1: 3); T(k+1,1: 3)=T(k,1: 3); T(k,1: 3)=tmax; end; end; end; %----------------------------构造最大树,顶点和边信息保留在Tr E(1: n)=0; s=1; for(k=1: p) if(E(T(k,1))==0&&E(T(k,2))==0) Tr(s,1: 3)=T(k,1: 3); s=s+1; E(T(k,1))=T(k,1); E(T(k,2))=T(k,1); continue end if(E(T(k,1))==0&&E(T(k,2))~=0) Tr(s,1: 3)=T(k,1: 3); s=s+1; E(T(k,1))=E(T(k,2)); continue end if(E(T(k,1))~=0&&E(T(k,2))==0) Tr(s,1: 3)=T(k,1: 3); s=s+1; E(T(k,2))=E(T(k,1)); continue end if(E(T(k,1))~=0&&E(T(k,2))~=0&&E(T(k,1))~=E(T(k,2))) Tr(s,1: 3)=T(k,1: 3); s=s+1; for(a=1: n) if(E(a)==E(T(k,1))) E(a)=E(T(k,2)); end end end end %--------------------------------------去掉小于r的边信息 z=length(Tr(: 1)); s=1; for(k=1: z) if(Tr(k,3)>=r) Ta(s,1: 3)=Tr(k,1: 3); s=s+1; end end %---------------------同上构造tree,同在一棵树的为一类 pp=length(Ta(: 1)); E(1: n)=0; for(k=1: pp) if(E(Ta(k,1))==0&&E(Ta(k,2))==0) E(Ta
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模式识别 作业