论文部分内容阅读
随着高级数据库系统以及互联网的飞速发展,数据以各种复杂形式持续地急剧增长,在实际应用中需要一种新的能够对其进行有效挖掘处理的数据分析工具。聚类分析是数据挖掘技术中的重要研究领域,它是一种按照相似性度量将数据集中的数据划分到不同的类的无监督学习过程。k-means算法是基于划分的方法,它有着简单易实现、聚类速度快、局部搜索能力比较强等优点,在遥感图像处理、模式识别、生物信息学、金融贸易等多种领域得到广泛的应用。因此,对k-means聚类算法的研究具有一定的理论和实践意义。然而,k-means算法对聚类初值有很大的依赖性,不同的初始中心点可能导致不同的聚类结果,波动性较大,而且算法容易陷入局部极值,无法获得全局最优解。针对k-means算法存在的问题,本文利用粒子群优化算法具有较强的全局搜索与优化能力的特点,提出一种基于改进粒子群优化算法的k-means聚类算法。首先利用粒子群优化算法进行全局搜索,然后将其搜索到的k个全局最优的聚类中心作为k-means算法的初始聚类中心,运行k-means算法得到最后的聚类划分结果。算法的改进与优化主要在以下几个方面:(1)根据粒子群的适应度方差来决定混合算法中前部分粒子群优化算法和后部分k-means算法的切换时机;(2)动态更新惯性权重、增加飞行时间因子,增强粒子群优化算法的全局搜索能力;(3)利用变量实时监控各个粒子以及整个粒子群的最优值的变化情况,以便及时了解粒子群的状态,判断其是否出现早熟收敛的现象;(4)对出现早熟收敛的粒子进行变异操作,增加粒子群的多样性,使粒子群优化算法及时摆脱局部极值的限制。接着针对单机改进的k-means聚类算法执行效率低、无法满足大规模数据集聚类性能需求的问题,论文给出改进聚类算法基于MapReduce分布式框架的并行化策略,的聚类算法基于MapReduce分布式框架的并行化策略。实验结果表明,本文提出的基于改进粒子群优化算法的k-means聚类算法在一定程度上提高了聚类结果的准确率,减弱了聚类结果的波动性,改善了k-means算法的聚类质量,同时避免了粒子群优化算法出现早熟收敛的现象,加快了粒子群优化算法后期的收敛速度。此外改进聚类算法基于MapReduce编程模型的并行化是可行以及有效的,该并行策略具有良好的可扩展性和并行化效率。