一、DBSCAN算法
DBSCAN算法,全称为“Density-Based Spatial Clustering of Applications with Node”,也就是“基于密度的聚类”。此类算法是假设聚类结构能通过样本分布的紧密程度确定,从样本密度的角度来考察样本之间的可连续性,并基于可连接样本不断扩展聚类簇以获得最终的聚类结果。
DBSCAN算法做为一种有名的密度聚类算法,它是通过邻域参数(Distance,MinPts)来刻画样本分布的紧密程度。而在真正开始之前,首先要理解下面这几个概念:
核心对象:x1、x2,也就是满足邻域参数(Distance,MinPts)条件的点。 密度直达:x2由x1密度直达。 密度可达:x3由x1密度可达。 密度相连:x3与x4密度相连。 具体的定义可以参看:《机器学习》这本书,我这里只是简单的说明一下这几个概念。
二、算法步骤
1、初始化核心对象并记录其邻接点。循环遍历每一个数据点,记录每一个数据点邻域内<=Distance参数(距离参数)的其他数据点,并判断符合距离参数的邻接点个数是否>=MinPts参数(点数量参数),如果符合添加则将该数据点添加到核心对