分布式K-means聚类算法研究与实现
2018-02-05李斌,李蓉,周蕾
李 斌,李 蓉,周 蕾
(国网宁夏电力公司信息通信公司,宁夏 银川 750001)
0 引言
随着互联网数据量呈指数增长,传统的数据挖掘算法已经不能适应海量数据。传统的数据挖掘算法使用数据仓库模型把所有数据汇总到中心节点,并在汇总数据的基础上运行数据挖掘算法[1]。这种方式存在很多局限的,比如中心节点的性能瓶颈、数据隐私泄露等问题。为了缓解这些问题,分布式数据挖掘成为了热点研究领域[2]。分布式数据挖掘方法是为了解决在合理时间内无法在单机环境完成某些复杂问题而存在的[3]。分布式数据挖掘具有单机数据挖掘无法达到的优点:首先,有效地解决了数据增多带来地存储、计算方面压力,其次,降低计算瓶颈,将复杂的计算工作改为局部实现再汇总的形式。
现有主流的分布式数据挖掘技术的实现方法大体可以分为以下几类:基于MPI的并行数据挖掘算法研究[4],是在消息传递接口MPI集群基础上实现的分布式数据挖掘算法,以多线程调用的形式实现多机调用执行,但无法有效地协调节点之间任务的调度以及节点的存储和任务分配[5];基于 Agent主体的非集中式数据挖掘技术,是以本节点的数据为基础运行数据读写任务,对于本地数据有一定的安全性保护,但同时也引出了关键问题:局部结果的整合[6]。对这一问题的研究,专家设计并给出多种解决方案。典型的解决方案包括:PADMA(parallel data mining agents)、BODHI( Beseizing knowledge through distributed heterogeneous induction)、JAM(Java agents for meta-learning)等;基于网格的分布式数据挖掘方法[7],提供了可以用来计算和数据管理的基础设施,为在分布式环境下运行数据挖掘算法提供了必备的硬件条件,然而基于网格的数据挖掘方法的资源调度和作业分配是离不开人为干预的;……
