1基于Matlab的模糊聚类分析及其应用《管理数学实验》课程汇报学号:2120111705姓名:贾珊预备知识1基于MATLAB的模糊聚类分析的传递方法2实例应用3Contents31.预备知识聚类分析和模糊聚类分析模糊相似矩阵模糊等价矩阵模糊矩阵的-截矩阵模糊传递闭包和等价闭包4定义一:(模糊)聚类分析在科学技术,经济管理中常常需要按一定的标准(相似程度或亲疏关系)进行分类。对所研究的事物按一定标准进行分类的数学方法称为聚类分析。由于科学技术,经济管理中的分类往往具有模糊性,因此采用模糊聚类方法通常比较符合实际。我们不能明确地回答“是”或“否”,而是只能作出“在某种程度上是”的回答,这就是模糊聚类分析。定义二:模糊相似矩阵若模糊关系R是X上各元素之间的模糊关系,且满足:(1)自反性:R(x,x)=1;(2)对称性:R(x,y)=R(y,x);则称模糊关系R是X上的一个模糊相似关系.当论域X={x1,x2,…,xn}为有限时,X上的一个模糊相似关系R就是模糊相似矩阵,即R满足:(1)自反性:I≤R(rii=1);(2)对称性:RT=R(rij=rji).定义三:模糊等价矩阵若X={x1,x2,…,xn}为有限论域时,X上的模糊等价关系R是一个矩阵(称为模糊等价矩阵),它满足下述三个条件:(1)自反性:rii=1,i=1,2,…,n。(2)对称性:rij=rji,i,j=1,2,…,n。(3)传递性:R◦RR,即.,,2,1,,1njirrrijkjiknk定义四:模糊矩阵的截矩阵设A=(aij)m×n,对任意的∈[0,1],称A=(aij())m×n,为模糊矩阵A的-截矩阵,其中当aij≥时,aij()=1;当aij<时,aij()=0.显然,A的-截矩阵为布尔矩阵.1110110010110011,18.03.008.011.02.03.01.015.002.05.013.0AA若R是X上的模糊等价关系,则其截关系是经典等价关系,它们都可将X作一个划分,当从1下降到0时,就得到一个划分族,而且由于时,R[x]R[x],即R给出的分类结果中的每类,是R给出的分类结果的子类,所以R给出的分类结果比R给出的分类结果更细。随着的下降,R给出的分类越来越粗,这样就得到一个动态的聚类图。但通常模糊关系,不一定有传递性,因而不是模糊等价关系,对这种模糊关系直接进行上述分类显然是不合理的。为此,我们希望寻求一种方法,能将不是等价的模糊关系进行改造,以便分类使用。定义五:模糊传递闭包设RF(XX),称t(R)为R的传递闭包,如果t(R)满足:(1)传递性:(t(R))2t(R);(2)包容性:Rt(R);(3)最小性:若R′是X上的模糊传递关系,且RR′t(R)R′,即R的传递闭包t(R)是包含R的最小的传递关系。定义六:模糊等价闭包设RF(XX),称e(R)为R的等价闭包,若e(R)满足下述条件:(1)等价性:e(R)是X上的模糊等价关系。(2)包容性:Re(R)。(3)最小性:若R’是X上的模糊等价关系,且RR’e(R)R’。显然,R的等价闭包是包含R的最小的等价关系。重要定理设RF(XX)是相似关系(即R是自反、对称模糊关系),则e(R)=t(R),即模糊相似关系的传递闭包就是它的等价闭包。在实际问题中建立的模糊关系,多数情况下都是相似关系,定理给我们提供了一个求相似关系的等价闭包的方法。当论域为有限集时,此法很简便,即对相似矩阵R,求R2,R4,…,当Rk◦Rk=Rk时,便有e(R)=t(R)=Rk。132.1特征抽取,建立原始数据矩阵假设待分类对象的集合为X={X1,X2,…,Xn},集合中的每个元素具有m个特征,设第i个对象Xi的第j(j=1,2,…,m)个特征为xij,则Xi就可以用这m个特征的取值来描述,记Xi=(xi1,xi2,…,xim)(i=1,2,…,n)于是,得到原始数据矩阵为:nmnnmmxxxxxxxxx.....................2122221112112.2数据标准化处理描述事物特征的量纲是各种各样的,为了便于分析和比较,从而在计算的过程中消除这种干扰。因此要对矩阵进行标准化处理,这可以有各种类型的方法,如平移-标准差变换和平移-标准差变换,从而可以把矩阵尽量转化为标准化矩阵。2.2数据标准化处理(续)平移•标准差变换),...,2,1,,...,2,1(mjnisxxxjjijij其中nijijjniijjxxnsxnx121)(1,1平移•极差变换}1|min{}1|max{}1|min{nixnixnixxxijijijijijMatlab程序---bzh1.mfunctionY=bzh1(X)[a,b]=size(X);C=max(X);D=min(X);Y=zeros(a,b);fori=1:aforj=1:bY(i,j)=(X(i,j)-D(j))/(C(j)-D(j));%平移极差变化进行数据标准化endendfprintf(‘标准化矩阵如下:Y=\n');disp(Y)end2.3标定,建立模糊相似矩阵针对上述的标准化矩阵,计算各分类对象间的相似程度,从而建立模糊相似矩阵R=(rij)nn,这个过程又称为标定,计算标定的方法是很多的,主要包括三大类方法:(1)相似系数法;(2)距离法;(3)主观评分法。三类方法各有不同的适用范围,不同的问题需要的方法是不一样的。(1)相似系数法----夹角余弦法mkjkmkikmkjkikijxxxxr1212119mkjkjmkikixmxxmx111,1mkjjkmkiikmkjjkiikijxxxxxxxxr12121)()(||||相似系数法----相关系数法其中,20(2)距离法rij=1–cd(xi,xj)其中c为适当选取的参数.海明距离mkjkikjixxxxd1||),(欧氏距离mkjkikjixxxxd12)(),(切比雪夫距离d(xi,xj)=∨{|xik-xjk|,1≤k≤m}(3)主观评分法请有经验的人来分别对Xi与Xj的相似性打分,设有s个人参加评分,若第k个人(1ks)认为Xi与Xj相似的程度为aij(k)(在[0,1]中),他对自己评分的自信度也打分,若自信度分值是bij(k),则可以用下式来计算相似系数:kijskkijijbasr11Matlab程序---biaod2.m••functionR=biaod2(Y,c)•[a,b]=size(Y);•Z=zeros(a);•R=zeros(a);•fori=1:a•forj=1:a•fork=1:b•Z(i,j)=abs(Y(i,k)-Y(j,k))+Z(i,j);•R(i,j)=1-c*Z(i,j);%绝对值减数法--欧氏距离求模糊相似矩阵•end•end•end•fprintf(‘模糊相似矩阵如下:R=\n');•disp(R)•end2.4求传递闭包所谓聚类方法就是依据模糊矩阵将所研究的对象进行分类的方法。对于不同的置信水平∈[0,1],可以得到不同的分类结果,从而形成动态聚类图。常用的方法如下:(1)传递闭包法(2)布尔矩阵法(3)直接聚类法本文基于模糊聚类分析的传递闭包方法进行matlab编程。24当X、Y、Z为有限论域时,即X={x1,x2,…,xn},Y={y1,y2,…,ym},Z={z1,z2,…,zl},则Q、R、S(=Q◦R)均可表示为矩阵形式:Q=(qij)nm,R=(rjk)ml,S=(sik)nl其中S称为模糊矩阵Q与R的乘积。在当论域为有限集时,传递闭包法很简便,即对相似矩阵R,求R2,R4,…,当Rk◦Rk=Rk时,便有e(R)=t(R)=Rk。.)(jkijYyikrqsMatlab程序---cd3.m••functionB=cd3(R)•a=size(R);•B=zeros(a);•flag=0;•whileflag==0•fori=1:a•forj=1:a•fork=1:a•B(i,j)=max(min(R(i,k),R(k,j)),B(i,j));%R与R内积,先取小再取大•end•end•end•ifB==R•flag=1;•else•R=B;%循环计算R传递闭包•end•end2.5求模糊矩阵的截矩阵依次取∈[0,1],截关系R,R是经典等价关系,它诱导出X上的一个划分X/R,将X分成一些等价类。确定相应的λ截矩阵,则可以将其分类。随由大到小,分类由细到粗,形成一个动态的分类图。Matlab程序---jjz4.m••function[Dk]=jjz4(B)•L=unique(B)';•a=size(B);•D=zeros(a);•form=length(L):-1:1•k=L(m);•fori=1:a•forj=1:a•ifB(i,j)=k•D(i,j)=1;•elseD(i,j)=0;%求截距阵,当bij≥时,bij()=1;当bij<时,bij()=0•end•end•end•fprintf(‘当分类系数k=:\n');•disp(L(m));•fprintf(‘所得截距阵为:\n');•disp(D);•end283.案例分析环境单元分类每个环境单元可以包括空气、水分、土壤、作物等四个要素。环境单元的污染状况由污染物在四要素中含量的超限度来描写。假设有五个单元x1,x2,x3,x4,x5,它们的污染数据如下表所示。空气水分土壤作物x15532x22345x35523x42341x52451原始矩阵X:X=5532234555232341其动态分类如图3.47所示:=1x1x3x4x5x20.80.60.50.4动态聚类图Y=bzh1(X)标准化矩阵如下:Y=1.00001.00000.33330.2500000.66671.00001.00001.000000.5000000.6667000.50001.00000R=biaod2(Y,0.1)模糊相似距离矩阵如下:R=1.00000.69170.94170.74170.75830.69171.00000.68330.90000.81670.94170.68331.00000.68330.70000.74170.90000.68331.00000.91670.75830.81670.70000.91671.0000B=cd3(R)模糊相似矩阵R的传递闭包如下:t(R)=1.00000.75830.94170.75830.75830.75831.00000.75830.90000.90000.94170.75831.00000.75830.75830.75830.90000.75831.00000.91670.75830.90000.75830.91671.0000jjz4(B)当分类系数是k=:1所得截矩阵为:1000001000001000001000001当分类系数是k=:0.9250所得截矩阵为:1010010010100001当分类系数是k=:0.9417所得截矩阵为:1010001000101000001000001当分类系数是k=:0.9167所得截矩阵为:1010001000101000001100011当分类系数是k=:0.9000所得截矩阵为:1010001011101000101101011当分类系数是k=:0.7583所得截矩阵为:11111111111111111111111114