1. 程式人生 > >kmean、KNN、kd樹的改進演算法BBF

kmean、KNN、kd樹的改進演算法BBF

1. k-Means

k-Means這裡k的概念是指聚類的k箇中心,聚類成K類,k均值演算法的計算過程非常直觀:

      1、從D中隨機取k個元素,作為k個簇的各自的中心。

      2、分別計算剩下的元素到k個簇中心的相異度,將這些元素分別劃歸到相異度最低的簇。

      3、根據聚類結果,重新計算k個簇各自的中心,計算方法是取簇中所有元素各自維度的算術平均數。

      4、將D中全部元素按照新的中心重新聚類。

      5、重複第4步,直到聚類結果不再變化。

      6、將結果輸出。

k-means參考:http://www.cnblogs.com/leoo2sk/archive/2010/09/20/k-means.html

K-Means ++ 演算法

k-means++演算法選擇初始seeds的基本思想就是:初始的聚類中心之間的相互距離要儘可能的遠。

1. 從輸入的資料點集合中隨機選擇一個點作為第一個聚類中心
2. 對於資料集中的每一個點x,計算它與最近聚類中心(指已選擇的聚類中心)的距離D(x)
3. 選擇一個新的資料點作為新的聚類中心,選擇的原則是:D(x)較大的點,被選取作為聚類中心的概率較大
4. 重複2和3直到k個聚類中心被選出來
5. 利用這k個初始的聚類中心來執行標準的k-means演算法

2. knn

xxx待完成