CN104834709B - 一种基于负载均衡的并行余弦模式挖掘方法 - Google Patents

一种基于负载均衡的并行余弦模式挖掘方法 Download PDF

Info

Publication number
CN104834709B
CN104834709B CN201510214242.5A CN201510214242A CN104834709B CN 104834709 B CN104834709 B CN 104834709B CN 201510214242 A CN201510214242 A CN 201510214242A CN 104834709 B CN104834709 B CN 104834709B
Authority
CN
China
Prior art keywords
flist
cosine
parallel
load balancing
fragment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510214242.5A
Other languages
English (en)
Other versions
CN104834709A (zh
Inventor
曹杰
申冬琴
伍之昂
刘小惠
吴明赞
王有权
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Science and Technology
Original Assignee
Nanjing University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Science and Technology filed Critical Nanjing University of Science and Technology
Priority to CN201510214242.5A priority Critical patent/CN104834709B/zh
Publication of CN104834709A publication Critical patent/CN104834709A/zh
Application granted granted Critical
Publication of CN104834709B publication Critical patent/CN104834709B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于负载均衡的并行余弦模式挖掘方法,提出一种并行余弦模式挖掘框架,该方法包括:首先对输入的超大规模事务数据集进行分片;然后使用Lucene索引工具为事务创建索引,并产生全局频繁项目列表FList;接着对FList进行负载均衡划分,即对FList进行分组;在此基础上,实现单个分组的聚集投影,并使用余弦模式挖掘算法获取局部有效信息;最后合并余弦模式产生最终的挖掘结果。该方法的优势如下:通过并行余弦模式挖掘方法挖掘大规模事务数据集,能够较好的实现负载均衡,使资源得到公平合理利用,提高了系统的计算性能。

Description

一种基于负载均衡的并行余弦模式挖掘方法
技术领域
本发明属于数据挖掘领域,涉及一种余弦模式挖掘方法,具体地说是一种基于负载均衡的并行余弦模式挖掘方法。
背景技术
随着信息技术的发展应用的深入,数据正以前所未有的速度剧增,数据类型也变得越来越复杂。海量事务数据集的深度分析和利用,有利于构建企业级智能化应用,提升企业的竞争力。余弦模式挖掘算法是一种有效发现隐藏在数据中重要价值的方法,但是该算法在处理大规模事务数据集上时间复杂度较高,导致计算效率较低,已经不能满足实际的需求,研究高性能的并行挖掘算法显得尤为重要。
对于从大规模事务数据集中并行挖掘有效知识,Agrawal提出了三种并行计算方法,计算候选项集的支持度计数方法各不相同,CD(Count Distribution)算法是Apriori算法的简单并行化,每个节点对分配的数据集进行单独扫描,得到所有候选项集的局部支持度计数,当所有节点的完成扫描以后,交换局部支持度计数,得到全局支持度计数。DD(DataDistribution)算法中每个节点仅对部分候选项集进行计数。CAD(CandidateDistribution)算法每次计算都需要同时对候选项集和数据集进行划分,使每个节点相对独立的工作。IDD(Intelligent Data Distribution)算法是DD算法中候选项集分配进行优化,避免重复计算,但可能出现负载不均的现象。
综上,并行计算方法在数据处理方面至少存在两个问题:(1)可用的物理内存无法满足大规模数据的要求;(2)计算过程中存在负载不均的问题。针对上述问题,本发明融合了HDFS(Hadoop Distributed File System)和BSP(Bulk Synchronous Parallel Model)计算模型,提出了基于负载均衡的并行余弦模式挖掘方法。
发明内容
鉴于并行计算方法存在的问题以及传统余弦模式挖掘处理大规模事务数据集时效低的问题,本发明的目的是提供一种基于负载均衡的并行余弦模式挖掘方法,提出一种并行余弦模式挖掘框架,该方法包括:首先对输入的超大规模事务数据集进行分片;然后使用Lucene索引工具为事务创建索引,并产生全局频繁项目列表FList;接着对FList进行负载均衡划分,即将FList分组;在此基础上,实现单个分组的聚集投影,使用余弦模式挖掘算法获取局部有效信息;最后合并余弦模式产生最终的挖掘结果。
本发明是通过以下技术方案具体实现的:
1)、数据集分片:即物理分区,将事务数据集分成多组称之为分片的小集合,这些分片保持了原数据集的完整性。每个分片大约是64M的HDFS的配置,并且所有的分片都存储在HDFS分布式文件系统中,其存储位置对用户而言也是透明的。
2)、并行计数:主要是获得单个分片的本地邻居数,并为分片的每一行构建Lucene索引。特别是,随着多个后台进程的开始,每个进程需要处理一个或多个分片。后台进程通过扫描分片得到元组(ip,k({ip})],即节点ip以及第k个分片的本地邻居数。
3)、负载均衡划分:随机或平等分区将导致负载不均衡,导致一些本地任务会降低整体计算性能。为了解决这一问题,采用负载均衡划分,该方法通过在主节点上的计算进程获取分片数据计算时间,并从而产生全局项集FList,并将FList分成K组。
4)、聚类投影:将FList中的项目组被分成K组,即FList=β1β2...βK,以支持度降序排列的频繁项集列表,每个βj包含FList中的连续项,j=1,2,3...,k中的任意一个。
5)、并行余弦模式挖掘:在步骤3的基础上,对K个分组进行聚集投影,然后同时开始K个BSP任务。每个任务首先根据各组的项目集构造事务文件,然后利用数据挖掘算法获取有价值的知识。上述过程中,主节点只需要将同组中的项目集发送至单个BSP任务,从而降低了实际的时间开销。
6)、合并结果:对单个分组的挖掘结果进行合并以获得最终的结果。
本发明的优点:本发明提出的并行余弦模式挖掘框架,基于空间独立、文件系统共享,及主从分布式的计算框架,融合了BSP和HDFS计算模型,包括数据集分片、并行计数、负载均衡划分、并行余弦模式挖掘、合并结果。在负载均衡划分中,即把频繁项目列表FList划分K组β1,...,βK。由于每项的支持度是已知的,负载均衡划分只需要扫描一次FList,而不必增加其他额外的计算开销,达到高效计算的目的。
附图说明
图1为本发明的基于负载均衡的并行余弦模式挖掘方法原理框图。
图2为在Amazon数据集上,分别改变从节点数K和共同邻居的阈值τF,记录并行余弦模式挖掘方法中4个步骤的执行时间,其中横坐标为K/τF,纵坐标为每个步骤的执行时间。
具体实施方式
下面结合附图和具体实施方式对本发明所属方法进一步说明。
本发明基于负载均衡的并行余弦模式挖掘方法包括:首先对输入的超大规模事务数据集进行分片;然后使用Lucene索引工具为事务创建索引,并产生全局频繁项目列表FList;接着对FList进行负载均衡划分,即将FList分组;在此基础上,实现单个分组的聚集投影,并使用余弦模式挖掘算法获取局部有效信息;最后合并余弦模式产生最终的挖掘结果。具体实施方式如下:
将式(1)扩展为多项集的情况,令S为P-项集,如S={i1,...,iP},P≥2,则:
余弦相似度可能是偶然项集,也就是S中的所有项只在事务tp中出现一次,但是依然有cos(S)=1。因此,利用支持度度量s,并要求余弦模式具有足够大的支持度值,从而给出余弦模式的定义:
若cos(S)≥τc,s(S)≥τs,其中τs是余弦相似度cos(S)的阈值,τc是支持度s(S)的阈值,τsc∈[0,1],则称S是与τs和τc有关的余弦模式。
步骤2、数据集分片。
并行余弦模式挖掘框架的输入是大规模事务数据集D,对于集中式计算D往往太大,所以,需要在保证每个事务的完整性的前提下,平均划分数据集D。
步骤3、并行计算。
局部计数:
1)、对任意事务Dk中的每个事务Ti,为该行创建Lucene索引,更新Ti中每项ip的支持度的数值σk
2)、输出项集LCk
LCk={<ipk(ip)>|ip∈Dk} (3)
全局聚类:
1)、聚类所有自从节点返回的项集对LCk,获得频繁项集F;
2)、对频繁项集F按支持度递减序列排序构成频繁项集列表FList。
步骤4、负载均衡划分。
1)、计算FList中的每项ip的开销Cip
2)、计算K组的平均负载CAvg
3)、连续检查对FList中的每项ip,以获得首个使得当前的和大于等于CAvg的项目ip
4)、比较找到开销之和接近于CAvg的组β1,...,βK
步骤5、聚集投影。
将FList中的项目组被分成K组,即FList=β1β2...βK,以支持度降序排列的频繁项集列表。每个βj包含FList中的连续项,进一步令βk=ik1...ikr,这样βk的投影数据就为:
步骤6、并行余弦模式挖掘。
并行余弦模式挖掘算法主要包含两步:一是构建FP树;二是使用CP增长算法挖掘余弦模式。具体如下:
1)、自底向上遍历Tree头表中的每项ik,生成候选模式S',S'={ik}∪S;
2)、若余弦上界uc(S')<τc(若|S'|=1,uc(S')=1),遍历项ik+1
3)、若余弦上界uc(S')≥τc且余弦相似度cos(S')≥τc(若|S'|=1,cos(S')=1),余弦模式
4)、为S'构建条件FP树TreeS'
5)、递归调用CP增长算法,产生余弦模式
步骤7、合并余弦模式。
合并余弦模式产生最终结果。
有益效果
实验选取Amazon数据集,其特征如表3所示。
TID TID
1 D,E,F,G 5 B,D,E,F,G
2 C,E,F,G 6 E,F,G
3 A,G 7 C,D,F,G
4 D,F 8 E,F,G
表1事务数据集示例
投影事务
{G,F} {G,F}(6),{G},{F}
{D,E} {G,F,E,D}(2),{G,F,E}(3),{G,F,D},{G,F,E}
{C,B,A} {G,A},{G,F,E,C},{G,F,E,D,B},{G,F,D,C}
表2聚集投影示例
数据集 |V| |E|
Amazon 403,394 3,387,388
表3Amazon数据集的特征
参数设置:余弦相似度阈值τc=0.6,改变从节点数K和共同邻居数的阈值τF,图2描述了分别改变K和τF记录并行余弦模式挖掘方法中4个步骤的执行时间,其中“全局划分”包含聚合产生FList以及FList上的负载均衡划分。
图2(a)中,令τF=0,从而获得FList中所有项。图2(b)中,令K=32。图2(a)中,64个节点同时执行余弦模式挖掘,在τF=0的情况下抽取得到余弦模式只需要300s,结果比较令人满意。从图2中,细看每一步的执行情况:“分片”步骤需要的时间少于10s,速度很快;随着K的增加,“并行计数”所需时间略为降低;尽管增加τF,导致F List变短,但是“全局划分”的时间几乎保持恒定;然而,随着K的增加和τF的减小,“并行挖掘”的时间逐渐减小。K呈双倍增加时,由于I/O的限制使得“并行挖掘”的时间不可能双倍减少。

Claims (5)

1.一种基于负载均衡的并行余弦模式挖掘方法,其特征在于包括:
1)、数据集分片:对输入的超大规模事务数据集进行分片;
2)、并行计数:获得单个分片的本地邻居数,并为分片的每一行构建Lucene索引,对频繁项集F按支持度递减序列排序构成频繁项集列表FList;
3)、负载均衡划分:通过在主节点上的计算进程获取分片数据计算时间,并从而产生全局频繁项集FList,并将FList分成K组;
4)、聚类投影:将频繁项集FList中的项目组分成K组,即FList=β1β2...βK,以支持度降序排列的频繁项集列表;
5)、并行余弦模式挖掘:对K个分组进行聚集投影,然后同时开始K个BSP任务,每个任务首先根据各组的项目集构造事务文件,并完成以下两个任务:一是构建FP树;二是使用CP增长算法挖掘余弦模式;
6)、合并结果:合并并行余弦模式挖掘获取的局部有效信息,即产生最终的挖掘结果;
所述步骤2)中获得单个分片的本地邻居数,扫描分片得到元组(ip,k({ip})],即节点ip以及第k个分片的本地邻居数;
局部计数:
1)、对任意事务Dk中的每个事务Ti,为该行创建Lucene索引,更新Ti中每项ip的支持度的数值σkσk(ip)++;
2)、输出项集LCk
LCk={<ipk(ip)>|ip∈Dk} (3)
全局聚类:
1)、聚类所有自从节点返回的项集对LCk,获得频繁项集F;
2)、对频繁项集F按支持度递减序列排序构成频繁项集列表FList。
2.根据权利要求1所述的基于负载均衡的并行余弦模式挖掘方法,其特征在于:步骤1)中设所述大规模事务数据集为D,将事务数据集D平均分成多组称之为分片的集合,这些分片保持原数据集的完整性;所有的分片都存储在HDFS分布式文件系统中。
3.根据权利要求1所述的基于负载均衡的并行余弦模式挖掘方法,其特征在于:所述步骤3)中,所述负载均衡划分,即基于数据集产生的K个分片将频繁项目项集FList划分为K个组β1,...,βK
3.1、计算FList中的每项ip的开销
3.2、计算K组的平均负载CAvg
3.3、连续检查对FList中的每项ip,以获得首个使得当前的和大于等于CAvg的项目ip
3.4、比较找到开销之和接近于CAvg的组β1,...,βK
4.根据权利要求1所述的基于负载均衡的并行余弦模式挖掘方法,其特征在于:所述步骤4)中,FList中的项目组被分成K组,即FList=β1β2...βK,以支持度降序排列的频繁项集列表,每个βj包含FList中的连续项,j=1,2,3...,k中的任意一个,进一步令βk=ik1...ikr,这样βk的投影数据就为:
5.根据权利要求1所述的基于负载均衡的并行余弦模式挖掘方法,其特征在于:所述步骤5)中,并行余弦模式挖掘算法主要包含两步:一是构建FP树;二是使用CP增长算法挖掘余弦模式,具体如下:
5.1、自底向上遍历Tree头表中的每项ik,生成候选模式S',S′={ik}∪S′;
5.2、若余弦上界uc(S')<τc(若|S'|=1,uc(S')=1),遍历项ik+1;
5.3、若余弦上界uc(S')≥τc且余弦相似度cos(S')≥τc(若|S'|=1,cos(S')=1),余弦模式
5.4、为S'构建条件FP树TreeS'
5.5、递归调用CP增长算法,产生余弦模式
CN201510214242.5A 2015-04-29 2015-04-29 一种基于负载均衡的并行余弦模式挖掘方法 Active CN104834709B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510214242.5A CN104834709B (zh) 2015-04-29 2015-04-29 一种基于负载均衡的并行余弦模式挖掘方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510214242.5A CN104834709B (zh) 2015-04-29 2015-04-29 一种基于负载均衡的并行余弦模式挖掘方法

Publications (2)

Publication Number Publication Date
CN104834709A CN104834709A (zh) 2015-08-12
CN104834709B true CN104834709B (zh) 2018-07-31

Family

ID=53812596

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510214242.5A Active CN104834709B (zh) 2015-04-29 2015-04-29 一种基于负载均衡的并行余弦模式挖掘方法

Country Status (1)

Country Link
CN (1) CN104834709B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3370159A4 (en) * 2015-11-16 2018-12-26 Huawei Technologies Co., Ltd. Model parameter fusion method and apparatus
CN107045512B (zh) * 2016-02-05 2020-11-24 北京京东尚科信息技术有限公司 一种数据交换方法及系统
CN108052524B (zh) * 2017-11-07 2020-05-22 清华大学 面向电镜数据存储系统的文件元数据获取方法与系统
CN110990434B (zh) * 2019-11-29 2023-04-18 国网四川省电力公司信息通信公司 Spark平台分组和Fp-Growth关联规则挖掘方法
CN111309786B (zh) * 2020-02-20 2023-09-15 韶关学院 基于MapReduce的并行频繁项集挖掘方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622447A (zh) * 2012-03-19 2012-08-01 南京大学 一种基于Hadoop的频繁闭项集挖掘方法
CN103336808A (zh) * 2013-06-25 2013-10-02 中国科学院信息工程研究所 一种基于bsp模型的实时图数据处理系统及方法
CN103714139A (zh) * 2013-12-20 2014-04-09 华南理工大学 一种移动海量客户群识别的并行数据挖掘方法
CN104462565A (zh) * 2014-12-25 2015-03-25 南京财经大学 一种基于近似等价结构的社区抽取方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050021523A1 (en) * 2002-01-08 2005-01-27 Wafik Farag Holistic dynamic information management platform for end-users to interact with and share all information categories, including data, functions, and results, in a collaborative secure venue

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102622447A (zh) * 2012-03-19 2012-08-01 南京大学 一种基于Hadoop的频繁闭项集挖掘方法
CN103336808A (zh) * 2013-06-25 2013-10-02 中国科学院信息工程研究所 一种基于bsp模型的实时图数据处理系统及方法
CN103714139A (zh) * 2013-12-20 2014-04-09 华南理工大学 一种移动海量客户群识别的并行数据挖掘方法
CN104462565A (zh) * 2014-12-25 2015-03-25 南京财经大学 一种基于近似等价结构的社区抽取方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Mining frequent patterns without candidate generation;J Han etal;《Acm Sigmod International Conference on Management of data》;20001231;第1-12页 *
基于Hadoop的分布式文本聚类研究;梁维铿;《中国优秀硕士学位论文全文数据库 信息科技辑》;20111215;第I138-1235页 *
基于Hadoop的频繁闭项集挖掘算法研究;陈光鹏;《中国优秀硕士学位论文全文数据库 信息科技辑》;20150115;第I138-788页 *
基于MapReduce的频繁项集挖掘算法的并行化研究;谢朋峻;《中国优秀硕士学位论文全文数据库 信息科技辑》;20150315;第I138-1684页 *
面向海量数据的云存储系统实现与应用研究;艾明;《中国优秀硕士学位论文全文数据库 信息科技辑》;20120715;第I137-174页 *

Also Published As

Publication number Publication date
CN104834709A (zh) 2015-08-12

Similar Documents

Publication Publication Date Title
Gu et al. Privacy-preserving asynchronous vertical federated learning algorithms for multiparty collaborative learning
CN104834709B (zh) 一种基于负载均衡的并行余弦模式挖掘方法
Kajdanowicz et al. Parallel processing of large graphs
TWI730043B (zh) 關聯分析方法和裝置
CN104731925A (zh) 基于MapReduce的FP-Growth的负载均衡并行计算方法
Svendsen et al. Mining maximal cliques from a large graph using mapreduce: Tackling highly uneven subproblem sizes
Gavagsaz et al. Load balancing in join algorithms for skewed data in MapReduce systems
Wei et al. Incremental FP-Growth mining strategy for dynamic threshold value and database based on MapReduce
CN106815302A (zh) 一种应用于游戏道具推荐的频繁项集挖掘方法
Jin et al. Efficient parallel spectral clustering algorithm design for large data sets under cloud computing environment
CN113222181A (zh) 一种面向k-means聚类算法的联邦学习方法
US20170371892A1 (en) Systems and methods for dynamic partitioning in distributed environments
Xiao et al. Paradigm and performance analysis of distributed frequent itemset mining algorithms based on Mapreduce
CN107590225A (zh) 一种基于分布式数据挖掘算法的可视化管理系统
Sergey et al. Applying map-reduce paradigm for parallel closed cube computation
Senthilkumar et al. An efficient FP-Growth based association rule mining algorithm using Hadoop MapReduce
Yang et al. An efficient accelerator for point-based and voxel-based point cloud neural networks
Bawane et al. Clustering algorithms in MapReduce: a review
CN107133281A (zh) 一种基于分组的全局多查询优化方法
She et al. The pruning algorithm of parallel shared decision tree based on Hadoop
Peralta et al. Distributed, numerically stable distance and covariance computation with MPI for extremely large datasets
Vo et al. MRAttractor: Detecting communities from large-scale graphs
Das et al. Challenges and approaches for large graph analysis using map/reduce paradigm
Lee et al. Performance evaluation of MRDataCube for data cube computation algorithm using MapReduce
Raj et al. PartEclat: an improved Eclat-based frequent itemset mining algorithm on spark clusters using partition technique

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20150812

Assignee: NANJING SINOVATIO TECHNOLOGY Co.,Ltd.

Assignor: NANJING University OF SCIENCE AND TECHNOLOGY

Contract record no.: X2022980008506

Denomination of invention: A parallel cosine pattern mining method based on load balancing

Granted publication date: 20180731

License type: Common License

Record date: 20220622

EE01 Entry into force of recordation of patent licensing contract