推薦 :如何正確選擇聚類演算法?
- 2020 年 2 月 20 日
- 筆記
聚類演算法十分容易上手,但是選擇恰當的聚類演算法並不是一件容易的事。
數據聚類是搭建一個正確數據模型的重要步驟。數據分析應當根據數據的共同點整理資訊。然而主要問題是,什麼通用性參數可以給出最佳結果,以及什麼才能稱為「最佳」。
本文適用於菜鳥數據科學家或想提升聚類演算法能力的專家。下文包括最廣泛使用的聚類演算法及其概況。根據每種方法的特殊性,本文針對其應用提出了建議。
四種基本演算法以及如何選擇
聚類模型可以分為四種常見的演算法類別。儘管零零散散的聚類演算法不少於100種,但是其中大部分的流行程度以及應用領域相對有限。
基於整個數據集對象間距離計算的聚類方法,稱為基於連通性的聚類(connectivity-based)或層次聚類。根據演算法的「方向」,它可以組合或反過來分解資訊——聚集和分解的名稱正是源於這種方向的區別。最流行和合理的類型是聚集型,你可以從輸入所有數據開始,然後將這些數據點組合成越來越大的簇,直到達到極限。
層次聚類的一個典型案例是植物的分類。數據集的「樹」從具體物種開始,以一些植物王國結束,每個植物王國都由更小的簇組成(門、類、階等)。
層次聚類演算法將返回樹狀圖數據,該樹狀圖展示了資訊的結構,而不是集群上的具體分類。這樣的特點既有好處,也有一些問題:演算法會變得很複雜,且不適用於幾乎沒有層次的數據集。這種演算法的性能也較差:由於存在大量的迭代,因此整個處理過程浪費了很多不必要的時間。最重要的是,這種分層演算法並不能得到精確的結構。
