推荐机器学习:基于层次的聚类算法

Posted 机器学习研究会

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了推荐机器学习:基于层次的聚类算法相关的知识,希望对你有一定的参考价值。



点击上方 “机器学习研究会”可以订阅哦
摘要
 

尽管基于划分的聚类算法能够实现把数据集划分成指定数量的簇,但是在某些情况下,需要把数据集划分成不同层上的簇:比如,作为一家公司的人力资源部经理,你可以把所有的雇员组织成较大的簇,如主管、经理和职员;然后你可以进一步划分为较小的簇,例如,职员簇可以进一步划分为子簇:高级职员,一般职员和实习人员。所有的这些簇形成了层次结构,可以很容易地对各层次上的数据进行汇总或者特征化。


另外,使用基于划分的聚类算法(K-means,CLARA等)的一个问题是,需要指定一个划分簇的数量K。然而在实践中,簇的数量K往往没有办法提前确定,或者随着关注的数据特征不同,想要的K值也随之变化。对于分布如下的数据:

直观来看,上图中展示的数据划分为2个簇或4个簇都是合理的,甚至,如果上面每一个圈的内部包含的是大量数据形成的数据集,那么也许分成16个簇才是所需要的。

所以,讨论数据集应该聚类成多少个簇,通常是在讨论我们在什么尺度上关注这个数据集。层次聚类算法相比划分聚类算法的优点之一是可以在不同的尺度上(层次)展示数据集的聚类情况。


基于层次的聚类算法(Hierarchical Clustering)可以是凝聚的(Agglomerative)或者分裂的(Divisive),取决于层次的划分是“自底向上”还是“自顶向下”。

自顶向下: 它把所有对象至于一个簇中开始,该簇是层次结构的根。然后,它把根上的簇划分为多个较小的子簇,并且递归地把这次簇划分成更小的簇,直到满足终止条件。常见的自顶向下的算法有K-means层次聚类算法。

自底向上:把数据集中的每个对象最为一个簇开始,迭代地把簇合并成为更大的簇,直到最终形成一个大簇,或者满足某个终止条件。基于自底向上算法有凝聚算法、BIRCH算法、CURE算法、变色龙算法等。


原文链接:

https://www.qcloud.com/community/article/752011

“完整内容”请点击【阅读原文】
↓↓↓

以上是关于推荐机器学习:基于层次的聚类算法的主要内容,如果未能解决你的问题,请参考以下文章

机器学习DBSCAN Algorithms基于密度的聚类算法

简单易学的机器学习算法——基于密度的聚类算法DBSCAN

机器学习:聚类算法简介

机器学习实战精读--------K-均值聚类算法

基于k-means的聚类算法—机器学习

机器学习-层次聚类(谱系聚类)算法