论文部分内容阅读
聚类分析是数据挖掘的功能之一,是在训练数据不提供类标号的情况下按照最大化类内对象间的相似性、最小化不同类对象之间的相似性的原则聚类和分组数据。目前,存在着大量的聚类算法,K均值算法是应用广泛的聚类算法之一。K均值算法的优点是:算法思想简单;时间复杂度接近线性;对大规模数据的挖掘具有可伸缩性,但是该算法存在如下缺点:对聚类初始值的依赖;聚类个数K需要预先给定;准则函数易陷入局部极小;对离群点敏感等等。本文重点针对K均值算法对初始聚类中心的依赖性,提出了基于密度选取K个初始聚类中心的算法。其主要思想是:在一个数据集合里,高密度区域的数据对象被低密度区域的对象所分割,处于低密度区域的数据对象通常被认为是噪声点。首先根据两个参数(邻域半径ε、高密度点在邻域半径内至少包含数据对象的数目MinPts),划分高低密度点,然后取高密度点集合G中相距最远的K个点作为初始聚类中心。通过在不同数据集(来自UCI数据库)上对两个算法的多次对比实验,验证了基于密度选取K个初始聚类中心的K均值算法比传统的K均值算法聚类结果准确率更高,更稳定。研究进一步给出了基于距离矩阵D确定ε和MinPts参数值的方法。主要思想是:通过距离矩阵计算每个对象距离的中间值(median),然后取这些中间值的平均值作为ε的值。计算每个对象邻域半径e内对象的个数,将这些个数相加,再除以2*n,获得参数MinPts的值,其中n是数据集对象的个数。通过检验聚类结果是否理想或者以文献已给定的经验值作正确性判断依据,两种检验方法的多次实验都验证了计算两个参数值的算法是可用的。