22629945基于MapReduce和GPU双重并行层次下的关联规则挖掘的探讨.docVIP

22629945基于MapReduce和GPU双重并行层次下的关联规则挖掘的探讨.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
22629945基于MapReduce和GPU双重并行层次下的关联规则挖掘的探讨

基于MapReduce和GPU双重并行层次下的关联规则挖掘的探讨 计算机学院2011级硕七班 张宗禹摘要:数据挖掘是指从巨量数据中获取有效的、新颖的、潜在有用的、最终可理解的模式的非平凡过程。而关联规则就是其中一种典型的例子,本论文主要关注关联规则的挖掘。在许多情况下,将所有数据集中在一起进行分析往往是不可行的。分布式数据挖掘系统则可以充分利用分布式计算的能力对相关的数据进行分析与综合,再加上可以节省大量的时间和空间开销,分布式数据挖掘应运而生。同时,随着数据量的指数型增加以及对计算量的需求急切增长,已有的数据挖掘软件很难满足应用的实时性需要,人们对并行数据挖掘技术的需求十分强烈。图形处理器(GPU)的最新发展已经能够以低廉的成本提供高性能的通用计算。本文将在介绍当前分布式数据挖掘的发展现状和趋势,以及当前基于GPU的并行数据挖掘发展现状的同时,从理论上以关联规则挖掘为例探讨一种将这两种正火热的技术结合的方法。 关键字:数据挖掘、关联规则、MapReduce、GPGPU、CUDA、Hadoop Streaming 1.研究背景和现状 1.1云计算框架Hadoop和MapReduce计算模型 云计算的核心思想,是将大量用网络连接的计算资源统一管理和调度,构成一个计算资源池向用户按需服务。提供资源的网络被称为“云”。 MapReduce 本身就是用于并行处理大数据集的软件框架。MapReduce 的根源是函数性编程中的 map 和 reduce 函数。它由两个可能包含有许多实例(许多 Map 和 Reduce)的操作组成。Map 函数接受一组数据并将其转换为一个键/值对列表,输入域中的每个元素对应一个键/值对。Reduce 函数接受 Map 函数生成的列表,然后根据它们的键(为每个键生成一个键/值对)缩小键/值对列表。并行数据挖掘技术不同于其它并行算法的地方在于它需要处理的数据的规模很大。人们知道,对于并行而言,交互之间的消耗(即内存的使用)是比执行时间(计算阶段)重要得多的因素。串行数据挖掘算法对于规模很小的数据也需要大量的运行时间,而且可用于分析的数据增长得很快,这样就需要寻找用于数据挖掘的并行算法,目前对并行数据挖掘算法已有了充分的研究并行数据挖掘策略通常是有三种: 1.朴素并行,也就是人们通常说的网络并行。网络并行,就是通过高速信息网络充分利用网上的计算机资源,实现大规模数据上的并行计算。在这种并行类型中用于计算的时间会减少但是每一个处理器都要扫描所有的数据,这样就阻碍了算法性能的提高。2.典型并行是当前并行数据挖掘策略的典型代表(这里称为典型并行)。在算法的每一步中,一个处理器只处理 1/p 的数据,而且在步骤的最后需要交换从数据中收集到的信息。3逻辑并行类型 的技术是适用于逻辑性较强的并行。对于这种类型的并行数据挖掘策略,初始化阶段可能要重复进行是为了给该类型技术的结构减小数据规模。然而,该结构进一步发生在进一步抽取信息的过程中。许多归纳的逻辑方法(如的处理是ProgoL) 就是这种并行类型。 Apriori通过对数据库的多趟扫描来发现所有的频繁项集,而对存储海量数据的数据库的多趟扫描将耗费大量时间和内存空间,这将成为Apriori算法的瓶颈。因此,有关并行数据挖掘算法的研究不断升温。由于云计算环境具有分布特点,可支持算法的并行执行,从而提供挖掘效率。 1.把数据库分成规模相当的M个数据子集,把数据子集发送到M个站点。2.每个站点扫描它的数据子集,产生一个局部候选K项集,每个候选项集的支持度计数为1。3.利用hash函数把M个站点的候选k项集总相同的项集和它的支持度计数发送到R个站点。4.站点把相同项集的计数累加起来,产生最后的实际支持度,与最小支持度计数比较,确定局部频繁k项集的集合。5.把R个站点的输出合并即产生全局频繁k项集的集合。改进的Apriori算法的优势是查找k频繁项集和k+1频繁项集的过程是完全独立的。他们之间没有联系,这是一个循环的过程。k值从1开始递增,知道找出所有的频繁项集。也可以设定k的值,知识查找k频繁项集,或者从1频繁项集到k频繁项集之间的所有频繁项集。 改进的Apriori算法的MapReduce实现: 1.MapReduce库将事物数据库进行水平划分,分成M个规模相当的数据子集。 2.对M个数据子集进行格式化,产生key,value对,具体格式化为Tid,list,Tid表示事物数据库中的事物标识符,list为事物数据库中的事物对应的列表值。 3.Map函数的任务是对输入的数据子集的每个记录Tid,list进行扫描,产生一个局部候选k 项集的集合,每个候选k项集的支持度计数为1。Map函数生成并输

文档评论(0)

lxiencan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档