DBCURE-MR: An efficient density-
DBCURE-MR:
title: DBCURE-MR: An efficient density-based clustering algorithm for large data using MapReduce pdf dowload
code: None
abstract
本文提出了一种新的基于密度的聚类算法,DBCURE,对于不同密度具有较好的鲁棒性,并且能够使用MapReduce并行处理(DBSCURE-MR),实验证明不会影响聚类结果。此外,DBSCAN-MR对于不同规模和密度的数据集不敏感。
introduction
聚类算法大概分为四类:
- 基于划分
- 基于层
- 基于密度
- 基于网格。
其中,基于划分的例如K-means算法,只能发现球形(凸形)的类簇。基于层次的聚类依赖于前面的计算结果,不利于并行计算。基于密度的DBSCAN和OPTICS可以发现任意形状的类簇,能够通过分解dataset实现并行计算。
本文做出的贡献:
-
本文在DBSCAN的基础上引入了一个椭圆近邻(ellipsoidal)参数 -- neighborhoods 并且利用R*树结构来实现高维空间近邻点的快速查找。
-
本文提出了一种并行算法DBCURE-MR,该算法可以使用MapReduce来实现并行加速计算,最终聚类准确性和DBCURE差不多。
-
本文提出的DBCURE-MR和DBCURE算法对于不同密度的样本表现都很不错,相比于OPTICS更加容易并行计算加速
-
本文提出的MapReduce并行算法也可以单独用于传统的DBSCAN算法,速度比当前的最新的DBSCAN算法都要快
related work
传统的DBSCAN和基于高斯核分布的DENCLUE方法对密度参数十分敏感,为了解决密度参数的敏感问题,提出了一种OPTICS的方法,该方法可以改变参数的大小,来根据不同的dataset来改变密度参数,但是该方法不能并行计算。
OPTICS方法和DBSCAN的方法原理差不多,本身不对样本数据直接排序,但是可以根据排序后的结果,加上参数就可以得到不同的分类结果,所以这里说该方法对密度不敏感
在大规模的数据场景下,DBSCAN的计算速度将变得异常缓慢,计算距离矩阵的时间复杂度是, 为了加快DBSCAN的计算速度,可以采用抽样法、单独建立一个空间索引(spatial index)的方法,例如R*树,但是比较难以用于MapReduce计算框架中
并行DBSCAN的方法的思路一般分为两个步骤,第一步将数据集进行分割,然后将分割之后的数据集分别单独做DBSCAN聚类,然后将单独聚成的类进行合并操作。
DBCURE
本文作者提出的方法,the density-based clustering algorithm using ellipsoidal -- neighborhoods
Definition
-
样本点集:, 为维空间下的一个点,记为
-
点 邻域:
- 核心点(core point)和边界点(border point)
核心点:
边界点:
-
直接密度可达(directly density-reachable):
表示从 点是点的领域内的点 -
密度可达(density-reachable):
表示通过中间点,能够到达点 -
密度相连(desity-connected):
如果点能够密度可达点,同时点能够密度可达点,则称和密度相连
近邻点协方差矩阵的估计
点的近邻点的协方差矩阵 表示近邻点的分布。
image.png为点的近邻点的平均值,其中为对应近邻点的权重,该值通过MBR网格是否包含来确定其值为1或者0,由此我们可以得到近邻点的协方差矩阵公式:
image.pngproposed clustering algorithm
整体思想和DBSCAN一样,替换其中的近邻点的计算方法如下:
采用R*树来搜索近邻点,对每个点的每一维度的数据做如下限制,得到一系列满足条件的邻域点
example:
image.png image.pngDBCURE-MR
算法的并行版本一共分为如下四步:
- 并行计算每个点的近邻点方差矩阵
- 计算椭圆近邻,发现所有的满足近邻条件的样本点对
- 根据的大小(DBSCAN中的MinPts)来确定核心点
- 逐个遍历核心点,将非核心点依次合并到核心点中,剩下的为噪声点(outliner点)
example:
image.pngDBCURE-Overview:
image.png image.pngcluster 融合策略:
image.png image.png image.png局部map:
image.png
全局map:
image.png
final:
image.pngexperiments
参数:
image.png