Sklearn 中的层次聚类步骤
时间: 2024-04-02 15:36:06 浏览: 68
Python聚类算法之凝聚层次聚类实例分析
5星 · 资源好评率100%
Sklearn中实现的凝聚层次聚类(Agglomerative Clustering)的步骤如下:
1. 初始化:将每个样本看做一个单独的类簇。
2. 计算样本之间的距离:根据指定的距离度量方法(比如欧几里得距离或曼哈顿距离)计算每对样本之间的距离。
3. 合并距离最近的类簇:将距离最近的两个类簇合并为一个新的类簇。合并后的类簇之间的距离可以根据指定的链接方式(比如单链接、完全链接或平均链接)进行计算。
4. 重新计算距离矩阵:将新的类簇作为一个单独的样本,重新计算它与所有其他样本之间的距离。
5. 重复步骤3和4,直到所有的样本都被合并为一个类簇为止。
Sklearn中实现的分裂层次聚类(Divisive Clustering)的步骤与凝聚层次聚类相反,具体步骤如下:
1. 初始化:将所有的样本看做一个单独的类簇。
2. 计算样本之间的距离:根据指定的距离度量方法(比如欧几里得距离或曼哈顿距离)计算每对样本之间的距离。
3. 将类簇分裂为两个子类簇:根据指定的分裂方式(比如K均值、密度聚类或基于特征的分裂)将当前的类簇分裂为两个子类簇。
4. 重复步骤2和3,直到所有的样本都被分裂为单独的类簇为止。
需要注意的是,层次聚类是一种迭代的过程,每次合并或分裂类簇都会影响后续的结果,因此需要仔细选择距离度量方法、链接方式、分裂方式等参数。
阅读全文