用人話理解Kmeans聚類

2021-10-04 07:48:27 字數 1713 閱讀 7207

不同類之間有無包含關係

硬聚類:每個物件只屬於乙個類

軟聚類:每個物件以概率屬於某個類。比如:樣本1:a-0.8,b-0.1,c-0.1

① 將特徵向量化,每個樣本表示為高維空間的乙個點

② 計算各個點之間的距離(距離與相似度成反比

歐氏距離:曼哈頓距離:

余弦相似度:

自底向上:凝聚層次聚類

自頂向下:**層次聚類

演算法描述:

每乙個物件歸為一類,共m類,每類只有乙個物件

計算每乙個類與其他類之間的距離

找到最接近的兩個類合併長乙個類a

刪除其他類與類a內各類的距離

刪除類a內各類與其他類的距離

插入其他類與類a的距離

更新類a與其他類的距離

5. 重複 3 4 直到最後合併為乙個類為止(此類包含n個物件)

第二步中,計算類間距離的方法有三種:

演算法複雜度 o(m^3)

演算法描述:

任意選擇k個點作為初始聚類中心

計算每個物件到這k個點的距離,到哪個點最近,就歸為哪一類

重新計算這k個類的聚類中心(質心)

重複 2 3 直到聚類中心變化不大或者損失函式

演算法複雜度 o(m*k*t) t是迭代次數

演算法缺點:

非常依賴於初始點的選擇,如何選擇初始點?多次訓練,取使l(c)最小的初始點

k取多少合適?看業務

適用於球面聚類

(1)內部評價(用於無監督)

判斷標準:同類是否相似,異類是否相異

σi:類內各物件到該類聚類中心的平均距離

ci:該類的聚類中心

(2)外部評價(用於有監督學習)

分類**類別

y1y2

實際類別

y1c11

c12y2

c21c22

準確度

精確率

召回率

f值  

β越小,越傾向於精確率;β越大,越傾向於精確率和召回率的混合。 

最常見是β=1,此時就是常見的

auc

關於K means聚類演算法重點理解

阿里面試時候被問到簡單介紹一下k means演算法,以及迴圈迭代的終止條件是什麼?特此記錄,共勉!k均值聚類演算法 k means clustering algorithm 是一種迭代求解的聚類分析演算法。1 預將資料分為k組,則隨機選取k個物件作為初始的聚類中心 2 然後計算每個物件與各個種子聚類...

K Means聚類演算法

k means聚類演算法 intergret kmeans演算法的基本思想是初始隨機給定k個簇中心,按照最鄰近原則把待分類樣本點分到各個簇。然後按平均法重新計算各個簇的質心,從而確定新的簇心。一直迭代,直到簇心的移動距離小於某個給定的值。k means聚類演算法主要分為三個步驟 1 第一步是為待聚類...

聚類演算法 K means

演算法接受引數 k 然後將事先輸入的n個資料物件劃分為 k個聚類以便使得所獲得的聚類滿足 同一聚類中的物件相似度較高 而不同聚類中的物件相似度較小。聚類相似度是利用各聚類中物件的均值所獲得乙個 中心物件 引力中心 來進行計算的。k means演算法是最為經典的基於劃分的聚類方法,是十大經典資料探勘演...