收稿日期:20130513;修回日期:20130627 基金项目:国家自然科学基金资助项目(61170277);上海市教委科研创新重点项目
(
12zz137);上海市一流学科建设项目(S1205YLXK)
作者简介:唐颖峰(1983),男,甘肃嘉峪关人,博士研究生,主要研究方向为云计算、数据挖掘(tangyf1983@yahoo.com.cn);陈世平(1964),
男,博导,博士,主要研究方向为云计算、计算机网络通信、信息检索.
一种基于后缀项表的并行闭频繁项集挖掘算法
唐颖峰
1,2
,陈世平
1
(1.上海理工大学 管理学院,上海 200093;2.上海对外经贸大学 教务处,上海 201620)
摘 要:对现有的基于 MapReduce的并行频繁项集挖掘算法进行了研究,提出一种基于后缀项表的并行闭频繁
项集挖掘算法,通过后缀项表的引入及以闭频繁项集挖掘的形式,减少组分间的数据传送量,提高挖掘效率。实
验表明,该算法可以有效缩短平均挖掘时间,对于高维大数据具有较好的性能。
关键词:频繁项集挖掘;并行挖掘算法;MapReduce;闭频繁项集;后缀项表
中图分类号:TP31;TP3016 文献标志码:A 文章编号:10013695(2014)02037305
doi
:10.3969/j.issn.10013695.2014.02.013
Parallelclosedfrequentitemsetminingalgorithmwithpostfixtable
TANGYingfeng
1,2
,CHENShiping
1
(1.BusinessSchool,UniversityofShanghaiforScience&Technology,Shanghai200093,China;2.AcademicAffairsSection,ShanghaiUniver
sityofInternationalBusiness&Economics,Shanghai201620,China)
Abstract:BasedoncurrentfrequentitemsetsminingusingparallelFPGrowthalgorithmwithMapReduceframework,thispa
perproposedaparallelclosedfrequentitemsetsminingalgorithmwithapostfixtablebasedonMapReduceframework.Theal
gorithmgeneratedclosedfrequentitemsetsinsteadofallfrequentitemsets.Withapostfixtablestructure
,thealgorithmcould
reducetheamountofdatatransferbetweenmappersandreducersefficiently.Theexperimentalresultsshowthatthealgorithm
canshortenminingtimeefficiently.Thealgorithmhasgoodperformanceespeciallyinlongtransctionmode.
Keywords:frequentitemsetsmining;parallelminingalgorithm;MapReduce;closedfrequentitemsets;postfixtable
!
引言
关联规则挖掘是数据挖掘中的一个重要课题,最近几年
已被业界广泛研究
[1]
。Agrawal等 人
[2]
于 1993年 提出 了挖
掘顾客交易数据库中项集间的关联规则问题,并提出了经典
的 Apriori算法。但是该算法存在多次遍历数据库及生成大
量候选集等问题,使得算法在处理较大数据时效率低下。对
此,Han等人
[3]
于 2000年提出了基于对 FPTree进行挖掘生
成频繁项目集的 FPGrowth算法。该算法只需对数据库进行
两次扫描,且不生成候选集,极大地提高了频繁项目集的挖
掘效率。尽管如此,在海量数据处理的背景下,
FPGrowth的
单机处理能力依然非常有限。因此,算法的并行化是发展的
必然趋势。Zaane等人
[4]
于 2001年提出了一种基于多处理
器并行计算机的并行 FPGrowth算法。此后又有多位学者提
出一些基于并行计算机的 FPGrowth算法
[5,6]
。但是并行计
算机可扩展性较为有限,在一台计算机内扩展处理器数量及
存储空间的做法代价昂贵。MapReduce
[7]
是在云计算背景下
被提出的一种高扩展性和高容错性的并行计算框架。
Li等
人
[8]
于 2008年 提 出 了 一 种 MapReduce框 架 下 的 并 行 FP
Growth算法 PFP(parallelFPGrowthalgorithm)。但是 PFP算
法中 mapper需要向 reducer复制传送大量事务数据,特别是
当事务数据模式较长、最小支持度阈值较低时,组分间的数
据传送量会成倍增长。对于 MapReduce这样的分布式系统
而言,网络带宽和磁盘
I/O是其瓶颈所在,巨大的数据传送量
势必对其产生巨大压力,导致系统效率大大降低。PFP需要
传送大量数据的一个重要原因在于,其试图挖掘事务数据中
全部频繁模式,因此不得不对 FList中每一项的频繁模式进
行搜索。当事务数据的模式较长时,对于 FList中的每一项
都要传送大量组内依赖事务(groupdependenttransactions)。
此外,当支持度阈值较小时,挖掘算法会产生数量巨大的短
频繁模式,导致存 储 和处 理 出现 困 难。因 此在 实 际 处 理 时
(如 PFP的 Mahout实现
[9]
)常采用取 TOPK频繁模式这种折
中的方式。
闭频繁项集是频繁项集的一种无损压缩,它在保留频繁项
集完整信息的前提下,可以显著减少频繁项集挖掘产生的模式
数量
[1]
。Wang等人
[10]
于 2012年将闭频繁项挖掘算法融入
PFP,提出基于 MapReduce的闭频繁项挖掘算法 PFPC。但是
PFPC的数据传送方式与 PFP相同,因此并未解决数据传送量
大的问题。
本文在
PFP的基础上提出一种基于后缀项表的并行闭
频繁 项 挖 掘 算 法 PFPP(parallelFPGrowthalgorithm with
postfixtable),由闭频繁 项 挖 掘 的 特 点,引 入 后 缀 项 表 的 概
念;通过后缀项表的构建,删去 FList中不必要传送数据的
项,有效地缩减了处理过程中的数据传送量;且在最小支持
度阈值较低时,只产生少量闭频繁项集,可保留频繁项集的
完整信息。
第 31卷第 2期
2014年 2月
计 算 机 应 用 研 究
ApplicationResearchofComputers
Vol.31No.2
Feb.2014