(1)划分方法
给定一个有N个元组或者记录的数据集,分裂法将构造K个分组,每一个分组就代表一个聚类,K
(2)层次方法
这种方法对给定的数据集进行层次似的分解,直到某种条件满足为止。具体又可分为“自底向上”和“自顶向下”两种方案。例如在“自底向上”方案中,初始时每一个数据记录都组成一个单独的组,在接下来的迭代中,它把那些相互邻近的组合并成一个组,直到所有的记录组成一个分组或者某个条件满足为止。
代表算法有:BIRCH算法、CURE算法、CHAMELEON算法等。
(3)基于密度的方法
基于密度的方法与其它方法的一个根本*区别是:它不是基于各种各样的距离,而是基于密度的。这样就能克服基于距离的算法只能发现“类圆形”的聚类的缺点。这个方法的指导思想就是:只要一个区域中的点的密度大过某个阈值,就把它加到与之相近的聚类中去。
代表算法有:DBSCAN算法、OPTICS算法、DENCLUE算法等。
(4)基于模型的方法
基于模型的方法给每一个聚类假定一个模型,然后去寻找能够很好的满足这个模型的数据。这样一个模型可能是数据点在空间中的密度分布函数或者其它。它的一个潜在假定就是:目标数据集是由一系列的概率分布所决定的。
基于模型的方法主要有两类:统计学方法和神经网络方法(SOM)。