怎么用阿帕奇做網(wǎng)站谷歌廣告聯(lián)盟
1. 原理
1.層次聚類(lèi):通過(guò)計(jì)算兩類(lèi)數(shù)據(jù)點(diǎn)間的相似性,對(duì)所有數(shù)據(jù)點(diǎn)中最為相似的兩個(gè)數(shù)據(jù)點(diǎn)進(jìn)行組合,并反復(fù)迭代這一過(guò)程并生成聚類(lèi)樹(shù)
2.k-means聚類(lèi):在數(shù)據(jù)集中根據(jù)一定策略選擇K個(gè)點(diǎn)作為每個(gè)簇的初始中心,然后將數(shù)據(jù)劃分到距離這K個(gè)點(diǎn)最近的簇中,重新計(jì)算每個(gè)簇的中心點(diǎn),然后在重新進(jìn)行劃分,直到每次劃分的結(jié)果保持不變。
2. 過(guò)程
1.層次聚類(lèi):
樣本點(diǎn):x1= [0,0]T, x2=[0,1]T,? x3=[2,0]T , x4= [3,3]T , x5= [4,4]T
將樣本點(diǎn)存儲(chǔ)在c1.txt文本文件中如下:
圖1? c1文件中樣本數(shù)據(jù)
在matlab中載入文件
分別將原始數(shù)據(jù)中的兩列提取出來(lái)作為x坐標(biāo)與y坐標(biāo)用于繪制樣本的分布圖像,其實(shí)現(xiàn)如下:
圖2
接下來(lái)通過(guò)linkage(c1,'single','euclidean')語(yǔ)句調(diào)用linkage函數(shù),將樣本點(diǎn)以最短距離作為類(lèi)間距離,距離計(jì)算采用歐幾里得距離,得到一個(gè)矩陣,其前2列為兩個(gè)類(lèi)的標(biāo)號(hào),第三列為類(lèi)間的最短距離,然后通過(guò)dendrogram函數(shù)可以繪制出層次聚類(lèi)樹(shù)狀圖
圖3
以上操作后結(jié)果如下:
圖4 樣本分布及聚類(lèi)樹(shù)狀圖
接下來(lái)為了進(jìn)行分類(lèi),可以通過(guò)分割的方法得到不同的簇,這里采用群數(shù)目分割方式進(jìn)行分割,調(diào)用cluster函數(shù),設(shè)置簇的數(shù)目最大為2,最后調(diào)整標(biāo)號(hào)繪制分類(lèi)后的圖像
圖5
結(jié)果如下:
圖6 分割后得到的結(jié)果
2.k-means聚類(lèi):
樣本點(diǎn):x1= [0,0]T,? x2=[1,0]T,? x3=[1,1]Tx4= [4,4]T,? x5=[5,4]T,? x6=[5,5]T
同樣將樣本點(diǎn)數(shù)據(jù)存儲(chǔ)到kn1.txt文件中,如下圖:
圖7? kn1文件中樣本數(shù)據(jù)
接下來(lái)開(kāi)始進(jìn)行聚類(lèi),實(shí)驗(yàn)設(shè)置簇的個(gè)數(shù)為2,通過(guò)kmeans函數(shù)對(duì)樣本進(jìn)行聚類(lèi),并且重復(fù)5次聚類(lèi),該函數(shù)可以返回簇的索引以及簇的中心點(diǎn)位置。
圖8
然后調(diào)整標(biāo)號(hào)繪制分類(lèi)圖像,結(jié)果如下:
圖9? kmeans 聚類(lèi)結(jié)果
3. 結(jié)果與分析
1.層次聚類(lèi)
通過(guò)樹(shù)狀圖可以看出程序的聚類(lèi)順序?yàn)閤1x2,x4x5,x1x2x3,x1x2x3x4x5,每?jī)蓚€(gè)簇之間的距離如下:
圖10 聚類(lèi)過(guò)程中簇間距離
其中前兩列1至5代表x1到x5初始5個(gè)簇,6代表x1x2形成的簇,7代表x4x5形成的簇,8代表x1x2x3形成的簇
2.k-means聚類(lèi)
圖11 聚類(lèi)后兩個(gè)簇的中心點(diǎn)坐標(biāo)
圖12 每個(gè)點(diǎn)到每個(gè)簇心的距離
圖13 簇內(nèi)各點(diǎn)到中心距離之和
? ? ??