機器學習 聚類系列 K means演算法

2022-05-18 08:12:19 字數 1037 閱讀 1206

一、聚類

聚類分析是非監督學習的很重要的領域。所謂非監督學習,就是資料是沒有類別標記的,演算法要從對原始資料的探索中提取出一定的規律。而聚類分析就是試圖將資料集中的樣本劃分為若干個不相交的子集,每個子集稱為乙個「簇」。它的難點是不好調參和評估。下面是sklearn中對各種聚類演算法的比較。 

二、k-means演算法

kmeans演算法在給定乙個數k之後,能夠將資料集分成k個「簇」c

='>=

c=,不論這種分類是否合理,或者是否有意義。演算法需要最小化平方誤差:

其中μi=1

|ci|

∑x∈c

ix'>μi

是簇ci

'>ci

的均值向量,或者說是質心。其中‖x−

μi‖2

'>‖x−μi‖^2

代表每個樣本點到均值點的距離(其實也是範數)。這裡就稍微提一下距離度量。

所以要得到簇的個數,需要指定k值

質心:均值,即向量各維取平均即可

距離的度量:常用歐幾里得距離和余弦相似度(先標準化)

優化目標:

工作流程:

根據給定的k值,隨便取k個點作為k個簇的質心,比如k=2,然後計算各個點到兩個質心的距離,離哪個近則劃入那一邊,然後重新調整質心位置,再分簇,直至質心不再變動為止。

優勢:簡單,快速,適合常規資料集

劣勢:

機器學習筆記 kMeans聚類

優點 容易實現。缺點 可能收斂到區域性最小值,在大規模資料集上收斂較慢。適用資料型別 數值型資料 k 均值演算法 先隨機確定k個初始點作為質心,然後將資料集中的每個點分配到乙個簇中,具體來講為每個點找距其最近的質心,並將其分配給該質心所對應的簇。再每個簇更新質心為該簇所有點的平均值。import n...

機器學習之Kmeans聚類

本次學習總結 1 理解相似度度量的各種方法及其相互聯絡 2 掌握k means演算法思路及其使用條件 3 層次聚類的思路和方法 4 密度聚類並能夠應用於實踐 dbscan 密度最大值聚類 5 譜聚類演算法 譜聚類演算法與pca之間的關係 聚類的定義 聚類就是將大量未知標註的資料,按照資料的內在相似性...

機器學習之聚類演算法 K Means

參考 聚類演算法可以分為 中心點方法 層次聚類方法 基於密度方法 基於網格 基於模型方法。其中最為經典的是k means演算法 k means屬於中心點方法 也有叫劃分方法 演算法經典簡單。演算法 人工選取k值,並選取k個點作為k個簇的質心 對所有樣本分別計算到k個簇的質心的距離 歐式或者曼哈頓 取...