8.1 聚類(Clustering) K-means算法

  1. 歸類:
    聚類(clustering) 屬於非監督學習 (unsupervised learning)
    無類別標記(class label)

  2. 舉例:
    這裏寫圖片描述

  3. K-means 算法:

    3.1 Clustering 中的經典算法,數據挖掘十大經典算法之一
    3.2 算法接受參數 k ;然後將事先輸入的n個數據對象劃分爲 k個聚類以便使得所獲得的聚類滿足:同一
    聚類中的對象相似度較高;而不同聚類中的對象相似度較小。
    3.3 算法思想:
    以空間中k個點爲中心進行聚類,對最靠近他們的對象歸類。通過迭代的方法,逐次更新各聚類中心
    的值,直至得到最好的聚類結果
    3.4 算法描述:

      (1)適當選擇c個類的初始中心;
      (2)在第k次迭代中,對任意一個樣本,求其到c各中心的距離,將該樣本歸到距離最短的中心所在     
              的類;
      (3)利用均值等方法更新該類的中心值;
      (4)對於所有的c個聚類中心,如果利用(2)(3)的迭代法更新後,值保持不變,則迭代結束,
               否則繼續迭代。
    

    3.5 算法流程:
    這裏寫圖片描述
    輸入:k, data[n];
    (1) 選擇k個初始中心點,例如c[0]=data[0],…c[k-1]=data[k-1];
    (2) 對於data[0]….data[n], 分別與c[0]…c[k-1]比較,假定與c[i]差值最少,就標記爲i;
    (3) 對於所有標記爲i點,重新計算c[i]={ 所有標記爲i的data[j]之和}/標記爲i的個數;
    (4) 重複(2)(3),直到所有c[i]值的變化小於給定閾值。

  4. 舉例:
    這裏寫圖片描述

    這裏寫圖片描述

    這裏寫圖片描述

    這裏寫圖片描述

    這裏寫圖片描述

    這裏寫圖片描述

    這裏寫圖片描述

    這裏寫圖片描述

    這裏寫圖片描述

       停止
    

    這裏寫圖片描述
    優點:速度快,簡單
    缺點:最終結果跟初始點選擇相關,容易陷入局部最優,需直到k值

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章