聚类(Cluster analysis )
定义:根据数据的特征找出数据间的相似性,将相似的数据分成一个类。
作用:作为一个独立的工具对数据分布进行分析
可以作为其他算法(如分类等)的预处理步骤
Pattern Recognition
Spatial Data Analysis
Image Processing
Economic Science (especially market research)
对聚类模型的一些要求:
主要的聚类算法
1、基于划分的方法
给定一个n个对象或元组的数据库,划分方法构建数据的k个划分,每个划分表示一个聚类,并且k<=n。也就是说,它将数据划分为k个组,同时满足如下的要求:(1)每个组至少包含一个对象;(2)每个对象必须属于且只属于一个组。
典型算法:K-means
2、基于层次的聚类方法
主要思想是把数据对象排列成一个聚类树,在需要的层次上对其进行切 割,相关联的部分构成一个cluster。基于层次的聚类方法有两种类型: (1)聚合层次聚类。最初每个对象是一个cluster,然后根据它们之间的相似性,对这些原子的cluster进行合并。大多数层次方法属于这一类,它们的主要区别是cluster之间的相似性的定义不同。 (2)划分层次聚类,它与上面的过程正好相反。
典型算法:BIRCH
3、基于密度的方法
绝大多数划分方法基于对象之间的距离进行聚类。这样的方法只能发现凸状的簇,而在发现任意形状的簇上遇到了困难。 基于密度的聚类方法的主要思想是:只要临近区域的密度(对象或数据点的数目)超过某个阈值,就继续聚类。也就是说,对给定类中的每个数据点,在一个给定范围的区域中必须包含至少某个数目的点。这样的方法可以用来过滤“噪音”数据,发现任意形状的簇。
4、基于方格的方法
把多维数据空间划分成一定数目的单元,然后在这种数据结构上进行聚类操作。 该类方法的特点是它的处理速度,因为其速度与数据对象的个数无关,而只依赖于数据空间中每个维上单元的个数。
5、基于模型的方法
(1)神经网络方法 (2)统计的方法