K-means聚類方法


K-means聚類方法


就是把空間內點,分成K類。同一聚類中的對象相似度較高;而不同聚類中的對象相似度較小。

用均值來代表類中心,並用于衡量與新點的距離。


初始值:

根據先驗知識找到K個均值,做迭代初始值。


迭代公式:

1:從n個數據對象中選擇k個對象作爲初始聚類中心

2:將剩下的n-k個數據對象,按照他們和初始的k個值之間的距離大小,分配給與其最近的聚類。

3:計算形成的k個新聚類的聚類中心(該聚類中所有對象的均值)

4:重複2

5:類中心不再擺動,或者擺動幅度很小,趨於穩定,則終止。


測準函數一般使用均方差。


bin/mahout kmeans \

    -i <input vectors directory> \

    -c <input clusters directory> \

    -o <output working directory> \

    -k <optional number of initial clusters to sample from input vectors> \

    -dm <DistanceMeasure> \

    -x <maximum number of iterations> \

    -cd <optional convergence delta. Default is 0.5> \

    -ow <overwrite output directory if present>

    -cl <run input vector clustering after computing Canopies>

    -xm <execution method: sequential or mapreduce>


注意: 當-k被指定的時候,-c目錄下的所有聚類都將被重寫,將從輸入的數據向量中隨機抽取-k個點作爲初始聚類的中心。

 

發佈了24 篇原創文章 · 獲贊 0 · 訪問量 6370
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章