才子佳人博客

我的故事我讲述

典型聚类方法简介
 
来源:xjh  编辑:xjh  2016-05-23

将物理或抽象对象的集合分成由类似的对象组成的多个类的过程被称为聚类。由聚类所生成的簇是一组数据对象的集合,这些对象与同一个簇中的对象彼此相似,与其他簇中的对象相异。聚类分析起源于分类学,但是聚类不等于分类。聚类与分类的不同在于,聚类所要求划分的类是未知的。

简言之,聚类是将数据分类到不同的类或者簇这样的一个过程,所以同一个簇中的对象有很大的相似性,而不同簇间的对象有很大的相异性。

聚类算法的要求:

数据挖掘对聚类算法的要求:可伸缩性(在小数据集上算法优,同样要求在大数据集上算法优)、处理不同类型数据的能力、发现任意形状簇的能力、输入参数的领域知识最小化、处理噪声数据的能力、对输入数据顺序的敏感、可解释性和可用性、基于约束的聚类、处理高维数据的能力。

聚类方法的分类:

1、基于划分的方法:构建数据集的k个划分,每个划分表示一个聚类(每个划分至少包含一个对象、每个对象只属于一个划分(可相应变动))。基于划分的方法为了达到全局的最优,可能要穷举所有的可能化分,这种算法时间复杂度太大。因此采用两种比较流行的启发式算法kmeans(每个簇用该簇中的平均值代替)kmedoids(每个簇用最接近中心的一个对象来表示)这些算法在小规模数据的应用上达到了一个很好的效果。

2、层次方法:将数据对象组成一棵聚类树(凝聚层次和分裂层次)凝聚层次聚类和分裂层次聚类一个是自底向上合并相近的对象或者组,直到所有的组合合并为1个或者达到一个终止条件。分裂层次聚类就是一个相反的过程。层次聚类算法的缺陷在于:一旦一个步骤执行完毕,就不可以被撤销。话外之意就是不能改正错误的决定。目前对于层次聚类算法提出了些改进的算法。层次聚类代表算法:BIRCH、CURE、ROCK算法。

3、基于密度的算法:绝大部分划分的方法都是基于对象之间的距离大小进行划分。这些方法能够发现球状的簇,而在检测任意形状的簇上遇到了困难。就出现了基于密度的算法。主要思想:只要邻近区域的密度超过某个阀值就继续聚类,DBSCAN是一种具有代表性的基于密度的聚类算法。

4、基于图的聚类算法:基于图的聚类算法,利用了图的许多重要的性质和特性。代表算法Chameleon和SNN。

5、基于模型的方法:试图将给定数据与某个数学模型达成最佳的拟合。代表算法期望最大化EM算法。

6、基于网格的方法,首先将对象空间划分为有限个单元以构成网格结构,然后利用网格结构完成聚类。STING(STatistical INformation Grid) 就是一个利用网格单元保存的统计信息进行基于网格聚类的方法。CLIQUE(Clustering In QUEst)和Wave-Cluster 则是一个将基于网格与基于密度相结合的方法。


来源:

蒋盛益等,《数据挖掘原理与实践》,电子工业出版社,2013.2
史忠植,《高级人工智能第三版》,科学出版社,P298-P311
http://demo.netfoucs.com/codeaswind/article/details/39398511


分类:网络日志| 查看评论
相关文章
文章点击排行
本年度文章点击排行
发表评论:
  • 昵称: *
  • 邮箱: *
  • 网址:
  • 评论:(最多100字)
  • 验证码: