算法 | 概括 | 优缺点 |
---|---|---|
AGNES | 典型的凝聚式层次聚类 | |
DIANA | 典型的划分式层次聚类 | 划分式层次聚类的复杂度比凝聚式的大得多,所以较为少用。 |
CURE | 用到了kd-tree跟heap。 合并两个类的时候,先选若干well-scattered的点。从中挑出离中心最远的点,之后再挑离该点最远的点…如此得到一堆代表点,基于这些点去做层次聚类。 对于大数据:先随机抽样,再对样本进行分区,然后对每个分区局部聚类,最后对局部聚类进行全局聚类。 | 时间上最坏是: O(n 2 log(n)) 若数据维度较小,可以降到: O(n 2 ) 空间复杂度是: O(n) |
ROCK | 1.生成相似度矩阵。 2.根据相似度阈值得到邻居矩阵-A。 3.计算链接矩阵-L=A x A 4.计算相似性的度量(Goodness Measure),将相似性最高的两个对象合并。(用到了链接矩阵) ROCK算法首先用相似度阀值和共同邻居的概念,从给定的数据相似度矩阵中构建一个稀疏图,然后对该稀疏图使用分层聚类算法进行聚类 | CURE算法不能处理枚举型数据,而ROCK算法是在CURE基础之上适用于枚举数据的聚结分层聚类算法。 |
Chameleon | 1.由数据集构造成一个K-近邻图 G k 2.通过图的划分算法将图 G k 划分成大量的子图,每个子图代表一个初始子簇 3.凝聚式层次聚类 | Chameleon跟CURE和DBSCAN相比,在发现高质量的任意形状的聚类方面有更强的能力。但是,在最坏的情况下,高维数据的处理代价可能对n个对象需要 O(n 2 ) 的时间。 |
BIRCH | 用到了 CF<n,LS,SS> CF-tree类似于B-树,有两个参数:内部节点平衡因子 B ,叶节点平衡因子 L ,簇半径阈值 T 。 1.自上而下选择最近的子节点 | BIRCH优点: 1.节省内存。叶子节点放在磁盘分区 2. 在对树进行插入或查找操作很快。 3.一遍扫描数据库即可建树。 4.可识别噪声点。 5. 可作为其他聚类算法的预处理过程 BIRCH缺点: |
*BUBBLE | 把BIRCH算法的中心和半径概念推广到普通的距离空间 | |
*BUBBLE-FM | 通过减少距离的计算次数,提高了BUBBLE算法的效率 | |
Probabilistic agglomerative clustering | 距离度量用: dist(C 1 ,C 2 )=−log((P(C 1 ∪C 2 ))/(P(C 1 )P(C 2 ))) 如果dist小于零,则合并两个簇。 | 易于理解 一般跟其他凝聚式层次聚类算法的效率差不多 但是:it outputs only one hierarchy with respect to a chosen probabilistic model; it cannot handle the uncertainty of cluster hierarchies. |
聚类算法总结 - Hierarchical Clustering
原文作者:聚类算法
原文地址: https://blog.csdn.net/xavierwu/article/details/48712635
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
原文地址: https://blog.csdn.net/xavierwu/article/details/48712635
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。