(完整版)聚类算法总结.doc

  • 格式:doc
  • 大小:460.52 KB
  • 文档页数:13

下载文档原格式

  / 13
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.聚类定义

“聚类是把相似的对象通过静态分类的方法分成不同的组别或者

更多的子集( subset),这样让在同一个子集中的成员对象都有一

些相似的属性”—— wikipedia “聚类分析指将物理或抽象对象

的集合分组成为由类似的对象组

成的多个类的分析过程。它是一种重要的人类行为。聚类是将数

据分类到不同的类或者簇这样的一个过程,所以同一个簇中的对

象有很大的相似性,而不同簇间的对象有很大的相异性。”——百度百科

说白了,聚类( clustering)是完全可以按字面意思来理解的——将相同、相似、相近、相关的对象实例聚成一类的过程。简单理

解,如果一个数据集合包含 N 个实例,根据某种准则可以将这 N 个

实例划分为 m 个类别,每个类别中的实例都是相关的,而不同类别

之间是区别的也就是不相关的,这个过程就叫聚类了。

2.聚类过程 :

1)数据准备 :包括特征标准化和降维 .

2)特征选择 :从最初的特征中选择最有效的特征 ,并将其存储于向量

中 .

3)特征提取 :通过对所选择的特征进行转换形成新的突出特征.

4)聚类 (或分组 ):首先选择合适特征类型的某种距离函数 (或构造新的距离函数 )进行接近程度的度量 ;而后执行聚类或分组 .

5)聚类结果评估 :是指对聚类结果进行评估 .评估主要有 3 种 :外部有效性评估、内部有效性评估和相关性测试评估.

3聚类算法的类别

没有任何一种聚类技术(聚类算法 )可以普遍适用于揭示各种多维数据集所呈现出来的多种多样的结构,根据数据在聚类中的积聚规则以及应用这些规则的方法,有多种聚类算法.聚类算法有多种分类方法将聚类算法大致分成层次化聚类算法、划分式聚类算

法、基于密度和网格的聚类算法和其他聚类算法,如图1 所示的4 个类别.

3.聚类算法

基于层次聚类算法:

采用抽样技术先对数据集D随机抽取样本,再CURE:采用分区技术对样本进行分区,然后对每个分

区局部聚类,最后对局部聚类进行全局聚类ROCK:

也采用了随机抽样技术,该算法在计算两个对

象的相似度时,同时考虑了周围对象的影响

首先由数据集构造成一个K- 最近邻图 Gk , 再CHEMALOEN(变色龙

通过一个图的划分算法将图Gk 划分成大量

的子图 , 每个子图代表一个初始子簇, 最后用算法):

一个凝聚的层次聚类算法反复合并子簇,找到

真正的结果簇

SBAC算法则在计算对象间相似度时,考虑了SBAC:属性特征对于体现对象本质的重要程度,对于

更能体现对象本质的属性赋予较高的权值

BIRCH算法利用树结构对数据集进行处理,叶

结点存储一个聚类,用中心和半径表示,顺序BIRCH:处理每一个对象,并把它划分到距离最近的结

点,该算法也可以作为其他聚类算法的预处理

过程

BUBBLE:

BUBBLE算法则把 BIRCH算法的中心和半径概

念推广到普通的距离空间

BUBBLE-FM:BUBBLE-FM算法通过减少距离的计算次数,提

高了 BUBBLE 算法的效率

结合了 K-Means 和 K-Modes 两种算法,能够处

理混合型数据

在迭代过程中选择簇中的某点作为聚点,

PAM

是典型的 k-medoids 算法

CLARA 算法在 PAM 的基础上采用了抽样技术, 能

够处理大规模数据

CLARANS 算法融合了 PAM 和 CLARA 两者的优点,

是第一个用于空间数据库的聚类算法

采用了空间索引技术提高了 CLARANS 算法的效

Focused CLARAN :

模糊集合理论引入聚类分析中并提出了

PCM 模

PCM :

糊聚类算法

基于划分聚类算法( partition clustering)

是一种典型的划分聚类算法,它用一个聚类的

中心来代表一个簇,即在迭代过程中选择的聚

k-means : 点不一定是聚类中的一个点,该算法只能处理数值型数据

K-Means 算法的扩展,采用简单匹配方法来度量

k-modes : 分类型数据的相似度

k-medoids

CLARA : CLARANS : k-prototypes

基于密度聚类算法:

DBSCAN算法是一种典型的基于密度的聚类算法,

该算法采用空间索引技术来搜索对象的邻域,引入DBSCAN:

了“核心对象”和“密度可达”等概念,从核心对

象出发,把所有密度可达的对象组成一个簇

算法通过泛化DBSCAN算法中邻域的概念,以适应GDBSCAN:

空间对象的特点

DBLASD:

OPTICS 算法结合了聚类的自动性和交互性,先生OPTICS:成聚类的次序,可以对不同的聚类设置不同的参

数,来得到用户满意的结果

FDC算法通过构造k-d tree把整个数据空间划分FDC:成若干个矩形空间,当空间维数较少时可以大大提

高DBSCAN的效率

基于网格的聚类算法:

利用网格单元保存数据统计信STING:

息,从而实现多分辨率的聚类

在聚类分析中引入了小波变换

的原理,主要应用于信号处理领

域。(备注:小波算法在信号处WaveCluster :

理,图形图像,加密解密等领域

有重要应用,是一种比较高深和

牛逼的东西)

是一种结合了网格和密度的聚CLIQUE:

类算法

OPTIGRID:

K-Means 算法

KMeans 算法的基本思想是初始随机给定K 个簇中心,按照最邻近原则把待分类样本点分到各个簇。然后按平均法重新计算各个簇的质心,从而确定新的簇心。一直迭代,直到簇心的移动距离

小于某个给定的值。

在聚类问题中,给我们的训练样本是,每个

K-means 算法是将样本聚类成k 个簇(cluster),具体算法描述如下:

(1)第一步是为待聚类的点寻找聚类中心

(2)第二步是计算每个点到聚类中心的距离,将每个点聚类到离该