機器學習實戰 如何正確選擇聚類演算法?

2021-10-02 23:52:12 字數 695 閱讀 5080

聚類演算法十分容易上手,但是選擇恰當的聚類演算法並不是一件容易的事。

資料聚類是搭建乙個正確資料模型的重要步驟。資料分析應當根據資料的共同點整理資訊。然而主要問題是,什麼通用性引數可以給出最佳結果,以及什麼才能稱為「最佳」。

本文適用於菜鳥資料科學家或想提公升聚類演算法能力的專家。下文包括最廣泛使用的聚類演算法及其概況。根據每種方法的特殊性,本文針對其應用提出了建議。

四種基本演算法以及如何選擇

聚類模型可以分為四種常見的演算法類別。儘管零零散散的聚類演算法不少於100種,但是其中大部分的流行程度以及應用領域相對有限。

基於整個資料集物件間距離計算的聚類方法,稱為基於連通性的聚類(connectivity-based)或層次聚類。根據演算法的「方向」,它可以組合或反過來分解資訊——聚集和分解的名稱正是源於這種方向的區別。最流行和合理的型別是聚集型,你可以從輸入所有資料開始,然後將這些資料點組合成越來越大的簇,直到達到極限。

層次聚類的乙個典型案例是植物的分類。資料集的「樹」從具體物種開始,以一些植物王國結束,每個植物王國都由更小的簇組成(門、類、階等)。

層次聚類演算法將返回樹狀圖資料,該樹狀圖展示了資訊的結構,而不是集群上的具體分類。這樣的特點既有好處,也有一些問題:演算法會變得很複雜,且不適用於幾乎沒有層次的資料集。這種演算法的效能也較差:由於存在大量的迭代,因此整個處理過程浪費了很多不必要的時間。最重要的是,這種分層演算法並不能得到精確的結構。

如何正確選擇聚類演算法?

本文將介紹四種基本的聚類演算法 層次聚類 基於質心的聚類 最大期望演算法和基於密度的聚類演算法,並討論不同演算法的優缺點。聚類演算法十分容易上手,但是選擇恰當的聚類演算法並不是一件容易的事。資料聚類是搭建乙個正確資料模型的重要步驟。資料分析應當根據資料的共同點整理資訊。然而主要問題是,什麼通用性引數...

機器學習實戰(二) 聚類

回想專案中遇到的,多商家資訊融合的場景。我們如何把多商家的資訊進行合理的匹配呢?首先想到的是人工匹配和程式匹配相結合。這樣也可以實現,但費心費力,且實際匹配效果很差,如果商家融合資訊呈指數級增長,這樣的方式就太low了。那如何把這個流程做的智慧型化些呢?我們可以引入機器學習中的聚類,它可以將商家相關...

聚類演算法 KMeans 機器學習實戰

直接上 coding utf8 time 2018 4 12 下午05 33 author yjfiejd file k means 3.py from numpy import import time import matplotlib.pyplot as plt 1 先定義3個函式,第乙個函式為...