一、DBSCAN简介
DBSCAN是一种基于密度的聚类算法,由Martin Ester等人在1996年提出(论文标题:《A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise》)。与K-Means等基于质心的聚类算法不同,DBSCAN通过识别数据点的“密度连接”区域来形成簇,能够发现任意形状的簇,并且对噪声点(异常点)具有鲁棒性。
核心思想
DBSCAN基于以下假设:
- 数据集中存在高密度区域(簇),这些区域由低密度区域分隔。
- 簇内的点在空间上是“密度可达”的,而噪声点则位于低密度区域。
DBSCAN不需要预先指定簇的数量(不像K-Means需要指定K),这使得它在处理未知数据集时非常灵活。
二、DBSCAN的核心概念
要理解DBSCAN的运作机制,首先需要掌握以下几个关键概念:
-
核心点(Core Point):
- 如果一个数据点在其半径ϵ\epsilonϵ(Epsilon)范围内至少有MinPtsMinPtsMinPts(最小点数,包括自身)个点,则该点被称为核心点。
- 数学定义:对于点ppp,如果∣Nϵ(p)∣≥MinPts|N_\epsilon(p)| \geq MinPts∣Nϵ(p)∣≥MinPts,其中Nϵ(p)={ q∈D∣dist(p,q)≤ϵ}N_\epsilon(p) = \{ q \in D | \text{dist}(p, q) \leq \epsilon \}Nϵ(p)={ q∈D∣dist(p,q)≤ϵ}是以ppp为中心、半径为ϵ\epsilonϵ的邻域,DDD是数据集。
-
边界点(Border Point):
- 如果一个点在其半径ϵ\epsilonϵ范围内点的数量少于MinPtsMinPtsMinPts,但它位于某个核心点的ϵ\epsilonϵ邻域内,则该点被称为边界点。
- 边界点不满足核心点的条件,但属于某个簇的边缘。
-
噪声点(Noise Point):
- 既不是核心点也不是边界点的点,称为噪声点或异常点。这些点通常位于低密度区域,不属于任何簇。
-
直接密度可达(Directly Density-Reachable):
- 如果点qqq在核心点ppp的ϵ\epsilonϵ邻域内(即dist(p,q)≤ϵ\text{dist}(p, q) \leq \epsilondist(p,q)≤ϵ),且ppp是核心点,则qqq对ppp是直接密度可达的。
-
密度可达(Density-Reachable):
- 如果存在一个点序列p1,p2,…,pnp_1, p_2, \dots, p_np1,p2,…,pn,其中p1=pp_1 = pp1=p,pn=qp_n = qpn=q,且每个pi+1p_{i+1}pi+1对pip_ipi是直接密度可达的,则qqq对ppp是密度可达的。
-
密度连接(Density-Connected):
- 如果点ppp和qqq都对某个核心点ooo是密度可达的,则ppp和qq

最低0.47元/天 解锁文章
7845

被折叠的 条评论
为什么被折叠?



