聚類與常見聚類方法

2021-09-03 02:25:40 字數 2361 閱讀 6753

2.層次聚類(hiecarchical clustering)

3.密度聚類(density-based clustering)

4.參考:

k均值演算法是屬於劃分的聚類方法,k均值演算法將樣本分為k類,是通過最小化簇內距離(平方誤差)來實現的。

e =∑

i=1n

∑x∈c

i∣∣x

−ui∣

∣22e=\sum_^n \sum_} ||x-u_i||_^2

e=i=1∑

n​x∈

ci​∑

​∣∣x

−ui​

∣∣22

​迭代過程:

從樣本集中隨機選取k個樣本作為初始的均值向量

\歷遍整個資料集,計算每個樣本x

jx_j

xj​與各均值向量的距離,將x

jx_j

xj​分到距離最近的一均值向量確定 的簇內。

重新計算各個簇的均值向量的平均值

\,u_2^,\cdots,u_k^\}

,更新均值向量

重複以上步驟,直到聚類結果保持不變為止(均值向量均為更新),停止迭代。

計算複雜度低,為o(nkp),n是資料總量,k是類別,p是迭代次數

思想簡單,容易實現。而且很穩定。

分類簇的數量k必須提前確定

演算法對初始聚類中心敏感,可能會導致較差的聚類結果。

(1)可以每次迭代嘗試不同的初始均值向量,通過比較均值距離,選擇乙個較好的初始值。

(2)使用k-means++演算法

演算法只適用於處理數字型別的資料

演算法可能陷入區域性最優解,無法達到全域性最優

對異常值和雜訊很敏感,演算法的魯棒性不太好。

當前,k值得選取依然是靠人為來實現,通過視覺化聚類結果等方法來實現。

elbow method

**從各聚類簇只有乙個樣本點開始,逐級合併,每級只合併兩簇,直到最後所有樣本都歸到乙個聚類簇。**在樹狀圖的特定層次進行分割(選擇聚類數)就可以得到所需的聚類結果。

演算法全稱:agglomerative nesting

初始化,每個樣本形成一類

把相似度最大的兩個簇合併

重複步驟二,直到所有樣本合併為一類

衡量相似度的方法最小距離:通過兩個簇內距離最近的兩個樣本的距離來衡量相似度

最大距離:通過兩個簇內距離最遠的兩個樣本的距離來衡量相似度

均值距離:通過兩個簇內的平均距離來衡量相似度,需要用到所有的樣本。(計算兩個簇,所有樣本兩個之間的距離總和,求平均值)

優點:

衡量相似度的距離定義定義簡單,演算法實現也簡單;

不需要預先確定聚類數

得到的是乙個結構化的層次結構,包含的資訊更多,通過層次關係可以更容易確定最終的聚類數。

缺點:

時間複雜度高,o(n

2log

n)o(n^logn)

o(n2lo

gn),不適合大規模資料。

最終的劃分標準是模糊的。

密度聚類演算法是從樣本密度的角度來考慮樣本之間的連線性,並基於可連線樣本不斷擴充套件聚類簇,最終獲得聚類結果。

ϵ ,m

inpt

s)(\epsilon , minpts)

(ϵ,min

pts)

來刻畫樣本分佈的緊密程度。一下是幾個重要概念:

演算法描述:

根據給定的鄰域引數,找出所有的核心物件

從核心物件集合ω

\omega

ω中隨機選取乙個作為「種子」,找出由它密度可達的左右樣本,有這些樣本構成第乙個聚類簇。其他的一些核心物件可能也被包含在了這個聚類簇內,從核心物件集合ω

\omega

ω中去掉這些被包含的核心物件,形成新的核心物件集ω

′\omega^

ω′。重複步驟二,直到核心物件集合為空。

注:最終不屬於任何簇的樣本被視為雜訊或者異常值

dbscan演算法的目的在於過濾低密度區域,發現稠密度樣本點。跟傳統的基於層次的聚類和劃分聚類的凸形聚類簇不同,該演算法可以劃分任意形狀的聚類簇,與傳統的演算法相比它有如下優點:

(1)與k-means比較起來,不需要輸入要劃分的聚類個數;

(2)聚類簇的形狀沒有偏倚,可以劃分任意形狀的聚類簇;

(3)可以在需要時輸入過濾雜訊的引數;

常見聚類演算法

將資料庫中的物件進行聚類是聚類分析的基本操作,其準則是使屬於同一類的個體間距離盡可能小,而不同類個體間距離盡可能大,為了找到效率高 通用性強的聚類方法人們從不同角度提出了近百種聚類方法,典型的有k means方法 k medoids方法 clarans方法,birch方法等,這些演算法適用於特定的問...

核聚類與支援向量聚類

核聚類與支援向量聚類 聚類是資料探勘中用來發現資料分布和隱含模式的一項重要技術 1 作為一種常見的資料分析工具和無監督機器學習方法,聚類的目的是把資料集合分成若干類 或簇 使得每個類中的資料之間最大限度地相似,而不同類中的資料最大程度地不同。根據聚類演算法所採用的基本思想,大致可以將它們分為五種 2...

聚類之層次聚類 基於劃分的聚類(

目錄 一層次聚類 層次聚類的原理及分類 層次聚類的流程 層次聚類的優缺點 二劃分聚類法k means kmeans演算法的原理 k均值的優缺點及分類 k means與dbscan的區別 k means注意問題 三基於密度的聚類 dbscan的概念 簇的生成原理及過程 根據資料點的密度分為三類點 db...