论文部分内容阅读
数据挖掘技术可以从大量数据中发现潜在的、有价值的知识,它给人们在信息时代所积累的海量数据赋予了新的意义。随着数据挖掘技术的迅速发展,作为其重要组成部分,聚类分析和孤立点检测技术已经广泛应用于模式识别、数据分析、图像处理、市场研究等许多领域。聚类及孤立点检测算法研究已经成为数据挖掘研究领域中非常活跃的一个研究课题。 本文介绍了数据挖掘理论,对聚类及孤立点检测算法进行了深入地分析研究。在分析基于距离和基于密度的聚类算法的基础上,提出了基于距离的聚类和孤立点检测算法(Distance-Based Clustering and Outlier Detection Algorithm),对算法进行了较为详细的描述,阐述了算法中各个函数的功能,给出了程序流程图。该算法根据距离阈值对数据点进行聚类,在聚类过程中记录所有数据点的密度,并根据密度阈值确定数据点是否为孤立点,根据类中元素个数判定所得聚类是有效聚类还是孤立点类。该算法时间复杂度是0(n~2),空间复杂度是0(n),其中,n是数据规模。 本文使用Visual C++ 6.0实现了基于距离的聚类和孤立点检测算法、k-means算法和DBSCAN算法,做了大量的对比实验,包括聚类算法和孤立点检测正确性实验;聚类算法和孤立点检测精度实验;算法执行时间实验;参数对聚类和孤立点检测结果的影响实验;数据输入顺序对算法聚类和孤立点精度的影响实验;数据集密度对算法有效性的影响等。 实验结果表明,基于距离的聚类和孤立点检测算法不仅能够对数据集进行正确的聚类,同时能有效进行孤立点检测,有效解决了传统算法只能聚类或只能进行孤立点检测的缺陷;比k-means算法有更好的聚类精度;比DBSCAN算法的聚类效率高;适于均匀密度数据集、高密度数据集的聚类和孤立点检测;可以发现任意形状的聚类,对噪音数据、数据输入顺序不敏感;对参数敏感;但对多密度数据集的聚类及孤立点检测结果不理想。 总之,基于距离的聚类和孤立点检测算法能够准确、有效的发现聚类和孤立点,算法在执行效率、聚类及孤立点检测效果等方面有一定的优越性。