BIRCH算法通过将大规模数据集高效压缩为若干紧凑且统计信息完备的聚类特征项(Clustering Feature, CF)来实现数据摘要,每个CF本质上是一个可进行层次聚合的三元组(N, LS, SS),其中N表示簇内样本数量,LS是各维度线性求和的向量,SS是各维度平方和的向量,这些特征项不仅能够通过向量加法合并形成更高层次的CF节点,还能保...
对于BIRCH算法而言,主要的步骤就是构建CF tree, 树状结构构建好之后,后续还可以有些可选步骤,常见的可选步骤如下 1. 去除异常的CF点,通常是包含样本较少的CF 2. 利用其它聚类算法,比如K-means 对CF Tree进行聚类, 用于调整样本读入顺序造成的树状结构的不合理 3. 利用CF节点的质心,对样本点进行聚类 在scikit-...
一、BIRCH 聚类基本原理 BIRCH,Balanced Iterative Reducing and Clustering Using Hierarchies,翻译过来就是“利用层次方法的平衡迭代规约和聚类“,全称非常复杂。 简单来说,BIRCH 算法利用了一个树结构来帮助我们快速的聚类,这个特殊的树结构,就是我们后面要详细介绍的聚类特征树(CF-tree)。 可以说只要构造好了CF-树,...
BIRCH的全称是利用层次方法的平衡迭代规约和聚类(Balanced Iterative Reducing and Clustering Using Hierarchies),其实只要明白它是用层次方法来聚类和规约数据就可以了。BIRCH只需要单遍扫描数据集就能进行聚类,那它是怎么做到的呢? BIRCH算法利用了一个树结构来帮助实现快速的聚类,这个数结构类似于平衡B+树,一般将它称...
1. sklearn之BIRCH类 在sklearn中,BIRCH类实现了基于特征树CF Tree的聚类。因此要使用BIRCH来聚类,关键是对CF Tree结构参数的处理。 在CF Tree中,几个关键的参数为内部节点的最大CF数B,叶子节点的最大CF数L, 叶节点每个CF的最大样本半径阈值T。这三个参数定了,CF Tree的结构也基本确定了,最后的聚类效果也...
Birch是平衡迭代归约及聚类算法,全称为Balanced Iterative Reducing and Clustering using Hierarchies,是一种常用的层次聚类算法。该算法通过聚类特征(Clustering Feature,CF)和聚类特征树(Clustering Feature Tree,CFT)两个概念描述聚类。聚类特征树用来概括聚类的有用信息,由于其占用空间小并且可以存放在内存中,从而提高了...
BIRCH聚类揭秘:CFTree生成 BIRCH,全称是利用层次方法的平衡迭代规约和聚类(Balanced Iterative Reducing and Clustering Using Hierarchies),虽然名字有点长,但其实只要理解它是用层次方法来聚类和规约数据就可以了。BIRCH算法的核心在于使用一个树结构来快速进行聚类,这个树结构类似于平衡B+树,通常被称为聚类特征树(Cluste...
4)(可选)利用第三步生成的CF Tree的所有CF节点的质心,作为初始质心点,对所有的样本点按距离远近进行聚类。这样进一步减少了由于CF Tree的一些限制导致的聚类不合理的情况。 从上面可以看出,BIRCH算法的关键就是步骤1,也就是CF Tree的生成,其他步骤都是为了优化最后的聚类结果。
Birch算法的步骤如下: (1)初始化CF树和CF节点; (2)扫描数据集,将每个数据点插入CF树; (3)计算每个CF节点的紧凑性以及节点的相似度; (4)根据相似度对节点进行合并操作; (5)不断重复(3)和(4)步骤,直到达到预设的聚类数目。 3.算法优点 (1)适用于大规模数据集:Birch算法通过使用CF树和CF节点结构,有效地...
BIRCH算法的主要缺点有: 1) 由于CF Tree对每个节点的CF个数有限制,导致聚类的结果可能和真实的类别分布不同. 2) 对高维特征的数据聚类效果不好。此时可以选择Mini Batch K-Means 3) 如果数据集的分布簇不是类似于超球体,或者说不是凸的,则聚类效果不好。