b)基于层次的聚类算法
层次的方法对给定的数据对象集合进行层次的分解。根据层次的分解如何形成,层次的方法可以分为凝聚和分裂两大类。凝聚方法,也称为自底向上的方法,一开始将每个对象作为单独的一个类,然后相继地合并相近的类,直到所有的对象都合并成一个类(层次的最上层),或者达到一个终止条件。分裂方法,也称为自项向下的方法,一开始将所有的对象置于一个类中,在迭代的每一步中,类被分裂为更小的类,直到每个类只包含一个对象为止,或者达到一个终止条件。来.自/751论|文-网www.751com.cn/
c)基于密度的聚类算法
绝大多数划分方法基于对象之间的距离进行聚类,这样的方法只能发现球状的类,而在发现任意形状的类上遇到了困难,因此出现了基于密度的聚类方法。基于密度的聚类方法认为一个数据空间中,高密度的数据对象区域被低密度的对象区域所分割。其主要思想是:只要邻近区域的密度(对象或数据点的数目)超过某个阈值,就继续聚类。也就是说,对给定类中的每个数据点,在一个给定范围的区域内必须至少包含某个数目的点。这样的方法可以过滤“噪音”数据,发现任意形状的类。Este等提出的DBSCAN(Density—Based Spatial Clustering of Applications with Noise)是一种常用的基于密度的聚类方法。该算法将具有足够高密度的区域划分为类,并可以在带有“噪音"的空间数据中发现任意形状的类。
d)基于网格的聚类算法
基于网格的方法把对象空间量化为有限数目的单元,形成一个网格结构。所有的聚类操作都在这个网格结构(即量化空间)上进行。这种方法的优点是处理速度快,其处理速度独立于数据对象的数目,只与量化空间中每一维的单元数目有关。常用的基于网格的聚类算法有Wang等提出的STING/291(STatistical INformation Grid)算法和Agrawal等提出的CLIQUE算法。
e)基于模型的聚类算法
基于模型的方法主要有两种:统计方法和神经网络方法。
大多聚类都采用了统计方法,也就是利用概率参数来帮助确定概念或聚类。所获得的每个聚类通常都是通过概率描述来表示的。COBWEB是一个常用并且简单量式概念聚类方法。它的输入对象是采用符号量来描述的,采用分类树的形式创建一个层次聚类。一个分类树中的一层形成一个划分。COBWEB的另外一个版CLASSIT,它可以对连续取值属性进行增量式聚类。这两个方法都不适用于对大库进行聚类。
神经网络聚类方法是将每个聚类描述成一个例证,每个例证作为聚类的原型,然后根据某种度量,将新的对象分配到最相似的聚类之中。主要的方法有:竞争学习方法和自组织特征映射方法。