機器學習 聚類

2021-09-20 05:06:42 字數 857 閱讀 6739

聚類的過程是將樣本分類的過程,聚類屬於無監督學習,資料中沒有label,訓練之前並不知道樣本屬於哪乙個類別,需要借鑑經驗值。

kmeans聚類:

模型假設:資料的分布是k個$\sigma$相同的高斯分布的,每個分布裡有$n_1,n_2,......n_k$個樣本,其均值分別是$mu_1,mu_2,……mu_k$,那麼每個樣本屬於自己對應那個簇的似然概率為:

$$ l = \prod_^\prod_^}\frac}exp(-\frac-\mu _j \right | \right |^}}) $$

做對數變化,並取負值即可得到損失函式:

$$ j(\mu_1,\mu_2,...,\mu_k)= \frac\sum _^\sum _^}(x_-\mu_j)^ $$

損失函式求導得:

$$ \frac = \sum _^(x_j-\mu_j) =0 $$

即更新後最佳簇的中心為:

$$ \mu_j = \frac^x_i} $$

迭代過程

2.1.需要指定k值,需要得到簇的個數;

2.kmeans 會隨機給出k個質心;

3.開始迭代,根據距離計算新質心的位置;

4.質心的位置不發生變化,即迭代停止。

缺點: kmeans聚類視覺化

dbscan聚類:

1.先找到乙個核心物件,從它出發,確定若干個直接密度可達的物件

2.再從這若干個物件出發,尋找它們直接密度可達的點,直到最後沒有可新增的物件

3.完成乙個簇

dbscan聚類視覺化:

缺點:層次聚類

最初將每個物件看成乙個簇,然後將這些簇根據某種規則被一步步合併,就這樣不斷合併直到達到預設的簇類個數。

合併規則:

機器學習聚類

模型調參 from sklearn.cluster import dbscan 構建空列表,用於儲存不同引數組合下的結果 res 迭代不同的eps值 for eps in np.arange 0.001,1 0.05 迭代不同的min samples值 for min samples in rang...

機器學習 聚類 密度聚類演算法

一,介紹 密度聚類演算法有多種,我們這裡主要介紹一種著名的密度聚類演算法 dbscan。首先,我們通過下圖了解幾個概念 1 鄰域,與中心x距離不超過 距離,如上圖紅色虛線圈 2 核心物件,確定聚類的初始點,如上圖的x1 3 密度直達,在聚類核心物件鄰域內的點,如上圖x2由x1密度直達 4 密度可達,...

機器學習(聚類 一 )

演算法起源於分類學,物以類聚,人以群分。人們在以前都是靠經驗來分類,但是當東西一多,就很難再進行靠經驗和知識進行分類而且分類的不准,所以利用數學進行定量的分類。資料探勘,我們可以通過聚類來分別出不同的人群,概括出每一類消費者的消費模式。1 劃分法 k means演算法 k medoids演算法 cl...