什麼是凝聚聚類演算法?


凝聚聚類是一種自下而上的聚類方法,其中簇包含子簇,子簇又包含子簇,等等。它可以從將每個物件放在自己的簇開始,然後將這些原子簇混合成越來越大的簇,直到所有物件都在一個單獨的簇中,或者直到滿足特定的終止條件。一些層次聚類方法使用這種型別。它們的區別僅在於它們對簇間相似性的描述。

例如,一種稱為 AGNES(凝聚巢狀)的方法,使用單鏈接技術,其操作如下。假設有一組物件放在一個矩形中。最初,每個物件都位於它自己的簇中。然後,根據某些原則逐步合併這些簇,例如合併簇間最近物件之間歐幾里得距離最小的簇。

K-均值聚類方法從固定數量的簇開始,並將所有資料分配到這多個簇中。另一類方法透過凝聚來操作。這些方法從每個資料點形成自己的簇開始,並逐漸將它們合併成越來越大的簇,直到所有點都被收集到一個大的簇中。

第一步是生成一個相似性矩陣。相似性矩陣是一個表,包含簇之間成對距離或相似度。最初,相似性矩陣包含單個記錄對之間的成對距離。

記錄之間有幾種相似性度量,例如歐幾里得距離、向量之間的角度以及連線到非連線分類欄位的比率。

可以看出,對於 N 個數據點的 N 個原始簇,需要進行 N² 次測量計算才能生成距離表。如果相似性度量是真正的距離度量,則只需要一半的計算量,因為某些真正的距離度量遵循距離(X, Y) = 距離(Y, X) 的方法。

在數學中,相同的矩陣是下三角矩陣。下一步是在相同矩陣中找到最小值。這識別出彼此最相似的兩個簇。可以將這兩個簇合併成一個新的簇,並透過用定義合併簇與剩餘簇之間距離的新行替換描述父簇的兩行來重新整理相似性矩陣。

現在有 N – 1 個簇和 N – 1 行在同一矩陣中。可以迭代合併步驟 N – 1 次,這樣一些資料屬於相同的大簇。每次迭代都會識別出哪些簇被合併以及它們之間的距離。此資訊可以確定要使用哪種聚類方法。

更新於:2022年2月15日

瀏覽量 1K+

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告