The present invention relates to a FP Growth algorithm, particularly relates to a method and device for improved FP Growth algorithm based on FPGA algorithm, belonging to the field of learning machine, the first scan in Spark cluster database, obtaining frequent itemsets; the frequent itemsets are grouped into Spark clusters; in each node with a FPGA boards; set to build FP tree for each frequent item in the FPGA board; recursive mining for each set of FP tree; merging results each group of recursive mining. The invention improves the efficiency of FP Growth algorithm, to improve the computing ability of single node Spark cluster by adding FPGA in cluster nodes, while retaining its parallel Spark cluster computing framework, effectively improve the overall performance of the FP Growth algorithm under the big data environment.
【技术实现步骤摘要】
基于FPGA的FP-Growth算法的改进方法及装置
本专利技术涉及机器学习算法处理领域,尤其涉及基于FPGA的FP-Growth算法的改进方法及装置。
技术介绍
基于Spark平台的FP-Growth算法采用MapReduce分布式计算模型、立足于内存计算,实现了该算法的并行化,在一定程度上提升了该算法的挖掘效率;然而随着大数据时代的到来,科学和工程计算领域的数据量急剧增长,计算复杂度不断增加,给基于Spark平台的FP-Growth算法的计算性能带来了极大挑战。由于单节点处理能力有限,Spark通过扩展集群节点规模来实现算法性能的提升;而这种集群扩展不仅使得系统成本和能耗快速增加,而且使得集群网络复杂度和节点间的数据传输开销急剧上升,降低了集群扩展带来的计算性能增益。如何才能解决上述问题,增强单节点处理能力、进而减少计算集群快速扩张带来的网络传输开销,最终实现FP-Growth算法的性能提升成为亟待解决的热点问题。
技术实现思路
本专利技术提供的基于FPGA的FP-Growth算法的改进方法及装置,克服了现有技术中存在的不足,显著的提升了FP-Growth算法的计算性能。为了达到上述目的,本专利技术是通过以下技术方案实现的:本专利技术提供一种基于FPGA的FP-Growth算法的改进方法,包括以下步骤:扫描Spark集群中的数据库,获取频繁项集;将频繁项集进行分组;为Spark集群中的每个节点加配一块FPGA板卡;在FPGA板卡上对每一组的频繁项集建FP树;在FPGA板卡上对每一组建的FP树进行递归挖掘;将每一组递归挖掘的结果进行合并。进一步地,将频繁项集 ...
【技术保护点】
一种基于FPGA的FP‑Growth算法的改进方法,其特征在于,包括以下步骤:扫描Spark集群中的数据库,获取频繁项集;将频繁项集进行分组;为Spark集群中的每个节点加配一块FPGA板卡;在FPGA板卡上对每一组的频繁项集建FP树;在FPGA板卡上对每一组建的FP树进行递归挖掘;将每一组递归挖掘的结果进行合并。
【技术特征摘要】
1.一种基于FPGA的FP-Growth算法的改进方法,其特征在于,包括以下步骤:扫描Spark集群中的数据库,获取频繁项集;将频繁项集进行分组;为Spark集群中的每个节点加配一块FPGA板卡;在FPGA板卡上对每一组的频繁项集建FP树;在FPGA板卡上对每一组建的FP树进行递归挖掘;将每一组递归挖掘的结果进行合并。2.根据权利要求1所述的基于FPGA的FP-Growth算法的改进方法,其特征在于,将频繁项集进行分组,包括:将其按频繁1-项集顺序递减排列;根据数据库的大小确定分组个数,按照预先设定的分组规则将其分为若干组。3.根据权利要求1所述的基于FPGA的FP-Growth算法的改进方法,其特征在于,在FPGA板卡对每一组建FP树,包括:建立一个根节点为NULL的FP树和一个存储节点信息的Tab表;将频繁项表中的每条处理好的事务中的数据项按降序依次插入到FP树中,构建出FP树的一条路径;在上述的插入过程中,同时用Tab的指针指向对应项的节点,并将每个节点的计数增加1。4.根据权利要求3所述的基于FPGA的FP-Gro...
【专利技术属性】
技术研发人员:曹芳,陈继承,王洪伟,
申请(专利权)人:郑州云海信息技术有限公司,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。