并行凝聚层次聚类算法解析
1. 相关工作
多数层次聚类算法借助最小生成树(MST),并利用该数据结构进行优化。不同实现方式在现有聚类的相似度计算上存在差异,知名的层次聚类算法实现有 BIRCH、CURE、ROCK、CHAMELEON 等。这些算法的区别仅在于设置不同参数,以提升聚类质量并减少离群点。
流行的层次聚类方法是凝聚层次聚类(AHC),它将每个数据对象定义为一个聚类,然后反复合并最近邻的聚类,形成一个称为树状图的聚类树。AHC 从底部叶聚类到根聚类执行合并操作构建树状图,最终树状图展示的数据对象位于叶节点。
AHC 有多种基于聚类距离计算的变体,如使用最小或最大对象距离形成树状图的完全 AHC,还有未加权配对组算术平均法(UPGMA)和加权配对组算术平均法(WPGMA)等策略。
为实现层次聚类的并行化,PARABLE 采用 MapReduce 策略,分两步进行:第一步在分布式节点上顺序执行层次聚类,第二步使用树状图对齐技术合并第一步的结果。也有并行算法让顺序层次聚类算法在并行线程上运行,使用数据子集形成中间层次的树状图结果,再递归合并这些结果,但该方法未解决向树状图添加新分支和合并点高度影响的问题。此外,还有单链接聚类算法(SLINK)、层次 DBScan(HDBSCAN)等并行层次聚类算法,以及通过并行最小生成树进行聚类的 CLUMP 算法。
共享内存单链接(SHRINK)算法将单链接层次聚类并行化,把原始数据划分为有重叠的子数据集,用单链接算法计算每个子集的层次结构,再合并子集树状图。分布式单链接算法(DiSC)使用 MapReduce 模型,将数据集划分为重叠的子数据集,分别处理后合并结果,有两轮 MapReduce 作业,第
超级会员免费看
订阅专栏 解锁全文
112

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



