密度聚类
密度聚类,即基于密度的聚类(density-based clustering),此类算法假设聚类结构能通过样本分布的紧密程度确定。前面所讲的原型聚类及层次聚类等都是把距离(欧式距离,闵科夫斯基距离,曼哈顿距离等)作为两个样本或者两个簇之间相似度的评价指标,因此导致了最终聚类结构大都是球状簇或者凸形集合,对任意形状的聚类簇比较吃力,同时对噪声数据不敏感,而基于密度的聚类算法可以发现任意形状的聚类,且对带有噪音点的数据起着重要的作用。
DBSCAN
DBSCAN(Density-Based Spatial Clustering of Application with Noise)是一种典型的基于密度的聚类算法,能够将足够高密度的区域划分成簇,并能在具有噪声的空间数据库中发现任意形状的簇。它是基于一组“邻域”(neighborhood)参数 (ϵ,MinPts) ( ϵ , M i n P t s ) 来刻画样本分布的紧密程度。
概念
给定数据集 D={ x1,x2,...,xm} D = { x 1 , x 2 , . . . , x m } ,定义下面这几个概念:
- ϵ ϵ -邻域:对 xj∈D x j ∈ D ,其 ϵ ϵ -邻域包含样本集 D D 中与 的距离不大于 ϵ ϵ 的样本,即 Nϵ(xj)={ xi∈D|dist(xi,xj)≤ϵ} N ϵ ( x j ) = { x i ∈ D | d i s t ( x i , x j ) ≤ ϵ } ,这个子样本集的个数记为 |Nϵ(xj)| | N ϵ ( x j ) | ;
- 核心对象(core object):若 xj x j 的 ϵ ϵ -领域至少包含 MinPts M i n P t s 个样本,即 |Nϵ(xj)|≥Mi