打开主菜单

求真百科

聚类分析

聚类分析

来自 网络 的图片

聚类分析指将物理或抽象对象的集合分组为由类似的对象组成的多个类的分析过程。它是一种重要的人类行为。

聚类分析的目标就是在相似的基础上收集数据来分类。聚类源于很多领域,包括数学,计算机科学,统计学,生物学和经济学。在不同的应用领域,很多聚类技术都得到了发展,这些技术方法被用作描述数据,衡量不同数据源间的相似性,以及把数据源分类到不同的簇中。


目录

简介

聚类与分类的不同在于,聚类所要求划分的类是未知的。

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

从统计学的观点看,聚类分析是通过数据建模简化数据的一种方法。传统的统计聚类分析方法包括系统聚类法、分解法、加入法、动态聚类法、有序样品聚类、有重叠聚类和模糊聚类等。采用k-均值、k-中心点等算法的聚类分析工具已被加入到许多著名的统计分析软件包中,如SPSS、SAS等。

从机器学习的角度讲,簇相当于隐藏模式。聚类是搜索簇的无监督学习过程。与分类不同,无监督学习不依赖预先定义的类或带类标记的训练实例,需要由聚类学习算法自动确定标记,而分类学习的实例或数据对象有类别标记。聚类是观察式学习,而不是示例式的学习。

聚类分析是一种探索性的分析,在分类的过程中,人们不必事先给出一个分类的标准,聚类分析能够从样本数据出发,自动进行分类。聚类分析所使用方法的不同,常常会得到不同的结论。不同研究者对于同一组数据进行聚类分析,所得到的聚类数未必一致。

从实际应用的角度看,聚类分析是数据挖掘的主要任务之一。而且聚类能够作为一个独立的工具获得数据的分布状况,观察每一簇数据的特征,集中对特定的聚簇集合作进一步地分析。聚类分析还可以作为其他算法(如分类和定性归纳算法)的预处理步骤。

评价

聚类分析是数据挖掘中的一个很活跃的研究领域,并提出了许多聚类算法。传统的聚类算法可以被分为五类:划分方法、层次方法、基于密度方法、基于网格方法和基于模型方法。

1 划分方法(PAM:PArtitioning method) 首先创建k个划分,k为要创建的划分个数;然后利用一个循环定位技术通过将对象从一个划分移到另一个划分来帮助改善划分质量。典型的划分方法包括:

k-means,k-medoids,CLARA(Clustering LARge Application),

CLARANS(Clustering Large Application based upon RANdomized Search).

FCM

2 层次方法(hierarchical method) 创建一个层次以分解给定的数据集。该方法可以分为自上而下(分解)和自下而上(合并)两种操作方式。为弥补分解与合并的不足,层次合

并经常要与其它聚类方法相结合,如循环定位。典型的这类方法包括:

BIRCH(Balanced Iterative Reducing and Clustering using Hierarchies) 方法,它首先利用树的结构对对象集进行划分;然后再利用其它聚类方法对这些聚类进行优化。

CURE(Clustering Using REprisentatives) 方法,它利用固定数目代表对象来表示相应聚类;然后对各聚类按照指定量(向聚类中心)进行收缩。

ROCK方法,它利用聚类间的连接进行聚类合并。

CHEMALOEN方法,它则是在层次聚类时构造动态模型。

3 基于密度的方法,根据密度完成对象的聚类。它根据对象周围的密度(如DBSCAN)不断增长聚类。典型的基于密度方法包括:

DBSCAN(Densit-based Spatial Clustering of Application with Noise):该算法通过不断生长足够高密度区域来进行聚类;它能从含有噪声的空间数据库中发现任意形状的聚类。此方法将一个聚类定义为一组“密度连接”的点集。

OPTICS(Ordering Points To Identify the Clustering Structure):并不明确产生一个聚类,而是为自动交互的聚类分析计算出一个增强聚类顺序。。

4 基于网格的方法,首先将对象空间划分为有限个单元以构成网格结构;然后利用网格结构完成聚类。

STING(STatistical INformation Grid) 就是一个利用网格单元保存的统计信息进行基于网格聚类的方法。

CLIQUE(Clustering In QUEst)和Wave-Cluster 则是一个将基于网格与基于密度相结合的方法。

5 基于模型的方法,它假设每个聚类的模型并发现适合相应模型的数据。典型的基于模型方法包括:

统计方法COBWEB:是一个常用的且简单的增量式概念聚类方法。它的输入对象是采用符号量(属性-值)对来加以描述的。采用分类树的形式来创建一个层次聚类。

CLASSIT是COBWEB的另一个版本.。它可以对连续取值属性进行增量式聚类。它为每个结点中的每个属性保存相应的连续正态分布(均值与方差);并利用一个改进的分类能力描述方法,即不象COBWEB那样计算离散属性(取值)和而是对连续属性求积分。但是CLASSIT方法也存在与COBWEB类似的问题。因此它们都不适合对大数据库进行聚类处理.

传统的聚类算法已经比较成功的解决了低维数据的聚类问题。但是由于实际应用中数据的复杂性,在处理许多问题时,现有的算法经常失效,特别是对于高维数据和大型数据的情况。因为传统聚类方法在高维数据集中进行聚类时,主要遇到两个问题。①高维数据集中存在大量无关的属性使得在所有维中存在簇的可能性几乎为零;②高维空间中数据较低维空间中数据分布要稀疏,其中数据间距离几乎相等是普遍现象,而传统聚类方法是基于距离进行聚类的,因此在高维空间中无法基于距离来构建簇。

高维聚类分析已成为聚类分析的一个重要研究方向。同时高维数据聚类也是聚类技术的难点。随着技术的进步使得数据收集变得越来越容易,导致数据库规模越来越大、复杂性越来越高,如各种类型的贸易交易数据、Web 文档、基因表达数据等,它们的维度(属性)通常可以达到成百上千维,甚至更高。但是,受“维度效应”的影响,许多在低维数据空间表现良好的聚类方法运用在高维空间上往往无法获得好的聚类效果。高维数据聚类分析是聚类分析中一个非常活跃的领域,同时它也是一个具有挑战性的工作。目前,高维数据聚类分析在市场分析、信息安全、金融、娱乐、反恐等方面都有很广泛的应用。 [1]

参考文献