聚類的過程是將樣本分類的過程,聚類屬於無監督學習,資料中沒有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...