度量相似性数学建模_【数学建模】day09-聚类分析
0.
多元分析之聚類分析。
聚類分析是一種定量方法,從數(shù)據(jù)的角度,對樣本或指標進行分類,進而進行更好的分析。
分為Q型聚類和R型聚類。
1.
Q型聚類分析是對樣本進行分類。有若干樣本,我們把這些樣本分成幾類,每一類中的樣本之間是“相似”的。
1)樣本的相似性度量
樣本之間的距離來描述樣本之間的相似性。
常用的有絕對值距離、歐氏距離。使用歐氏距離必須標準化處理,但避免不了變量的多重相關性。
解決:使用馬氏距離( Mahalanobis)。
式子中,x、y是來自總體Z兩個樣本(向量)?!剖荶的協(xié)方差矩陣。
2)類與類之間的相似性度量
如何衡量兩個類之間的相似度。
常用的有:
最短距離法:兩類中最近兩點之間的距離。
最長距離法:兩類中最遠兩點之間的距離。
重心法:兩類數(shù)據(jù)重心的距離。
類平均法:兩類所有兩兩點之間距離的平均。
離差平方和法:
3)Q型聚類分析以及實現(xiàn)
假設有w1,w2,w3…w7這些樣本點,Q型聚類就是完成下圖:
圖中,f坐標代表“平臺高度”,實際上是距離值。相同平臺高度下各自分為兩類。
如若分成3類,則在f3高度下,分為{w7},{w6,w5,w4},{w3,w2,w1}三類。
Q型聚類步驟:
1 )計算n個樣本點兩兩之間的距離dij ,記為矩陣D = (dij)(n*n);
2)首先構造n個類,每一個類中只包含一個樣本點,每一類的平臺高度均為零
3)合并距離近的兩類為新類,并且以這兩類間的距離值作為聚類圖中的平臺高 度;
4)計算新類與當前各類的距離,若類的個數(shù)已經(jīng)等于 1,轉入步驟 5),否則,回 到步驟 3);
5)畫聚類圖;
6)決定類的個數(shù)和類。
4) MATLAB實現(xiàn)Q型聚類分析
相關MATLAB函數(shù)如下,需要查詢下面。
5)一個使用例子:
解決:
1 clc,clear2 a = [1,0;1,1;3,2;4,3;2,5];3 y = pdist(a,'cityblock') %計算絕對值距離4 yc =squareform(y);5 z = linkage(y) %最短距離法產(chǎn)生聚類樹6
7 [h,t] = dendrogram(z) %畫聚類圖命令8 T = cluster(z,'maxclust',3) %把對象劃分為3類9 for i = 1:3
10 tm = find(T == i);%返回第i類對象11 tm = reshape(tm,1,length(tm));%編程行向量12 fprintf('第%d類對象有%s\n',i,int2str(tm));13 end
聚類圖如下:
產(chǎn)生聚類樹的z = linkage(y)得到:
這是一個(m-1)*3的矩陣,m是樣例數(shù)。
1和2連接,平臺高度是1;1和2連接后,新樣例做第6點(m+j)。
3和4連接,平臺高度是2;做第7點。
6和7連接,平臺高度3;做第8點。
5和8連接。
若分成三類,打印結果如下:
3.
R型聚類。
R型聚類是更常用的。影響指標有若干,但這些影響因素(自變量)之間可能有相關性,把比較相關的聚成一類,只選用其中的一個因素來代表該類,從而對問題做出簡化。
Q與R的對比:
Q是對樣本進行聚類,通過樣本之間的距離,結果是把各個樣本分堆。
R是要最自變量進行聚類,通過自變量之間的相關系數(shù)(這個計算是根據(jù)樣本計算的),進而對自變量之間的相關性做出分析,相關性大的自變量分在一類,結果是把自變量分堆。
1) 樣本之間的距離
采用取Q型相同的方法。
2) 兩類之間的距離
r為相關系數(shù)。這些操作都是基于相關系數(shù)的。
3)具體例子:
計算如下:
1 clc,clear2 a = textread('ch.txt')3 d = 1 - abs(a); %相關系數(shù)轉距離4 d = tril(d); %提出d矩陣的下三角部分5 b = nonzeros(d);%去掉d的06 b = b';
7 z = linkage(b,'complete') %最大距離,產(chǎn)生聚類樹8 y = cluster(z,'maxclust',2) %變量分為2類9 ind1 = find(y == 1);10 ind1 = ind1'11 ind2 = find(y == 2);12 ind2 = ind2'13 dendrogram(z) %畫聚類圖
產(chǎn)生聚類圖如下:
通過聚類圖,可以看出,人體的變量大體可以分為兩類:
一類反映人高、矮的變量, 如上體長,手臂長,前腰節(jié)高,后腰節(jié)高,總體長,身高,下體長;
另一類是反映人體 胖瘦的變量,如胸圍,頸圍,總肩圍,總胸寬,后背寬,腰圍,臀圍。
總結
以上是生活随笔為你收集整理的度量相似性数学建模_【数学建模】day09-聚类分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: “大麦克斯”坦克歼击车
- 下一篇: 量产超1600架经典战机被自家军方嫌弃