深度剖析:数据科学家需懂的5种聚类算法
分层聚类算法实际上分为两类:自上而下或自下而上。自下而上的算法首先将每个数据点视为一个单一的聚类,然后连续地合并(或聚合)成对的聚类,直到所有的聚类都合并成一个包含所有数据点的聚类。因此,自下而上的分层聚类被称为分层凝聚聚类或HAC。这个集群的层次表示为树(或树状图)。树的根是收集所有样本的唯一聚类,叶是仅具有一个样本的聚类。在进入算法步骤之前,请查看下面的图解。 我们首先将每个数据点视为一个单一的聚类,即如果我们的数据集中有X个数据点,那么我们有X个聚类。然后,我们选择一个度量两个集群之间距离的距离度量。作为一个例子,我们将使用平均关联,它将两个集群之间的距离定义为第一个集群中的数据点与第二个集群中的数据点之间的平均距离。 ▲凝聚层次聚类 1.在每次迭代中,我们将两个集群合并成一个集群。这两个要组合的组被选为那些平均联系最小的组。根据我们选择的距离度量,这两个群集之间的距离最小,因此是最相似的,应该结合起来。 2.重复步骤2直到我们到达树的根,即我们只有一个包含所有数据点的聚类。通过这种方式,我们可以选择最终需要多少个集群,只需选择何时停止组合集群,即停止构建树时。 3.分层聚类不需要我们指定聚类的数量,我们甚至可以选择哪个数量的聚类看起来最好,因为我们正在构建一棵“树”。另外,该算法对距离度量的选择不敏感,所有算法都能很好的工作,而与其他聚类算法,距离度量的选择是至关重要的。分层聚类方法的一个特别好的用例是基础数据具有层次结构,并且想要恢复层次结构; 其他聚类算法不能做到这一点。与K-Means和GMM的线性复杂性不同,层次聚类的这些优点是以较低的效率为代价的,因为它具有O(n 3)的时间复杂度。 (编辑:西安站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |