聚類
- 1.K-mean
- 2.系統聚類
- 3.DBSCAN聚類算法
聚類:無監督學習,將相似的樣本聚為一類。核心如何定義相似。
分類:有監督學習,依據分類準則,將樣本劃分為不同的類。核心分類器的設計(KNN)
聚類:根據彼此不同的屬性進行辨認,將具有相似屬性的事物聚為一類,使得同一類的事物具有高度的相似性。
1.K-mean
- 隨機選取k個類別中心
- 計算每個樣本點到每個中心的距離,將樣本歸類到距離最近的類中。
- 依據每個類的樣本更新類中心
- 重復2,3直至類中心變化小于某個閾值。
K-meas 算法的優點:簡介快速,時間復雜度O(nkt)
K-meas 算法的缺點:需要預先知道/設定聚類數量k
2.系統聚類
自底向上的一種方法:初始時,各個樣本自成一類,依據定義的相似度,每次合并一個類,不斷向上合并直至到達設定了類別數
- 定義樣本間距離和類間距離的計算方法,每個樣本自成一類
- 計算任意兩個類間距離,將距離最短的兩個類合并
- 重復步驟2直至聚為k類
樣本間距離:歐幾里得距離、均方距離、曼哈頓距離(1范數)、余弦距離、最大距離(無窮范數)
類間距離:最大距離、最小距離、平均距離、離差平方和距離
系統聚類的優點:靈活定義的距離對昂使得他有廣泛的適用性
系統聚類的缺點:時間復雜度高,一般為o(n3)o(n^3)o(n3)。
3.DBSCAN聚類算法
DBSCAN:density-based spatial clustering of applications with noise
將類定義為:密度相連的點的最大集合,通過在樣本空間中不斷尋找最大集合從而完成聚類
有幾個基本定義:?\epsilon?領域,核心對象,直接密度可達,密度可達,密度相連
密度可達是直接密度可達的傳遞閉包
- 定義半徑?\epsilon?和MinPts
- 抽取未被訪問的樣本點q
- 檢驗是否為核心對象,是-進入步驟4,否-返回步驟2
- 找出該樣本點所有密度可達的對象,構成聚類CqC_qCq?.
- 重復步驟2,直至所有樣本點都被訪問過一遍
能在帶噪聲的樣本空間中發現任意形狀的聚類并排除噪聲
DBSCAN聚類的優點:能夠過濾低密度區域,發現稠密樣本點。不需要制定聚類數,可以過濾噪聲,時間復雜度o(nlog?n)o(n\log n)o(nlogn)
(概念稍微復雜點的一個聚類算法)