聚类算法总结

更新时间:2023-11-13 01:03:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1.聚类定义

“聚类是把相似的对象通过静态分类的方法分成不同的组别或者更多的子集(subset),这样让在同一个子集中的成员对象都有一

些相似的属性” ——wikipedia “聚类分析指将物理或抽象对象的集合分组成为由类似的对象组成的多个类的分析过程。它是一种重要的人类行为。聚类是将数据分类到不同的类或者簇这样的一个过程,所以同一个簇中的对

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

说白了,聚类(clustering)是完全可以按字面意思来理解的——将相同、相似、相近、相关的对象实例聚成一类的过程。简单理解,如果一个数据集合包含N个实例,根据某种准则可以将这N个实例划分为m个类别,每个类别中的实例都是相关的,而不同类别之间是区别的也就是不相关的,这个过程就叫聚类了。

2.聚类过程:

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

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

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

4) 聚类(或分组):首先选择合适特征类型的某种距离函数(或构造新的距离函数)进行接近程度的度量;而后执行聚类或分组. 5) 聚类结果评估:是指对聚类结果进行评估.评估主要有3 种:外部有效性评估、内部有效性评估和相关性测试评估.

3聚类算法的类别

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

3.聚类算法

基于层次聚类算法:

采用抽样技术先对数据集D随机抽取样本,再CURE: 采用分区技术对样本进行分区,然后对每个分区局部聚类,最后对局部聚类进行全局聚类 也采用了随机抽样技术,该算法在计算两个对ROCK: 象的相似度时,同时考虑了周围对象的影响 首先由数据集构造成一个K-最近邻图Gk ,再通过一个图的划分算法将图Gk 划分成大量CHEMALOEN(变色龙的子图,每个子图代表一个初始子簇,最后用算法): 一个凝聚的层次聚类算法反复合并子簇,找到真正的结果簇 SBAC算法则在计算对象间相似度时,考虑了SBAC: 属性特征对于体现对象本质的重要程度,对于更能体现对象本质的属性赋予较高的权值 BIRCH算法利用树结构对数据集进行处理,叶结点存储一个聚类,用中心和半径表示,顺序BIRCH: 处理每一个对象,并把它划分到距离最近的结点,该算法也可以作为其他聚类算法的预处理过程 BUBBLE算法则把BIRCH算法的中心和半径概BUBBLE: 念推广到普通的距离空间 BUBBLE-FM: BUBBLE-FM算法通过减少距离的计算次数,提高了BUBBLE算法的效率

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

是一种典型的划分聚类算法,它用一个聚类的中心来代表一个簇,即在迭代过程中选择的聚k-means: 点不一定是聚类中的一个点,该算法只能处理数值型数据 K-Means算法的扩展,采用简单匹配方法来度量k-modes: 分类型数据的相似度 结合了K-Means和K-Modes两种算法,能够处k-prototypes: 理混合型数据 在迭代过程中选择簇中的某点作为聚点,PAMk-medoids: 是典型的k-medoids算法 CLARA算法在PAM的基础上采用了抽样技术,能CLARA: 够处理大规模数据 CLARANS算法融合了PAM和CLARA两者的优点,CLARANS: 是第一个用于空间数据库的聚类算法 采用了空间索引技术提高了CLARANS算法的效Focused CLARAN: 率 模糊集合理论引入聚类分析中并提出了PCM模PCM: 糊聚类算法

本文来源:https://www.bwwdw.com/article/e4qv.html

Top