论文部分内容阅读
随着计算机技术特别是网络技术的发展,人们开始面临海量并且急速增长的数据,如何从这些数据中获取相关知识为人类的生活、科研和生产服务己经成为一个严峻的问题。解决这个问题将要用到一门综合的学科:数据挖掘。数据挖掘是融合了计算机科学、数学和统计学等多门学科的一门综合学科。数据挖掘是一个具有现实和学术意义的研究方向。传统数据挖掘算法及其改进算法多是运行在单机上,并且使用的是串行运算。比如Apriori算法和K-means算法都是运行在单节点上的,当他们对海量数据进行处理时,由于单机的资源(如CPU、RAM等)有限不能高效的完成数据挖掘任务。为了提高数据挖掘算法对海量数据的处理能力,最好能将待处理的数据存放在多个节点上处理,这样就能利用多台机器的资源高效的完成数据挖掘任务。本文通过研究前人在数据挖掘方面取得的成果,对Apriori算法和K-means算法做了修改,克服了己有算法在逻辑上的一些缺陷,提出了新的关联规则算法MC_Apriori算法和新的聚类分析算法CK算法。本文主要对以下内容进行研究:(1)对传统的Apriori算法和K-means算法进行了解和说明,分析了传统算法存在的缺陷,并研究了现有的一些改进算法。(2)对云计算技术的发展和相关技术进行研究,分析了两个云计算平台(Hadoop和Spark)的并行计算能力,并研究了其在数据挖掘领域的一些应用。(3)针对Apriori算法存在对事务数据库多次扫描和候选集过大的问题,本文提出了改进算法MC_Apriori,该算法引入了Boolean矩阵和事务权值。将K-候选集的支持度计算变成向量运算,不需要多次对事务数据库全扫描,对于重复事务使用权值对其去重,这样就可以对矩阵进行压缩,减少向量运算的计算量。(4)针对K-means算法存在初始聚类中心点随机性和K值定义的问题,本文提出了改进算法CK,该算法引入了Canopy算法,将Canopy算法应用到K-means算法中,先使用Canopy算法来对聚类数据快速聚类,然后在此基础上对每个Canopy中的数据使用K-means算法进行迭代聚类。(5)将MC_Apriori算法和CK算法和两个优秀的云计算平台(Hadoop和Spark)结合,实现改进算法的并行化,提高改进算法在云环境下的应用能力。