今天想使用一下matlab自帶的函式kmeans,看了官方例項還有網上的帖子,都是說的雲裡霧裡。
自己看懂之後,在這裡分享一下。
要點1. kmeans是以行為單位進行聚類的
要點2. kmeans聚類的單位應該是能夠標識這個點的特徵
這裡解釋一下,如果對乙個二維矩陣進行聚類,聚類的根據的是矩陣值的話,那麼這個值(乙個數)就能夠標識這個點;如果對一張rgb影象進行聚類,那畫素點的rgb值(三個數)就能標識這個點。
所以,在聚類之前,應該reshape矩陣一下
。例如二維矩陣30*20,則reshape成600*1;rgb影象300*400*3,則reshape成120000*3。這樣[t1,t2]=kmeans(...),t1記錄的是每一行屬於的類別,t2記錄的是每個類的質心位置。再將t1 reshape為原矩陣的大小,就可以直觀的看到矩陣的每個區域都屬於哪些類了。
以上方法是根據數值聚類,如果想通過位置座標聚類,該怎麼辦呢?
很簡單,把kmeans(x,k)中的x替換為要聚類的全部座標就可以了。
聚類之層次聚類 基於劃分的聚類(
目錄 一層次聚類 層次聚類的原理及分類 層次聚類的流程 層次聚類的優缺點 二劃分聚類法k means kmeans演算法的原理 k均值的優缺點及分類 k means與dbscan的區別 k means注意問題 三基於密度的聚類 dbscan的概念 簇的生成原理及過程 根據資料點的密度分為三類點 db...
k means聚類,密度聚類,層次聚類優缺點
k means 優點 1,簡單,易於理解和實現 2,時間複雜度低 缺點 1,需要對均值給出定義,2,需要指定要聚類的數目 3,一些過大的異常值會帶來很大影響 4,演算法對初始選值敏感 5,適合球形聚類 層次聚類 優點 1,距離和規則的相似度容易定義,限制少 2,不需要預先制定聚類數 3,可以發現類的...
聚類總結(中) 密度聚類
密度聚類是一種基於密度的聚類方法,基於密度的聚類方法的主要思想是尋找被低密度區域分離的高密度區域。密度度量 乙個點的區域性密度有不同的度量方式 1.畫個圈,數圈內其他點個數是一種方法。2.用圈內其他點和給點半徑的比值的高斯概率密度形式,對距離核心點距離近的給大權重。3.計算圈內距離最小的前n個點到核...