[发明专利]基于Spark框架的FP-Growth大数据频繁项集挖掘算法在审
申请号: | 201711365857.3 | 申请日: | 2017-12-18 |
公开(公告)号: | CN108021695A | 公开(公告)日: | 2018-05-11 |
发明(设计)人: | 莫燮彬 | 申请(专利权)人: | 佛山市米良仓科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 佛山帮专知识产权代理事务所(普通合伙) 44387 | 代理人: | 颜春艳 |
地址: | 528200 广东省佛山市南海区桂*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 spark 框架 fp growth 数据 频繁 挖掘 算法 | ||
本发明提出了一种基于Spark框架的FP‑Growth大数据频繁项集挖掘算法,包括如下步骤:S1、获得垂直布局的频繁1‑项集:首先输入文件;然后通过flatMap()函数生成项,通过Mpa()函数生成键‑值对;再构建垂直项集;并通过FP‑Grwth算法筛选非频繁项;最后获得垂直布局的频繁1‑项集;S2、获得频繁项集:计算项集支持度;生产N‑基数的潜在候选项集;获得k‑1技术的所有子集;将子集中相同实物存储到列表common;列表common的长度与min_sup比较;频繁项集获得。算法同时使用数据的垂直和水平布局来解决数据集过度扫描问题。
技术领域
本发明涉及一种基于Spark框架的FP-Growth大数据频繁项集挖掘算法。
背景技术
近年来,随着科学技术的迅速发展,形成了巨大规模的非结构化和半结构化数据,将这种数据称作“大数据”。为了从大数据集中发现有用知识,需要采用数据挖掘技术。目前已形成了多种数据挖掘技术,例如关联规则挖掘、序列模式发现等。创建所有可能项集的规则需要大量的内存和处理资源。为了减少潜在项集的数量,需要考虑对频繁项集创建关联规则。关联规则挖掘是一种基于规则的学习技术,它可以发现数据集中数据对象之间的显著关系。
常见的频繁项集挖掘算法有Apriori和FP-Growth等算法。Apriori算法以迭代方式来搜索k-基数的频繁项集,其中k会随着每次迭代而增加。为了判别一个项集频繁,需要为每个项集计算支持度。在每次迭代中生成的频繁项集用以找到下一次迭代中较高基数的频繁项集。然而,Apriori存在一些缺陷。首先,它在每次迭代中扫描整个数据集,这会产生高的I/O成本。其次,每次迭代中会生成较大的候选集,占用较多的内存。FP-Growth算法没有剪枝过程,其将构造的FP-tree分解为多个条件模式子树,每个条件子树对应一个频繁项集,通过递归方式从这些条件子树中挖掘出事务数据库的频繁项集。相比于Apriori算法,FP-Growth算法在性能上有一个数量级的提升。然而,在构建数中也需要遍历整个数据集。
大数据需要强大的资源来进行存储和处理,传统的单个计算机不足以处理大数据。因此,多机处理适合用于处理分布式存储的海量数据。分布式计算是分布式环境中大数据处理的一种开源框架,现有常见的分布式计算框架如MapReduce。然而,由于MapReduce中需要将中间输出写入磁盘并从磁盘读取数据,致使其网络和I/O资源开销较高,所以MapReduce不适合于迭代算法。此外,MapReduce框架遵循预定义的顺序执行,这限制了算法的灵活性。Spark框架是一种较好的替代框架,它在成批处理和交互处理中更有效,性能优于MapReduce。Spark编程接口基于一种称作弹性分布式数据集(resilient distributeddatasets,RDD)的数据框架,其是一种分布于集群中的数据对象只读集合。因此,Spark分布式计算框架能很好地适用于大数据挖掘。基于上述分析,提出一种基于FP-Growth算法的频繁模式挖掘算法,并在Spark框架上实现。其中,采用了垂直数据集的思想将数据集进行垂直布局,用来计算项集不同基数的支持度。同时使用数据的默认水平布局计算候选项集。这样可以解决扫描整个数据集的问题。另外,在每次迭代后,将所有非频繁项从原来数据集中移除,以此来减少候选项集的数量,提高算法效率。在标准数据集上的仿真结果表明,提出的方法在执行时间方面具有优越性。
发明内容
有鉴于此,本发明的目的在于提出一种基于Spark框架的FP-Growth大数据频繁项集挖掘算法。
根据上述发明目的,本发明通过以下技术方案来实现:
在Spark分布式计算框架上,基于FP-Growth算法和数据集垂直布局机制提出了一种频繁项集挖掘,称为FP-Growth垂直频繁项集挖掘(FP-Growth Vertical layoutFrequent Itemset Mining,FP-VFIM)算法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于佛山市米良仓科技有限公司,未经佛山市米良仓科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711365857.3/2.html,转载请声明来源钻瓜专利网。