一、层次聚类
层次聚类方法对给定的数据集进行层次的分解,知道某种条件满足为止。层次聚类又可分为:
凝聚的层次聚类:AGNES算法
一种自底向上的策略,首先将每个对象做为一个簇,然后合并这些原子簇为越来愈大的簇,直到达到某个终结条件。
AGNES算法最初将每个对象做为一个簇,然后这些簇根据某些准则被一步步地合并。两个簇间的距离由这两个不同簇中距离最近的数据点对的相似度来确定;聚类的合并过程反复进行直到所有的对象最终满足簇数目。
分裂的层次聚类:DIANA算法
采用自顶向下的策略,它首先将所有对象置于一个簇中,然后逐渐细分为越来越小的簇,直到达到了某个终结条件。
DIANA算法是AGNES算法的反过程,属于分裂的层次聚类,首先将所有的对象初始化到一个簇中,然后根据一些原则(比如最大的欧式距离)将该簇分类。直到达到用户指定的簇数目或者两个簇之间的距离超过了某个阈值。
聚类过程如下图:
从左向右的过程为AGNES,从右向左的过程为DIANA。
AGNES具体算法如下:
二、密度聚类
密度聚类算法的指导思想是,当样本点的密度大于