聚類方法有哪些?
聚類方法有很多,如下所示:
劃分方法 - 給定一個包含 n 個物件或資料元組的資料庫,劃分方法將資訊分成 k 個分割槽,其中每個分割槽定義一個簇,並且 k < n。它可以將資料分配到 k 個組中,這些組可以滿足以下必要條件:
每個組必須至少包含一個物件。
每個物件都應該準確地屬於一個組。
給定 k(要構造的分割槽的數量),劃分方法會進行初始劃分。然後它使用迭代重定位方法,嘗試透過將物件從一個組轉換到另一個組來改進劃分。
良好劃分的總體標準是,同一簇中的物件彼此“接近”或相關,而不同簇的物件彼此“遠離”或非常不同。有幾種其他型別的標準用於確定分割槽的質量。
層次方法 - 層次方法生成給定資料集物件的層次分解。層次方法可以歸類為凝聚的或分裂的,具體取決於層次分解是如何產生的。凝聚方法也稱為“自下而上”方法。
它可以從每個物件形成一個獨立的組開始。它依次將彼此接近的物件或組合並,直到所有組都合併成一個(層次結構的最高層),或者直到滿足終止條件為止。分裂方法也稱為“自上而下”方法。它可以從所有物件都在同一個簇中開始。在每次後續迭代中,一個簇被分成更小的簇,直到最終每個物件都在一個簇中,或者直到滿足終止條件為止。
基於密度的聚類方法 - 一些劃分方法根據物件之間的距離對物件進行聚類。此類方法只能發現球形簇,並且在查詢任意形狀的簇時會遇到困難。其他聚類方法是基於密度概念建立的。
DBSCAN 是一種典型的基於密度的聚類方法,它根據密度閾值增加聚類。OPTICS 是一種基於密度的聚類方法,它評估用於自動和互動式聚類分析的增強聚類排序。
基於網格的方法 - 基於網格的方法將物件空間量化為有限數量的單元格,這些單元格形成網格結構。一些聚類操作是在網格結構(即量化空間)上實現的。
這種方法的優點是其快速處理時間,通常獨立於資料物件的數量,並且僅取決於量化空間中每個維度中單元格的數量。STING 是基於網格方法的一個例項。CLIQUE 和 Wave-Cluster 是兩種既基於網格又基於密度的聚類演算法。
基於模型的方法 - 基於模型的方法為每個簇假設一個模型,並發現記錄對給定模型的最佳擬合。基於模型的演算法可以透過建立反映資料點空間分佈的密度函式來定位簇。它還導致了一種根據標準統計自動確定簇數量的方法,同時考慮“噪聲”或異常值,從而產生穩健的聚類方法。
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP