DBSCAN算法将簇定义为样本点“密集”的区域,从某个种子样本开始,持续向密集的区域生长,直至到达区域边界为止。因此DBSCAN算法可以有效地处理噪声数据,发现任意形状的簇。
1.核心思想和基本流程
DBSCAN算法是基于一组邻域参数(Eps,M)来刻画样本分布的紧密程度,其中Eps是邻域半径,M是定义邻域内核心点数量的阈值。
#1)检查样本数据集中每个点的 Eps-邻域,若样本点的Eps邻域包含的点数多于M个,则创建一个以
为核心点的簇
#2)聚集从这些核心对象直接密度可达的样本点,这个过程可能涉及一些密度可达簇的合并
#3)当没有新的点添加到任何簇时,算法结束
2.实例分析
假设聚类的数据由两个不同的均值的高斯分布产生
其中第一类样本点250个,第二类样本点150个
M-邻域内包含的样本数为6,用DBSCAN算法进行聚类,得到结果如下:
其中,红色点和蓝色点分别代表两个类,黑色圆圈表示噪声点。