初識分級聚類演算法

2021-06-29 09:08:25 字數 1151 閱讀 9895

首先介紹一下聚類演算法。先來一段維基百科上扒下來的介紹:聚類分析(英語:cluster analysis,亦稱為群集分析)是對於統計資料分析的一門技術,在許多領域受到廣泛應用,包括機器學習,資料探勘,模式識別,影象分析以及生物資訊。聚類是把相似的物件通過靜態分類的方法分成不同的組別或者更多的子集(subset),這樣讓在同乙個子集中的成員物件都有相似的一些屬性,常見的包括在座標系中更加短的空間距離等。

接著介紹今天需要講述的聚類演算法:分級聚類演算法。接著再來一段摘抄,這段來自集體智慧型程式設計。分級聚類通過連續不斷的將最為相似的群組兩兩合併,來構造出乙個群組的層級結構。其中的每個群組都是從乙個簡單元素開始的。在每次迭代的過程中,分級聚類演算法會計算每兩個群組間的距離,並將最近的兩個群組合並成乙個新的群組。這個過程一直重複下去,知道只剩下乙個群組為止。

接下來,以一維資料的形式講述這個演算法。以2、5、6、7、8、23為例子。如圖下圖所示:

根據上面演算法的執行流程,我們可以發現,這個演算法有點類似於哈夫曼樹的構造:

1,查詢節點集合中,距離最近的兩個節點。

2,將找到的兩個節點合併為乙個節點,新增到節點集合中,並將先前的兩個節點從節點集合中移除。

3,重複第一步和第二步,直到節點集合中只剩下乙個節點。

根據上述演算法,我們可以得到一顆聚類二叉樹。

當使用上述演算法的時候,距離是作為分類的基礎。在一維情況下,我們使用簡單的歐幾裡的距離能完成操作。當資料呈現多維的時候,歐幾裡的距離就顯得力不從心。下文將講解一些「距離」。

首先是歐幾裡的距離。計算公式如下:

接著是皮爾遜相關度。皮爾遜相關度計算公式即為概率論中的相關係數的計算公式:

初識聚類演算法 K均值 凝聚層次聚類和DBSCAN

聚類分析就僅根據在資料中發現的描述物件及其關係的資訊,將資料物件分組 簇 其目標是,組內的物件相互之間是相似的,而不同組中的物件是不同的。組內相似性越大,組間差別越大,聚類就越好。先介紹下聚類的不同型別,通常有以下幾種 1 層次的與劃分的 如果允許簇具有子簇,則我們得到乙個層次聚類。層次聚類是巢狀簇...

初識聚類演算法 K均值 凝聚層次聚類和DBSCAN

聚類分析就僅根據在資料中發現的描述物件及其關係的資訊,將資料物件分組 簇 其目標是,組內的物件相互之間是相似的,而不同組中的物件是不同的。組內相似性越大,組 間差別越大,聚類就越好。先介紹下聚類的不同型別,通常有以下幾種 1 層次的與劃分的 如果允許簇具有子簇,則我們得到乙個層次聚類。層次聚類是巢狀...

聚類演算法 近鄰聚類演算法

time is always too short for those who need it,but for those who love,it lasts forever.dracula untold 近鄰聚類法同樣是一種基於距離閾值的聚類演算法。coding utf 8 近鄰聚類演算法的pyth...