FP并行算法的几个相关方向
1 集群系统中的 FP-tree 并行算法(many for one一个任务 还是 云计算one for many多个任务?)
计算机集群系统利用网络把一组具有高性能的工作站或者 PC 机按一定的结构连接起来, 从而形成了高效的并行的计算处理
系统。 各节点之间使用消息传递实现通信,集群系统通常用于改进单个计算机的计算速度与可靠性。
FP-growth 算法在挖掘每个条件模式库的过程是彼此独立进行的,相互之间没有数据和信息交换。 这一互相独立的特点可以把
FP-growth 算法转换为并行算法,如果将每个条件模式库的挖掘看成一个子任务,那么总的频繁模式挖掘任务就能够被划分为数目
与频繁项数目相等的若干个子任务。
然后将这些子任务分配给计算机集群中的各个节点分别执行,计算机集群的各个节点完成各
自的子任务后,将计算结果传送到中央节点,由中央节点形成统一的计算结果。
2 划分 FP-tree 为小 FP-tree 的并行计算方法
对于给定的关联规则挖掘任务,如何将其分解成多个相互独立的子任务? 从而进行并行分布式处理。 下面将分析的一种方法是
将 FP-tree 划分成小 FP-tree,然后进行并行计算。
需要证明全部局部树的组合和全局树的等价性。
具体方法是:根据 FP-tree 相应的 HeaderTable 各个项前缀路径的总长度,将 Header Table 分组,构造结点数量大致相等的小
FP 树。 构建小 FP 树的方法是,分别提取 Header Table 节点链结点位置,找出对应结点的条件模式基,之后用同一组 Header Table 包
含的所有条件模式基产生出新的 FP 树和 Header Table,在为某部分 Header Table 构造新 FP 树和新 Header Table 时,不用将这部分
Header Table 包含的项以外的项放进新 Header Table。 这样便将大 FP-tree 划分为多个小 FP-tree 方便多进程或多台机器并行处理。
3 划分数据库事务的并行 FP-Growth 算法(基于Hadoop平台,可以自动分布,每个map默认64MB。待续详细。)
在并行 FP-Growth 算法当中,一种算法是将数据库里的记录按照数量进行等分,然后在多个进程上进行并行计算。
该算法基本步骤如下:
1) 划分数据库中的事务,将个数近乎相等的事务指定到相应处理进程;
2) 各进程分别计算项的计数,然后汇总得到频繁 1-项集;
3) 每个处理进程按照分配的事务得到频繁模式树,全局频繁 1-项集列表里的每个项皆由一个结点链和每个局部的 FP-tree 中
的结点相连;
4) 在全局 1-频繁项集列表、多颗局部 FP-tree 以及它们之间的相互连接组成的并行频繁模式树上面 ,进而可以进行并行频繁
模式的挖掘。
FP并行算法的几个相关方向的更多相关文章
- 中国各城市PM2.5数据间的相关分析
code{white-space: pre;} pre:not([class]) { background-color: white; }if (window.hljs && docu ...
- P&R 3
Floorplan: 要做好floorplan需要掌握哪些知识跟技能? 通常,遇到floorplan问题,大致的debug步骤跟方法有哪些? 如何衡量floorplan的QA? Floorplan是后 ...
- top 10 tipis on Logging in Java- Tutorial (翻译)
开篇废话,就记得出国之前有一回腾讯面试,面试官说既然你都快要出国了,英语肯定挺不错的,那为什么不去翻译一些国外好的文章呢,我希望找一个能主动学习的人,一直受教.目前在实习,需要做大数据相关方向,都是挺 ...
- halcon算子
halcon的算子列表 Chapter 1 :Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm 功能:把一个训练样 ...
- 【深入BFC】 关于CSS中float布局,清除浮动,和margin合并的原理解析,解开你心中的那些困惑!
BFC的通俗理解: Block Formatting Context(块级格式化上下文)是W3C CSS 2.1 规范中的一个概念,它决定了元素如何对其内容进行定位,以及与其他元素的关系和相互作用. ...
- 干货之UICollectionViewFlowLayout自定义排序和拖拽手势
使用UICollectionView,需要使用UICollectionViewLayout控制UICollectionViewCell布局,虽然UICollectionViewLayout提供了高度自 ...
- 《zw版·Halcon-delphi系列原创教程》 Halcon分类函数008,matrix,矩阵函数
** 3dFromFundamentalMatrix( Rows1, Cols1, Rows2, Cols2, CovRR1, CovRC1, CovCC1, CovRR2, CovRC2, CovC ...
- halcon的算子列表
Chapter 1 :Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm 功能:把一个训练样本添加到一个高斯混合模型的训 ...
- [Z]CS权威会议
CS Conference TOP 40 计算机会议TOP40 一.A 类 15 个 ASPLOS: Architecture Support for Programming Languages an ...
随机推荐
- 【JSP手记】--jsp里面session.getAttribute("×××")在java中的表示
JSP里面的 <%=session.getAttribute("×××")%> 与java等价于 request.getSession().get ...
- Go学习笔记之基础数据类型
http://studygolang.com/articles/1348 1 整数 在 Go 语言中,如果不加特殊前缀,都是10进制表示,例如:“100” 整数可以直接用指数形式,例如:“1E9”,意 ...
- VS2010下安装Cocos2dx完整教程(原)
一.本人所使用的Cocos2dx版本(cocos2d-2.1rc0-x-2.1.3),下载地址:http://code.google.com/p/cocos2d-x/downloads/list 当前 ...
- 泛函编程(31)-泛函IO:Free Monad-Running free
在上节我们介绍了Free Monad的基本情况.可以说Free Monad又是一个以数据结构替换程序堆栈的实例.实际上Free Monad的功能绝对不止如此,以heap换stack必须成为Free M ...
- oracle RAC的VIP和scan
我们都知道Oracle RAC中每个节点都有一个虚拟IP,简称VIP,与公网IP在同一个网段. 没有VIP时,Oracle客户端是靠"TCP/IP协议栈超时"来判断服务器故障.而T ...
- 基于 Bootstrap 的响应式后台管理面板
你想建立一个后台管理面板或者分析仪表板吗?不需从头开始,Keen IO Bootstrap 是一个响应式的仪表盘模板,可以帮助你在几分钟内呈现数据,让你可以创建一个有吸引力的,定制的分析仪表板,随时可 ...
- ProgressBar.js – 漂亮的响应式 SVG 进度条
ProgressBar.js 是一个借助动态 SVG 路径的漂亮的,响应式的进度条效果.使用 ProgressBar.js 可以很容易地创建任意形状的进度条.这个 JavaScript 库提供线条,圆 ...
- angularjs——插值字符串
一.何为插值字符串? 其实插值字符串的意思就是:拥有字符插值标记的字符串.如: hello,{{ to }}....字符插值标记:相当于我们平时在字符串替换中使用到的占位符.上面的例子中的{{to}} ...
- js异步编程
前言 以一个煮饭的例子开始,例如有三件事,A是买菜.B是买肉.C是洗米,最终的结果是为了煮一餐饭.为了最后一餐饭,可以三件事一起做,也可以轮流做,也可能C需要最后做(等A.B做完),这三件事是相关的, ...
- hybird之web动态换肤实现
前言 最近在重构个hybird(原生的壳包着Web页面)的UI框架,进行到了做换肤功能的阶段,所以这里是我思考的解决的方法. 预想 目前实现换肤的功能无非就两种做法. 1.写几个皮肤文件,然后切换使用 ...