聚类算法综述

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

西南民族大学学报·自然科学版第37卷5月专辑 Journal of Southwest University for Nationalities ⋅Natural Science Edition May.

2011___________________________________________________________________

___________________________

收稿日期:2011-03-01

作者简介:向培素(1974-), 女, 副教授, 主要研究方向: 计算机应用, 检索技术.

基金项目:本文是“西南民族大学校级科研项目”(09NYB007)的研究成果之一.

文章编号: 1003-2843(2011)05专-0112-03 聚类算法综述

向培素

(西南民族大学电气信息工程学院, 四川成都 610041)

摘 要: 聚类分析是一种基本的数据分析方法,它在数据挖掘,统计学,空间数据库技术,人工智能,生物学研究,机器学习,

模式识别等领域都得到了广泛的应用. 论文介绍了各类主要的聚类算法,并概述了其主要应用领域.

关键词: 聚类算法; 半监督聚类

中图分类号: G642 文献标志码: A

doi :10.3969/j.issn.1003-2483.2011.05专.33

随着信息技术的发展, 人们积累了越来越多的音、视频数据, 以及文本, 图片等数据, 为了从这些海量数据中查找, 提取有用信息, 出现了数据挖掘技术. 聚类作为数据挖掘的重要技术之一, 在机器学习、工程学、神经网络、生物学、统计学、地球科学以及社会科学和经济学等许多领域起着越来越重要的作用.

传统的聚类算法大致分为两类:层次聚类算法, 分割聚类算法.

1 层次聚类算法

层次聚类是对给定的数据对象的集合进行层次的分界, 根据一些指定标准把数据排列成一个树状结构的算法. 根据层次分界的表示方式, 层次聚类方法又可以分为凝聚的和分裂的两种.

凝聚算法先将每个数据作为一个簇, 然后根据一定的规则将簇合并, 凝聚算法又有单连接(single linkage)、全连接(complete linkage)和平均连接(average linkage)方法.

单连接是指当两个簇之间存在互连的边, 并且簇中数据最小距离小于等于给定的阈值, 则认为这两个簇的距离足够小, 可以合并. 全连接和单连接类似, 不过全连接是使用簇中数据的最大距离作为簇间距离. 平均连接使用两簇中数据的两两距离的平均值作为簇间距离.

分裂聚类先将所有数据归在一个簇里, 然后对簇中联系不紧密的数据进行分裂, 分到其他簇里, 分裂聚类有一些简化的算法, 如单元分裂法和多元分裂法. 单元分裂法每一次选取一个变量对簇进行分裂, 和变量相同的数据归为一类, 和变量不同的数据归为另一类. 多元分裂则是选取一个距离其他数据最远的数据构成分离组, 然后计算簇中每一个数据距离分离组的距离并和该数据与簇中其他数据的距离进行比较, 若该数据距离分离组的距离更近, 则将该数据划入分离组. 重复这个过程, 直到找不到这样的数据为止.

2 分割聚类算法

分割聚类法先对所有数据点进行较为粗略的划分, 然后通过重复的迭代算法使某个准则达到最优化来对划分进行修正. 分割聚类法又可以分为基于密度的算法, 基于网格的算法, 基于图论的算法, 基于平方误差的迭代重分配算法.

5月专辑

基于密度的聚类的主要思想是根据数据对象的分布密度, 将密度足够大的数据对象聚集成一类. 该类算法基于样本的邻域条件, 整个样本空间被低密度区间划分开, 且不需要预先知道聚类的数目, 只需一遍扫描就可以完成聚类的任务.

基于网格的聚类将数据空间分成有限数目的小空间以构成一个可以聚类的网格结构, 所有操作都在这些小空间中进行. 和基于密度的聚类只能处理数值型数据不同, 基于网格的聚类可以处理任意类型的数据. 基于网格的聚类需要考虑如何选择小空间的大小和数目以及如何对小空间中的信息进行汇总.

基于图论的聚类是把聚类问题映射为一个图论中的组合优化问题. 例如, 基于图论聚类中的谱聚类算法就是首先根据给定的样本数据集定义一个描述成对数据点相似度的亲合矩阵,并计算矩阵的特征值和特征向量,然后选择合适的特征向量聚类不同的数据对象, 本质还是将聚类问题转化为图的最优划分问题.

基于平方误差的迭代重分配聚类主要思想是逐步对聚类结果进行优化, 不断将目标数据集向各个聚类中心进行重新分配以获得最优解.

3 各种聚类算法的应用

3.1 K-mean算法在农用地分类中的应用

K-mean算法是前面介绍的分割聚类算法中基于平方误差的迭代重分配聚类算法中的一种. 它首先选取K 个初始聚类中心, 把每个对象分配给离它最近的聚点, 从而得到一组聚类. 然后计算当前每个聚类的中心作为新的聚点, 把每个对象重新分配到最近的聚点, 如果满足终止条件, 则算法结束, 用新聚类代替原聚类.

农用地分等问题实际属于分类问题, 在陈志民等人提出的算法中, 提出利用关联规则挖掘算法从已知类别的训练样本提取其中的分类关联规则作为监督信息, 结合非监督学习方法中的 K-mean 聚类算法, 对大量未标定样本进行分类的半监督学习方法. 对广东省土地资源的评价实验表明, 这种算法土地评价准确率为94.0622%.

3.2 边介数聚类算法在肿瘤基因表达谱中的应用

边介数聚类算法属于层次聚类中的凝聚算法, 边介数是指网络中所有节点对之间的最短路径中经过该边的路径数. 边介数最大边指经过该边的最短路径数最多. 边介数算法就是找出网络中边介数最大的边并删除这条边, 使得网络逐步聚成子网络.

在阮晓刚等人提出的算法中, 首先对原始数据进行降维以提取特征基因, 然后对特征基因构建基因网络, 最后用边介数算法对这个网络进行聚类以提取基因功能模块. 通过将最后得到的特征基因模块映射到GO数据库, 可以发现每个特征基因模块中的大多数基因都具有相同的有明确生物学意义的功能.

3.3 聚类算法在天文学中的应用

在严太生等人的文章里, 例举了聚类算法在天文学中的应用:

恒星/星系的分类是天文学的基本任务之一, 目前, 研究者们对应用聚类算法对天体进行自动聚类方面进行了探索和研究, 如mähönen等人应用模糊c均值聚类算法, 对天体进行自动分类. 用隶属度确定每个数据点属于某个聚类的程度:首先, 随机选择c个初始聚类中心, 然后根据最小距离原则将每个样本分配到某一类中, 之后不断迭代计算各类的聚类中心, 并依据新的聚类中心调整聚类情况直到迭代收敛. 实验表明, FCM聚类算法对天体自动分类, 能得到合理的结果, 和BP算法比较可见二者正确率相当, 但聚类算法能直接估计出分类的可靠性, 从而得到较全面的分类信息.

3.4 聚类算法在击剑训练负荷分析系统中的应用

训练负荷是导致运动员竞技能力提高的主要因素, 击剑训练负荷分析系统是为了能针对个人特点科学地安排击剑运动员的训练负荷. 它主要通过对运动员身体机能的多项生理生化指标的监测结果, 结合队医, 教练员对运动员的综合评价提供给教练员, 使其对运动员的身体机能状况做合理的分析, 及时调整训练方案以改善训练的质量和水平. 由于人体的生理过程十分复杂, 单靠监测一两项指标会造成系统不准确, 但是, 指标过多又会造成噪声过多, 使系统不易收敛, 甚至会使系统无法得到一致性的结果. 为了解决这一矛盾, 需要对数据进行预处理, 而聚类算法正是应用在预处理这一阶段.

相关文档
最新文档