模糊數(shù)學(xué)在聚類分析中的作用(matlab代碼)_第1頁
模糊數(shù)學(xué)在聚類分析中的作用(matlab代碼)_第2頁
模糊數(shù)學(xué)在聚類分析中的作用(matlab代碼)_第3頁
模糊數(shù)學(xué)在聚類分析中的作用(matlab代碼)_第4頁
模糊數(shù)學(xué)在聚類分析中的作用(matlab代碼)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、function M,N = Example8_11X=1.8 2.1 3.2 2.2 2.5 2.8 1.9 2.0;95 99 101 103 98 102 120 130;0.15 0.21 0.18 0.17 0.16 0.20 0.09 0.11;X=X%X=80 10 6 2;50 1 6 4;90 6 4 6;40 5 7 3;10 1 2 4 M,N=fuzzy_jlfx(4,5,X);end%function M,N=fuzzy_jlfx(bzh,fa,X)%得到聚類結(jié)果X=F_JlSjBzh(bzh,X);%數(shù)據(jù)標準化R=F_JlR(fa,X);%建立相似矩陣A=fuzzy

2、_cdbb(R);%得到傳遞閉包矩陣Alamd=fuzzy_lamdjjz(A);%得到lamdf截矩陣從而得到聚類結(jié)果M,N=F_JlDtjl(R);%動態(tài)聚類并畫出聚類圖%function M,N=F_JlDtjl(R)%clc;A=fuzzy_cdbb(R);U=unique(A);L=length(U);M=1:L;for i=L-1:-1:1 m,n=find(A=U(i); Ni,1=n; Ni,2=m; A(m(1),:)=0; mm=unique(m); Ni,3=mm; len=length(find(m=mm(1); depth=length(find(m=mm(2); i

3、ndex1=find(M=mm(1); MM=M(1:index1-1),M(index1+depth:L); % index2=find(MM=mm(2); M=M(index1:index1+depth-1); M=MM(1:index2-1),M,MM(index2:end);endM=1:L;M;ones(1,L);h=(max(U)-min(U)/L;figure text(L,1,sprintf(%d,M(2,L);text(L+1,1-h,sprintf(%d,L);text(0,1,sprintf(%3.2f,1);text(0,(1+min(U)/2,sprintf(%3.2

4、f,(1+min(U)/2);text(0,min(U),sprintf(%3.2f,min(U);hold onfor i=L-1:-1:1 m=Ni,2; n=Ni,1; mm=Ni,3; k=find(M(2,:)=mm(1); l=find(M(2,:)=mm(2); x1=M(1,k); y1=M(3,k); x2=M(1,l); y2=M(3,l); x=x1,x1,x2,x2; M(3,k,l)=U(i); M(1,k,l)=sum(M(1,k,l)/length(M(1,k,l); y=y1,U(i),U(i),y2; plot(x,y); text(i,1,sprintf(%

5、d,M(2,i); text(M(1,k(1),U(i)+h*0.1,sprintf(%3.2f,U(i); text(L+1,1-i*h-h,sprintf(%d,L-i);endaxis(0 L+1 min(U) max(U)axis offhold offendend%functionX=F_JlSjBzh(cs,X)%定義函數(shù)%模糊聚類分析數(shù)據(jù)標準化變換: X=F_JlSjBzh(cs,X)%X,數(shù)據(jù)矩陣%cs=0,不變換;cs=1,標準差變換;cs=2,極差變換;cs=其它,最大值規(guī)格化if(cs=0)return;endn,m=size(X);%獲得矩陣的行列數(shù)if(cs=1)%平

6、移?標準差變換 for(k=1:m)xk=0; for(i=1:n)xk=xk+X(i,k);end xk=xk/n;sk=0; for(i=1:n)sk=sk+(X(i,k)-xk)2;end sk=sqrt(sk/n); for(i=1:n)X(i,k)=(X(i,k)-xk)/sk;end endelseif(cs=2)%平移?極差變換 for(k=1:m)xmin=X(1,k);xmax=X(1,k); for(i=1:n) if(xminX(i,k)xmin=X(i,k);end if(xmaxX(i,k)xmax=X(i,k);end end for(i=1:n)X(i,k)=(X

7、(i,k)-xmin)/(xmax-xmin);end endelse%最大值規(guī)格化 A=max(X); for(i=1:m) X(:,i)=X(:,i)/A(i); endendend%functionR=F_JlR(cs,X)%定義函數(shù)%模糊聚類分析建立模糊相似矩陣: R=F_JlR(cs,X)%X,數(shù)據(jù)矩陣%cs=1,數(shù)量積法%cs=2,夾角余弦法%cs=3,相關(guān)系數(shù)法%cs=4,指數(shù)相似系數(shù)法%cs=5,最大最小法%cs=6,算術(shù)平均最小法%cs=7,幾何平均最小法%cs=8,一般歐式距離法%cs=9,一般海明距離法%cs=10,一般切比雪夫距離法%cs=11,倒數(shù)歐式距離法%cs=1

8、2,倒數(shù)海明距離法%cs=13,倒數(shù)切比雪夫距離法%cs=14,指數(shù)歐式距離法%cs=15,指數(shù)海明距離法%cs=16,指數(shù)切比雪夫距離法n,m=size(X);%獲得矩陣的行列數(shù)R=;if(cs=1)maxM=0;pd=0;%數(shù)量積法 for(i=1:n)for(j=1:n)if(j=i)x=0; for(k=1:m)x=x+X(i,k)*X(j,k);end if(maxMx)maxM=x;end end;end;end if(maxM0.)return;end for(i=1:n)for(j=1:n) if(i=j)R(i,j)=1; else R(i,j)=0; for(k=1:m)R

9、(i,j)=R(i,j)+X(i,k)*X(j,k);end R(i,j)=R(i,j)/maxM; if(R(i,j)0)pd=1;end end end;end if(pd)for(i=1:n)for(j=1:n)R(i,j)=(R(i,j)+1)/2;end;end;endelseif(cs=2)%夾角余弦法 for(i=1:n)for(j=1:n)xi=0;xj=0; for(k=1:m)xi=xi+X(i,k)2;xj=xj+X(j,k)2;end s=sqrt(xi*xj);R(i,j)=0; for(k=1:m)R(i,j)=R(i,j)+X(i,k)*X(j,k);end R(

10、i,j)=R(i,j)/s; end;endelseif(cs=3)%相關(guān)系數(shù)法 for(i=1:n)for(j=1:n)xi=0;xj=0; for(k=1:m)xi=xi+X(i,k);xj=xj+X(j,k);end xi=xi/m;xj=xj/m;xis=0;xjs=0; for(k=1:m)xis=xis+(X(i,k)-xi)2;xjs=xjs+(X(j,k)-xj)2;end s=sqrt(xis*xjs);R(i,j)=0; for(k=1:m)R(i,j)=R(i,j)+abs(X(i,k)-xi)*(X(j,k)-xj);end R(i,j)=R(i,j)/s; end;e

11、ndelseif(cs=4)%指數(shù)相似系數(shù)法 for(i=1:n)for(j=1:n)R(i,j)=0; for(k=1:m)xk=0; for(z=1:n)xk=xk+X(z,k);end xk=xk/n;sk=0; for(z=1:n)sk=sk+(X(z,k)-xk)2;end sk=sk/n;R(i,j)=R(i,j)+exp(-0.75*(X(i,k)-X(j,k)/sk)2); end R(i,j)=R(i,j)/m; end;endelseif(cs=7)%最大最小法 算術(shù)平均最小法 幾何平均最小法 for(i=1:n)for(j=1:n)fz=0;fm=0; for(k=1:m

12、) if(X(j,k)X(i,k)x=X(i,k); else x=X(j,k);end fz=fz+x; end if(cs=5)%最大最小法 for(k=1:m)if(X(i,k)X(j,k)x=X(i,k);else x=X(j,k);end fm=fm+x;end elseif(cs=6)for(k=1:m)fm=fm+(X(i,k)+X(j,k)/2;end%算術(shù)平均最小法 else for(k=1:m)fm=fm+sqrt(X(i,k)*X(j,k);end;end%幾何平均最小法 R(i,j)=fz/fm; end;endelseif(cs=10)C=0;%一般距離法 for(i

13、=1:n)for(j=i+1:n)d=0; if(cs=8)for(k=1:m)d=d+(X(i,k)-X(j,k)2;end d=sqrt(d);%歐式距離 elseif(cs=9)for(k=1:m)d=d+abs(X(i,k)-X(j,k);end%海明距離 else for(k=1:m)if(dabs(X(i,k)-X(j,k)d=abs(X(i,k)-X(j,k);end;end;end%切比雪夫距離 if(Cd)C=d;end end;end C=1/(1+C); for(i=1:n)for(j=1:n)d=0; if(cs=8)for(k=1:m)d=d+(X(i,k)-X(j,

14、k)2;end d=sqrt(d);%歐式距離 elseif(cs=9)for(k=1:m)d=d+abs(X(i,k)-X(j,k);end%海明距離 else for(k=1:m)if(dabs(X(i,k)-X(j,k)d=abs(X(i,k)-X(j,k);end;end;end%切比雪夫距離 R(i,j)=1-C*d; end;endelseif(cs=13)minM=Inf;%倒數(shù)距離法 for(i=1:n)for(j=i+1:n)d=0; if(cs=11)for(k=1:m)d=d+(X(i,k)-X(j,k)2;end d=sqrt(d);%歐式距離 elseif(cs=12

15、)for(k=1:m)d=d+abs(X(i,k)-X(j,k);end%海明距離 else for(k=1:m)if(dd)minM=d;end end;end minM=0.9999*minM; if(minM0.)return;end for(i=1:n)for(j=1:n)d=0; if(j=i)R(i,j)=1;continue;end if(cs=11)for(k=1:m)d=d+(X(i,k)-X(j,k)2;end d=sqrt(d);%歐式距離 elseif(cs=12)for(k=1:m)d=d+abs(X(i,k)-X(j,k);end%海明距離 else for(k=1

16、:m)if(dabs(X(i,k)-X(j,k)d=abs(X(i,k)-X(j,k);end;end;end%切比雪夫距離 R(i,j)=minM/d; end;endelse for(i=1:n)for(j=1:n)d=0;%指數(shù)距離法 if(cs=14)for(k=1:m)d=d+(X(i,k)-X(j,k)2;end d=sqrt(d);%歐式距離 elseif(cs=15)for(k=1:m)d=d+abs(X(i,k)-X(j,k);end%海明距離 else for(k=1:m)if(dabs(X(i,k)-X(j,k)d=abs(X(i,k)-X(j,k);end;end;en

17、d%切比雪夫距離 R(i,j)=exp(-d);end;end;endend%function A=fuzzy_cdbb(R) %由模糊相似矩陣求傳遞閉包js0=0;while(1)A=Max_Min(R,R);js0=js0+1;if(A=R) break;else R=A;endendend%functionC=Max_Min(A,B) %模糊矩陣的合成,先取小后取大C=;m,s1=size(A);s2,n=size(B);if(s1=s2) disp(A的列不等于B的行);elsefor(i=1:m) for(j=1:n) C(i,j)=0; for(k=1:s1) x=0; if(A(i,k)B(k,j) x=A(i,k); else x=B(k,j); end if(C(i,j)=F(i)%得到lamd截矩陣 C=fuzzy_jl(Alamd)%得到聚類結(jié)果endend%function C=fuzzy_jl(A)%聚類結(jié)果B=;m1,n1=size(A);for(i=1:m1) x=0;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論