集群系统中基于MPI的关联规则快速挖掘算法

合集下载

高效的基于动态数据更新的关联规则挖掘算法

高效的基于动态数据更新的关联规则挖掘算法

高效的基于动态数据更新的关联规则挖掘算法
刘松;林海萍
【期刊名称】《计算机系统应用》
【年(卷),期】2005(000)005
【摘要】在本文中,我们针对动态关联规则挖掘问题提出两个有效的处理算法,即EIM-A和EIM-G算法.它们能根据数据库的动态变化,高效地进行关联规则的更新.通过知识数据库的维护,最多只需要扫描原始数据库一次,就能得到所需的频繁项目集,能有效地降低更新关联规则所需的成本.
【总页数】5页(P51-54,58)
【作者】刘松;林海萍
【作者单位】广州,广东商学院信息学院,510320;广州,广东商学院信息学
院,510320
【正文语种】中文
【中图分类】TP3
【相关文献】
1.基于预判筛选的高效关联规则挖掘算法 [J], 赵学健;孙知信;袁源
2.基于等价类规则树的高效关联规则挖掘算法 [J], 刘晓蔚
3.基于Apriori的高效关联规则挖掘算法在教育考试系统中的应用研究 [J], 冯璐妹;赵建宁
4.基于高效关联规则挖掘算法的智能评卷模型研究 [J], 陈艺
5.一种基于压缩矩阵的高效关联规则挖掘算法 [J], 潘俊辉; 张强; 王辉; 王浩畅
因版权原因,仅展示原文概要,查看原文内容请购买。

关联规则挖掘算法

关联规则挖掘算法

关联规则挖掘算法关联规则挖掘算法的核心思想是寻找频繁项集和关联规则。

频繁项集是指经常同时出现的物品集合,而关联规则是指物品之间的关联关系。

关联规则通常以“如果...那么...”的形式呈现,表示不同物品之间的逻辑关系。

有多种关联规则挖掘算法可供选择,其中最常见的包括Apriori算法、FP-growth算法和Eclat算法。

Apriori算法是最早也是最著名的关联规则挖掘算法之一、它基于Apriori原理,即如果一个项集是频繁的,那么它的所有子集也一定是频繁的。

该算法首先通过扫描数据集来确定频繁项集,然后使用频繁项集生成关联规则。

FP-growth算法是一种基于分析树结构的快速关联规则挖掘算法。

它通过构建频繁模式树(FP-tree)来发现频繁项集和关联规则。

FP-growth算法相对于Apriori算法具有更高的效率,因为它不需要生成候选集,而是通过对数据集的多次扫描来构建FP-tree。

Eclat算法是一种基于垂直数据表示(vertical data representation)的关联规则挖掘算法。

它将项集表示为其在事务中的出现位置的集合,通过递归地挖掘次数递减的频繁项集来生成关联规则。

Eclat算法更适用于稠密数据集,因为它只需要对数据进行水平扫描。

关联规则挖掘算法的应用非常广泛。

在市场营销中,它可以帮助企业发现产品之间的关联关系,从而进行有针对性的推广和销售。

在电子商务中,它可以通过分析用户的购买记录来推荐相关产品。

在医疗领域中,它可以帮助发现潜在的疾病风险因素。

在社交网络分析中,它可以用于发现用户之间的关联关系和行为模式。

总结来说,关联规则挖掘算法是一种强大的数据分析工具,可以帮助分析人员发现数据中的隐藏模式和规律。

不同的算法有不同的优势和适用场景,选用合适的算法可以提高挖掘效率和准确性,从而为决策提供有价值的参考。

集群系统中基于MPI的并行GMRESm计算通信的研究及应用

集群系统中基于MPI的并行GMRESm计算通信的研究及应用


引言
在实际应用中,方程组的求解往往计算量巨大.
GMREs(m)算法进行了并行化分析,并应用可移植 消息传递标准MPI的集群通信机制在分布式存储 并行系统上设计和实现了GMREs(m)并行算法,最 后将该算法应用于弹性边界元问题的求解中,经过 数值实验和实际应用.
1986年由Y.Saad和M.H.chltz提出的GMRES方 法就是一种求解大型稠密非对称线性方程组的 Krylov子空间投影法,目前广泛应用于计算力学、 计算数学等工程领域.于春肖、杨爱民等[1-2]提出改 进GMREs(m)算法收敛性的一种预条件方法.陈一 鸣、杨爱民等[3-4J利用分治策略对GMRES方法进行 了并行处理.除上述方法外,文中通过有效的对
Parallel
Computation Communication and Application of GMRES(m)Based on MPI in Cluster System
YANG Ai—minl,LIU Ren2,ZHAO Guang—hua3,CUI Yu—huanl (1 College of Science,Hebei Ploytechnic University,Tangshan
设有单个带空弹性体A(20m×20m×2.5m,
3mX 2.5m),其一端固定的情况下受拉力的计算模
型.其中A物体的弹性模量E=210GPa,泊松比勘 =0.3,所受到的均布载荷P=104MPa.
计算中取并行GMRES(ITI)中优=20,P=8
时,计算的误差分别为:
RKI=2.3666678562411454E一005;
stability through
has
better computing precision,better efficiency and better

集群系统中基于MPI的关联规则快速挖掘算法

集群系统中基于MPI的关联规则快速挖掘算法

wh c e d n y s m e l g c o e a i n u h a ‘ n , o ’ n ‘ o ’ e r a e h e l i g d fi u t ,r — i h n e s o l o o i p r to s s c s a d’ ‘ r a d x r ,d c e s s t e r a i n i c ly e z f d c s t e n t r r f i a d i c e s s t e m i i g e f i n y I sp o e h o e ia l h tt e a g rt m a u e h e wo k t a f n n r a e h n n fi e c . ti r v d t e r tc l t a h l o ih h s c c y
集群 系 统 (lse) 称机 群 系统 指“ cu tr也 利用 高 速通
联 规则 的挖 掘 算 法 主要 有 【 Aga l 提 出 的基 于 1 rwa 等 ] Ap ir算 法 的频 集 方 法. 了提 高关 联 规 则 的挖 掘 r i o 为 效 率 , 究 人 员 又 提 出 了 并 行 挖 掘 算 法 , 要 包 研 主 括 :- Aga l [5 rwa 等人 提 出的 C 算法 , ak等人 提 出 2] D Pr 的P DM 算法 , h e g等 人 提 出 了 F M 和 D C un D MA 算
B h iUnv o a i.,Jn h u 1 1 0 ,Ch n ) iz o 2 0 3 ia
Ab t a t Cl s e s a k nd o i ti ut d s o a e s s e ,whih mos l do s t e me h fme s g s i g sr c u t r i i fd s r b e t r g y t m c ty a pt h t od o s a epa s n t e l e t omm u c ton be we n e e y n e Th o gh t e i e f c o e s ge p s i g o PI o r a i he c z nia i t e v r od . r u h nt r a e f r m s a a s n f M ,pu s t f wor a tp r le l rt m o n n s o i to u e s d o na y da a s o a nd e m pu a i or d a f s a a l la go ih f r mi i g a s ca i n r l s ba e n bi r t t r ge a o t tng,

基于遗传算法的双向关联规则挖掘

基于遗传算法的双向关联规则挖掘

基于遗传算法的双向关联规则挖掘
曾令明;金虎
【期刊名称】《微电子学与计算机》
【年(卷),期】2006()z1
【摘要】关联规则挖掘是数据挖掘和知识发现中一门重要技术,但基于支持度-置信度框架的关联规则挖掘存在一些问题。

文章引入了双向关联规则的概念,实现了基于遗传算法的双向关联规则挖掘算法。

实验证明,它能弥补传统关联规则挖掘算法的不足。

【总页数】3页(P35-37)
【关键词】数据挖掘;双向关联规则;遗传算法
【作者】曾令明;金虎
【作者单位】成都信息工程学院网络工程系;四川大学计算机学院
【正文语种】中文
【中图分类】TP311.13
【相关文献】
1.基于遗传算法的农产品评价信息关联规则挖掘 [J], 王玉珍;周朝进;王倩
2.基于遗传算法的关联规则挖掘技术在体质监测分析中的应用 [J], 彭中莲
3.基于自适应遗传算法的多维数据关联规则挖掘 [J], 闫磊;何志方;赵文娜;李远;姚非
4.基于信息熵与遗传算法的并行关联规则增量挖掘算法 [J], 毛伊敏;邓千虎;陈志刚
5.基于遗传算法的建筑安全事故关联规则挖掘 [J], 刘强;杨壹
因版权原因,仅展示原文概要,查看原文内容请购买。

一种快速的关联规则挖掘算法

一种快速的关联规则挖掘算法

一种快速的关联规则挖掘算法
李涛
【期刊名称】《软件导刊》
【年(卷),期】2007(000)012
【摘要】关联规则挖掘向来是数据挖掘的一个重要领域,挖掘算法也层出不穷。

本文在深入分析FP树特性的基础上,改进了FP树的构造过程,通过一次扫描事务数据库即可生成FP树。

从而缩短了关联规则挖掘时间,提高了效率,实验验证了其有效性。

【总页数】2页(P140-141)
【作者】李涛
【作者单位】南京信息工程大学电子与信息工程学院通信工程系;江苏南京210044
【正文语种】中文
【中图分类】TP301.6
【相关文献】
1.一种改进的基于关系矩阵的关联规则快速挖掘算法 [J], 王安;仇德成;安云峰;王继伟
2.一种基于决策树的快速关联规则挖掘算法 [J], 陈雪飞
3.一种基于矩阵结构的快速关联规则挖掘算法 [J], 何胜文;周绍梅;雷昌瑜;陈丽君
4.一种基于SFP树的快速关联规则挖掘算法 [J], 李龙澍;王永;魏博诚
5.一种基于MFP树的快速关联规则挖掘算法 [J], 李志云;周国祥
因版权原因,仅展示原文概要,查看原文内容请购买。

一种基于MapReduce的关联规则挖掘算法

一种基于MapReduce的关联规则挖掘算法

一种基于MapReduce的关联规则挖掘算法周国军【期刊名称】《玉林师范学院学报》【年(卷),期】2014(35)5【摘要】本文从减少I/O时间的角度出发,结合云计算Hadoop平台的MapReduce模型,提出了一种基于MapReduce的关联规则挖掘算法。

算法采用幂集计算候选项集,采用MapReduce模型在多个节点上并行找出所有频繁项集,只需要扫描事务数据库1次。

实验结果表明:在事务的平均项长较小的情况下,算法具有很好的加速比和数据规模增长性。

%From the viewpoint of reducing I/O time, according to MapReduce of Hadoop platform of cloud computing, this paper presents an algorithm for mining association rules based on MapReduce. The algorithm uses power set to compute candidate itemsets, and finds all frequent itemsets in parallel with MapReduce model, which scan the transaction database only once. Experimental result shows that the algorithm can achieve a good speedup and data sizeup under the condition that the length of itemset in transaction is not very longer .【总页数】7页(P128-134)【作者】周国军【作者单位】玉林师范学院数学与信息科学学院,广西玉林 537000【正文语种】中文【中图分类】TP311【相关文献】1.一种基于MapReduce的压缩矩阵关联规则挖掘算法 [J], 安建瑞;王海鹏;张龙波;金超;怀浩2.一种基于MapReduce的压缩矩阵关联规则挖掘算法 [J], 安建瑞;王海鹏;张龙波;金超;怀浩;3.基于MapReduce的隐私保护的关联规则挖掘算法的研究 [J], 熊富蕊;桑应朋;4.基于MapReduce计算模型的并行关联规则挖掘算法研究综述 [J], 肖文;胡娟;周晓峰5.基于MapReduce的关联规则挖掘算法的研究及应用 [J], 罗海洋因版权原因,仅展示原文概要,查看原文内容请购买。

基于MapReduce计算模型的并行关联规则挖掘算法研究综述

基于MapReduce计算模型的并行关联规则挖掘算法研究综述
随着信息技术的快速发展,需要存储和分析的数据量呈爆
炸性增长,人类已经进入了大数据时代,传统的关联规则挖掘 算法已经不能适应大数据挖掘的要求,主要困难是:单一计算 机无法存储所需要挖掘的所有数据及挖掘过程中产生的中间 结果;挖掘过程所需要的内存远远超过单一机器的存储量;计 算时间太长无法忍受等。需要开发分布式、并行关联规则挖掘 算法解决上述问题。
数据挖掘(datamining)又称做知识发现(knowledgedisco verindatabase,KDD),其目的在于发现大量数据集中有价值的 隐含信息。常见的数据挖掘任务有关联规则挖掘、分类、聚集、 离群点检测等。关联规则挖掘是最重要的数据挖掘任务之一, 由 Agrawal等人[1]提出,其目的是发现事务(项)之间存在的隐 含关联。关联规则挖掘一般分为两个阶段,即发现频繁项集和 根据频繁项集产生关联规则。由于根据频繁项集产生关联规 则相对容易实现,所以关联规则挖掘研究主要关注的是如何在 数据集中找到频繁出现的项集,这个过程也称为频繁项集挖掘 (frequentitemsetsmining)或 频 繁 模 式 挖 掘 (frequentpatterns mining)。传统的关联规则挖掘算法主要可以分为三类:a)产 生—测试方法,通过迭代产生候选频繁项集并进行分别计数, 统计得到频繁项集,典型的算法是 Agrawal等人[2]提出的算法 及其一系列的改进算法,如 DHP[3,4]、DIC[5]等;b)模式增长方 法,它不用产生候选项集,而是将所有频繁项压缩成一种特殊 的数据结构(一般为树结构),通过在数据结构上进行遍历直 接产 生 频 繁 项 集,典 型 的 算 法 有 FPGrowth[6]、LPtree[7]、 FIUT[8]、IFP[9]、FPL/TPL[10]等;c)垂 直 格 式 方 法,是 将 水 平 格 式的数据集转换成垂直格式,通过交运算来得到频繁项集,典 型的算法有 Eclat等。

关联挖掘算法

关联挖掘算法

关联挖掘算法
关联挖掘算法是一种在大规模数据集中寻找频繁项集或关联规则的算法。

它可以帮助我们发现哪些项经常同时出现(频繁项集),或哪些项之间有着某种关系(关联规则)。

以下是一些关联挖掘算法的简介:
1. Apriori算法:Apriori算法是一种经典的关联挖掘算法,其基本思想是从单项集开始,利用迭代和尝试的方式逐步生成更大的项集。

Apriori算法的算法时间复杂度较高,但可以快速地找到频繁项集。

2. FP-Growth算法:FP-Growth算法是一种基于FP树的关联挖掘算法。

FP树是一种高效的数据结构,它可以大大降低挖掘频繁项集的时间复杂度。

与Apriori算法不同,FP-Growth算法不需要生成候选项集,因此可以大幅度提高性能。

3. Eclat算法:Eclat算法是一种基于垂直数据格式的关联挖掘算法,可以大幅度提高挖掘频繁项集的效率。

Eclat算法利用深度优先搜索算法来逐步生成频繁项集。

4. 关联规则挖掘算法:这是一种基于频繁项集的关联规则挖掘算法。

它的基本思想是根据物品的出现频率和置信度,找到一些特定的规则或关联关系。

总之,关联挖掘算法是一种帮助我们发现数据集中项之间关系的重要
1/ 2
技术,可以应用于市场营销、推荐系统、网络安全、医学诊断等领域。

2/ 2。

基于云计算的关联规则挖掘算法

基于云计算的关联规则挖掘算法
关键 词 关联 规 则 云 计 算 M p e u e A r r a R d c pi i o 中图分类号 T 3t P 9 文献 标识 码 A 文 章 编 号 1 0 —9 2 2 l ) 5 0 7  ̄ 0 0 3 3 ( o 1 0 -5 9 4
关联 规则 … 挖掘 可 以发现 大量 数据 中项集 之 间有 趣 的关联 或相关 联 系 。随着 大量数 据不 停地
2 云计算 及关 键技术
据 库里 出现 的频率 , 项集 的支 持度 是 包 含 的
事 务在 数据库 D 中所 占的百分 比 , 计算式 为 : 其
sp o )= u p n( () 1
是 一种计 算模 式 , 也是 一 种 全 新 的 商业 模 式 。云
计 算 ( l dC m uig 是 分 布 式 处 理 ( i r ue Co o p t ) u n Ds i td tb C m uig 、 行 处 理 ( aa e C mp t g 和 网 格 o pt )并 n P rl l o ui ) l n
恰 当地 设 置 两 个 额 外 参 数 , 能 够 保 证 挖 掘 才
的效果 , 通 过 R d c 再 e ue函数 的程 序 将 结 果 汇整 ,
输 出要 得 到的结 果 。
笔 者 在 M p eu e框架 下 , A r r 算法进 aR d c 对 pi i o
行研究 , 效地 实现 了关 联 规则 的挖掘 。 有 3 云计 算下 的关联 规则挖 掘 3 1 关 联规则 挖 掘 的定 义 . 设 医疗信 息 活 动 中产 生 一 个 事 务数 据 库 , 记 为 D, D中 的事 务数 为 J 设 D包 含 n个 不 同 记 1 D .
其 中 D( ) 数 据 库 D 包 含 的 事 务 数 。 是

基于Hadoop平台的改进关联规则挖掘算法

基于Hadoop平台的改进关联规则挖掘算法

基于Hadoop平台的改进关联规则挖掘算法王英博;马菁;柴佳佳;赵彬【摘要】数据采集方式的增多导致单处理器下的关联规则挖掘受到I/O和内存的限制.针对该问题,对传统挖掘算法进行改进.借助Hadoop平台的优势,通过累加迭代的方法降低算法的时间复杂度,并利用MapReduce编程特点,通过一次遍历和MapReduce任务调度完成频繁项集挖掘,在强关联挖掘中通过Sqoop组件将外部表Hive中的数据迁移到Redis,实现数据的高速读取.实验结果表明,该方法可有效提高挖掘效率,提高幅度随数据集规模同步增大,并且具有较好的加速比和扩展性.【期刊名称】《计算机工程》【年(卷),期】2016(042)010【总页数】7页(P69-74,79)【关键词】Hadoop平台;MapReduce编程;关联规则;大数据;数据挖掘【作者】王英博;马菁;柴佳佳;赵彬【作者单位】辽宁工程技术大学软件学院,辽宁葫芦岛125105;辽宁工程技术大学软件学院,辽宁葫芦岛125105;辽宁工程技术大学软件学院,辽宁葫芦岛125105;辽宁工程技术大学软件学院,辽宁葫芦岛125105【正文语种】中文【中图分类】TP338.6关联规则挖掘[1-2]是针对购物篮问题(Market Basket Analysis)提出的,通过对事务集频繁项集的挖掘进而发现事物之间的关联规则,在零售业、金融、电子商务等诸多领域都得到了广泛应用。

目前处在一个数据爆炸的大数据时代,据不完全统计,淘宝网每天新增的交易数据可达10 TB,eBay平台每天处理约100 PB数据量,YouTube每分钟上传60 h的视频数据[3],在处理超大规模的数据时,单处理器下的关联规则算法受到I/O和内存的限制,近年来,不少专家学者开始探究使用分布式计算的方法来改进该算法。

文献[4]提出了分布式并行关联规则挖掘算法,针对分布式应用数据架构全局频繁模式树(Frequent Pattern tree,FP-tree)可能过大而内存无法容纳的问题,提出只产生局部FP-tree的算法,在各个主要步骤上都实现了并行处理,显著提高了算法的执行效率和处理能力。

基于云计算的关联规则挖掘算法

基于云计算的关联规则挖掘算法
support( X) = D( X) |D| ( 1)
ori 算法, 并对其性能做出分析。 研究现状 从近几年频繁项集挖掘算法的研究趋势来 为了提高算法的效率 , 国内外学者提出了一 看, 系列的混合搜索和高效剪枝策略 。 当数据集中 所包含的 项 目 个 数 较 多 时 , 马占欣等提出只有 恰当地设 置 两 个 额 外 参 数
[6 ]
之间有趣的关联或相关联系。随着大量数据不停 地收集和存储, 许多业界人士对于从数据库中挖 掘关联规则越来越感兴趣。 为此, 笔者针对关联 基于云计算的核心计算模式 规则 挖 掘 的 问 题, MapReduce 1
[2 ]
, 用于解决问题的程序开发模型, 也是开发
, 提出基于 MapReduce 框架的 Apri-
[3]
, 才能够保证挖掘
过程的正 常 进 行 , 但这样做的代价是可能会遗 漏部 分 包 含 更 多 负 项 目 的 关 联 规 则 。 在 基 于 Apriori
[4]
算法性质的基础上 , 胡学钢等提出了基
于 CL 模型的频繁项集求解算法 , 改善了频繁挖 但是构造剪枝概念格需要 掘算法的 时 空 性 能 , 花费一定时间 。 基于概念格及分布式关联规则 的挖掘算 法 在 实 际 应 用 需 要 进 行 大 量 的 研 究 , 尤其是分布式概念的关联规则挖掘算法需要进 一步深入研究解决 。 2 云计算及关键技术 云计算
k≥2
图1
基于 MapReduce 的 Apriori 算法
基于 MapReduce 的 Apriori 算法只需要两次 数据库扫描, 以挖掘频繁项集。第 1 次扫描 D, 在 n 个非重叠的部分, 在每一部分, 找出该部分内的 频繁项集。 这些称作局部频繁项集。 如果 D 中 则每个部分 事务的最小支持度阈值为 min_sup, 的最小支持度计数为 d m = min_sup × d t ( d t 为该 部分中事务数 ) 。 对于每个项集, 记录包含项集 2, …, 中事务的 TID。对于 k = 1 , 找出所有的局部 项集只需要扫描一次数据库。局部频繁项 频繁 k集可能不是整个数据库 D 的频繁项集。 D 的任 何频繁项集必须作为局部频繁项集至少出现在一 所有的局部频繁项集的集合形 个部分中。这样, 成 D 的全局候选项集。 第 2 次扫描 D, 评估每个 候选项集的实际支持度, 以确定全局频繁项集。 每一部分的大小和划分的数目这样确定, 使得每 一部分能够放入内存, 这样每次扫描只需要读一 次。基于 Apriori 算法的 Map 函数和 Reduce 函数 的伪代码如下所示。

基于格的快速频繁项集挖掘算法

基于格的快速频繁项集挖掘算法

基于格的快速频繁项集挖掘算法刘彩苹;毛建频;毛建旭;屈卫兰;蔡玉武【摘要】随着数据库规模的增加或支持度阈值的减少,频繁模式的数量将以指数形式增长,FP-growth算法运行的时空效率将大为降低.本文提出一种基于格的快速频繁项集挖掘算法LFP-growth,算法利用等价关系将原来的搜索空间(格)划分成若干个较小的子空间(子格),通过子格间的迭代分解,将对网格P(I)的频繁项集挖掘转化为对多个子格的并集进行的约束频繁项集挖掘.实验结果和理论分析表明,在挖掘大型数据库时,LFP-growth 算法的时间和空间性能均优于FP-growth算法.【期刊名称】《湖南大学学报(自然科学版)》【年(卷),期】2013(040)010【总页数】6页(P52-57)【关键词】数据挖掘;FP-树;频繁项集;格【作者】刘彩苹;毛建频;毛建旭;屈卫兰;蔡玉武【作者单位】湖南大学信息科学与工程学院,湖南长沙410082;抚州职业技术学院信息工程系,江西抚州 344000;湖南大学电气与信息工程学院,湖南长沙410082;湖南大学信息科学与工程学院,湖南长沙410082;湖南大学信息科学与工程学院,湖南长沙410082【正文语种】中文【中图分类】TP311.13频繁项集挖掘是数据挖掘中的一类重要挖掘问题,广泛应用于关联规则挖掘、相关性分析、入侵检测、序列挖掘、分类分析、聚类分析、Web挖掘、XML挖掘等诸多数据挖掘任务.长期以来,人们对频繁模式的挖掘进行了大量深入的研究工作.Han等人提出了一种比Apriori算法快一个数量级的FP-growth算法[1].随后,各国的研究者们提出了许多其他改进算法,如Koh等人提出的基于树的高效频繁项集挖掘算法[2],李也白等人用一种辅助存储结构提高了查询的效率[3],Nguyen利用矩阵提出的频繁项集挖掘算法[4],郭宇红等人提出的反向频繁项集挖掘算法[5],Zeng等人提出了加权关联规则挖掘算法[6].Jalan提出了一种非递归频繁项集挖掘算法[7].Adnan提出一种自适应的频繁项集挖掘算法[8].赵强利提出一种快速选择性集成算法[9].范明提出一种不生成条件FP-树的算法[10].谭军提出了一种单遍扫描频繁模式算法[11].FP-growth算法开辟了有效挖掘频繁模式的新途径.然而,它的时间和空间效率还不足够高,仍需改进.FP-growth算法的主要问题是建树过程中必须将提供频繁项集的数据全部压缩到一棵频繁模式树(或FP-树),在挖掘时,由长度为1的频繁模式(初始后缀模式)开始,递归的构造条件FP-树进行挖掘,在建树和挖掘过程中都需要占用大量的内存.当数据库很大,或者数据库中的频繁1-项集的数目很大时,运行速度将大为降低;更有甚者,可能由于无法构造基于内存的FP-树,该算法将不能有效地工作.本文结合大型数据库本身的特性,在分析FP-growth算法的基础上,提出了一种基于格的大型数据库频繁模式挖掘算法LFP-growth.实验和分析表明,在挖掘大型数据库时,LFP-growth算法具有较好的时间和空间效率.1 基本概念和问题的描述为方便讨论,以事务数据库为背景.设I={i1,i2,…,im}为所有项目的集合,D={T1,T2,…,Tn}为事务数据库,其中每个事务Ti(i∈[1,…,n])有一个惟一的标识TID.表1中的事务数据库是本文的示例数据库.该数据库中事务已经按照各项的支持度计数递增地将各事务中的项重新排列.在事务数据库中挖掘频繁项集的问题可以描述为:给定事务数据库D和最小支持度阈值minsup,挖掘所有的频繁项集.定义1[12]设(A,≤)为一个偏序集,如果对任意的x,y∈A,都存在x,y的上确界和下确界,则称A关于偏序“≤”构成一个格,并称“≤”是A上的一个格序. 定义2[12]设P(k)是格P的子格,如果对任意的x,y⊆P(k),且x∪y∈P(k)且x∩y⊆P(k),则称P(k)是格P的一个子格.表1 事务数据库Tab.1 Transaction databaseD事务标识事务事务标识事务T1a e d cT2a b cT3a b d cT4b cT5e b d cT6b d cT7e dT8e d c图1中利用等价关系将P(I)划分为互不相交的P(a),P(e),P(b),P (d),P(c)5个子网格(等价类),并且是有序的.LFP-growth算法采用的是基于前缀的分类,即P(k)子格表示所有前缀为k的项集构成的子网格.如,P (e)={{ebdc}{ed}{edc}}.图中实线圈起的项集表示在样例数据库中有该事务,虚线圈起的项集表示没有该事务.图1 格P(I)的划分Fig.1 Partition of latticeP(I)定义3 令α表示I上的约束表达式,项集约束表达式α以合取范式(CN F)的形式,即k1∧k2∧…∧ki(ki∈I,即每一合取项要么是I中的一个项目,要么是I中一个项目的补项.α=(a∧e∧⇁b),该约束表达式表示,该集合是包含了{ae}但不包含{b}的项集集合.2 LFP-growth算法2.1 算法基本思想令L(P(k)|α)(k∈I)表示在格P(k)上满足约束表达式α的频繁项集,令扩充格P(k)^(k∈I)表示在P(I)中所有包含项目k的项集.定理1α合取式(k1∧k2∧ …∧ki)(ki∈I)的首项ki是P(I)的第t个等价类,则满足约束表达式α的频繁集必在集中P(I)的前t个子格中.证明由等价类的性质,可推出P(I)=P(a)∪P(e)∪…∪P(c),而且子格之间项集互不相交,则P((I)|α)=L(P(a)|α)∪L(P(e)|α)∪…∪L(P(c)|α),假设α合取项的首项ki1为b,b是P(I)的第3个等价类,由于位于第4和第5位的P(d)和P(c)中不含b项目,即L(P (d)|α)=Φ,L(P(d)|α)=Φ,满足α的频繁集必在该P(I)的前3个等价类中.同理可证,当α合取项的首项ki1为其他项时也是如此.由定理1可推出以下公式,图2为扩展格P(e)^.LFP-growth算法按项集支持度由小到大依次处理每一个子网格,在对每一个子网格进行处理时采用了迭代分解的方法,即将一个较大的格分解成较小的子格,将分解后子格分别迭加到相应的子格中,依次进行约束项挖掘直到求出所有的频繁集.下面的定理给出了迭加项集数的大小,所谓迭加项集数是指完成对P(k)的挖掘后,从P(k)子格迭加到后续子格的项集总数.图2 扩展格P(e)^Fig.2 Extended latticeP(e)^定理2 按上述方法对子格空间进行迭加,P(k)的项集迭加总数为(n―t)×2n-t-1,n为I中子格的数,t为P(k)在P(I)中的排序.证设P(k)是P(I)中第t个子格,P(k)子格中参加迭加的项集总数为(n-t)×2n-t-1.推论1 按k的支持度由小到大依次处理每一个子格P(k),可使参与“迭加”的事务最少.证由定理2可知,越早处理的子格迭加项集数越多,子格P(k)对应的k的支持度越小,其子搜索空间对应的事务越少,参加迭加的事务也越少.因此LFP-growth算法在将P(I)划分为若干个较小的子格后,按项集支持度由小到大依次处理每一个子格,目的是使参与“迭加”的事务最少.由推理1可知,按k的支持度大小依次处理子格P(k)比随机选择P(k)进行处理效率更高,速度更快.定理3L(P(I))=L(P(a)^|a)∪L(P(e)^|e)∪…∪L(P(c)^|c).证P(k)^(k∈I)表示在P(I)中包含项集k的项集,即P(k)^⊆P(I),且P(k)^中包含了P(I)中所有含项目k的项集,因此格P(k)上挖掘满足约束表达式α=k的频繁项集等同于格P(I)上挖掘满足该表达式的频繁项集,即L(P(I)|a)=L(P(a)^|a),则有:由定理3得到以下结论,对网格P(I)的频繁项集挖掘转化为对多个子网格的并集进行的约束频繁项集的挖掘,不会影响频繁项集完全集的正确输出.2.2 算法步骤实现LFP-growth算法的关键是子格(子搜索空间)所对应的事务的迭加,如果复制所有的子格对应的事务进行迭加,时间和空间的效率会非常低.为此,可以借鉴Christian Borgelt教授在研究Recursive elimination算法时提出的事务链表(transaction list array)来实现迭加.事务链表是由一组单向数据链表组成,每一个单向数据链记录一个子格P(k)所对应的事务集(以下简称为P(k)事务集)的信息,每一个单向数据链都包括一个计数器(support counter)和一个指针.计数器的值表示P(k)事务集的总数,指针则用于保存P(k)事务集的关联信息.将所有单向数据链表按P(k)处理的顺序排列,便组成了事务链表.样例数据库的事务链表组如图3所示.图3 事务链表组Fig.3 Transaction list array定理4L(P(a)^′|a)∪L(P(e)^′|e)∪…∪L(P(c)^′|c)=L(P (I)).证P(k)^′是P(k)^的过滤子集,它滤去了之前已挖掘过的冗余项.显然在过滤后的投影数据库上进行约束挖掘等同于在投影数据库上进行约束挖掘,即L(P (k)^|k)=L(P(k)^′|k).因此,L(P(a)^′|a)∪L(P(e)^′|e)∪…∪L(P(c)^′|c)=L(P(a)^|a)∪L(P(e)^|e)∪…∪L(P (c)^|c).由定理3可知,L(P(a)^′|a)∪L(P(e)^′|e)∪…∪L (P(c)^′|c)=L(P(I)).证毕.算法1 格P(I)的分解和迭加输入:P(I)对应的事务数据库D;最小支持度阈值minisup输出:D中频繁项集方法子格P(a)中事务的迭加如图4所示.图4 将P(a)中事务分解到其他子格Fig.4 The transaction ofP(a)was decomposed to other sublattices算法2 约束频繁项集挖掘算法输入:扩展子格P(k)^对应的数据库子集Dk^;最小支持度阀值minisup;约束表达式k;输出:满足约束表达式lk的频繁项集Li定理5P(k)^(k∈I)是格.证P(k)^=(P(a)|k)∪(P(e)|k)…∪(P(c)|k).(P(a)|k)为格P(I)中包含项目{ak}的项集.设X,Y⊆(P(a)|k),则X∩Y,X∪Y⊆(P(a)|k).用反证法,如果X∩Y,X∪Y⊄(P(a)|k),则X,Y中必有一项⊄(P(a)|k),与假设矛盾,因此,X∩Y,X∪Y⊆(P (a)|k).由定义2可知(P(a)|k)是一个格,同理可证(P(e)|k),…,(P(c)|k)都是格,而(P(a)|k)∪(P(e)|k)…∪(P(c)|k)也是格.证毕.性质1 LFP-growth算法具有良好的可扩展性.当数据库为海量数据库时,可将它分解迭加成多个P(k)^进行挖掘,而当某个P(k)^对应的事务很多,依然无法在内存中构造Fp-树时,挖掘就难以顺利进行.根据定理5可知P(k)^是格,因此我们可将P(k)^再次进行迭加分解,如果分解后扩展子格依然无法在内存中构造Fp-树时,就再继续分解直到可以在内存中构造扩展子格的Fp-树为止.3 实验结果和分析3.1 实验结果本节对LFP-growth算法和FP-growth算法进行比较,程序代码均用Visual C ++实现.实验在PetiumⅣ2.8G,内存512M,硬盘80G的PC机上运行.实验结果如图5~图7所示.图5是采用accidents数据库进行实验,该数据库大小为33.6M,是比利时国家统计院提供的1991-2000年期间Flanders地区的交通事故数据库.由图5可知,当最小支持度大于等于0.5%时,FP-growth算法的运行速度比LFP-growth算法略快.但是,当最小支持度小于0.5%时,LFP-growth算法的运行速度比FP-growth算法快.而且随着支持度的减少,差别越明显.图6是采用bio_train数据库进行实验,该数据库是KDD Cup 2004所提供的关于蛋白质同源性的训练数据库.该数据库有145 751行,每行包含有1个块号、1个试验号和74个特征值.图6是在事务数据库大小为66.4M条件下,最小支持度从3%减少到0.05%的两种算法运行时间的比较,由图6可知,当最小支持度等于3%时,FP-growth算法的运行速度比LFP-growth算法快.但是,当最小支持度小于等于1%时,LFP-growth算法的运行速度比FP-growth算法快.而且随着支持度的减少,差别越大.图5 在accidents上的运行时间Fig.5 Runtime on database accidents图6 在bio_train上的运行时间Fig.6 Runtime on database bio_train图7是在最小支持度固定在15%条件下,事务数据库从300M增加到600M时两种算法运行时间的比较,由图7可知:随着事务数据库规模的增加,两种算法的运行时间都在不断增加.但是FP-growth算法运行时间的增长要远大于LFP-growth算法,甚至当事务数据库规模大于等于450M时,FP-growth算法因为内存空间不够无法运行,而LFP-growth算法却能正常运行.图7 在WebDocs(支持度15%)上的运行时间Fig.7 Runtime on database WebDocs(min-sup 15%)3.2 实验结果分析FP-growth算法要将事务数据库中所有产生频繁项集的数据压缩到一棵FP-树中,该树中存储的关联信息从建树开始到挖掘完毕都完整地保存在内存里,挖掘时又通过递归创建条件FP-tree生成频繁模式,条件FP-tree个数等于频繁模式数,所以建树挖掘的时间和空间开销都很大,尤其是随着数据库规模的增加或支持度阈值的减少而导致频繁模式的数量以指数形式增长时,FP-growth算法无法构造基于内存的FP-树,从而导致挖掘失败.而LFP-growth算法虽然多次迭加子格,但它是在扩展格中构造FP-tree,规模比原始的FP-tree要小,而且挖掘过程比FP-growth算法简单,时间消耗远小于FP-growth算法.本文算法不仅时间效率明显优于FP-growth算法,而且空间效率也明显优于FP -growth算法.因为,LFP-growth算法构建的是基于扩展格的FP-树,其规模远远小于在整体事务数据库上构建的FP-树,而且由以上运行时间效率实验和分析已表明,LFP-growth可以在更小的支持度阀度水平上运行,而FP-growth 算法常因耗尽物理内存而无法运行.4 结论提出了一种基于格的快速频繁项集挖掘算法LFP-growth.这种算法不仅减少了对内存的需求,也较大地提高了挖掘效率,尤其适合挖掘大型数据库的频繁项集.本文的实验结果很好地证明了这一点.今后的工作在于进一步的研究如何精简事务数据链表组的结构,进一步提高现有算法的效率,减少对内存的需求.同时考虑可将本文格迭加分解的策略和已有的各种分布式频繁模式挖掘算法结合起来,设计新的基于分布式数据库的频繁模式挖掘算法.参考文献[1] HAN J,PEI J,YIN Y.Mining frequent patterns without candidate generation[C]//Proceedings of the ACM SIGMOD International Conference on Management of Data.New York:ACM Press,2000:1-12.[2] KOH J L,TU Y L.A tree-based approach for efficiently min-ing approximate frequent itemsets[C]//Proceedings of the Fourth International Conference on Research Challenges in Information Science(RCIS).Nice,France:2010:1349-1357.[3] 李也白,唐辉,张淳,等.基于改进的FP-tree的频繁模式挖掘算法[J].计算机应用,2011,31(1):101-103.LI Ye-bai,TANG Hui,ZHANG Chun,etal.Frequent pattern mining algorithm based on improved FP-tree[J].Journal of Computer Applications,2011,31(1):101-103.(In Chinese)[4] NGUYEN T T.An improved algorithm for frequent patterns mining problem[C]//Proceedings of the International Symposium on Computer Communication Control and Atomation.Tainan,2010:503-507.[5] 郭宇红,童云海,唐世渭.基于FP-Tree的反向频繁项集挖掘[J].软件学报,2008,19(2):338-350.GUO Yu-hong,TONG Yun-hai,TANG Shi-wei.Inverse frequent itemset mining based on FP-tree[J].Journal of Software,2008,19(2):338-350.(In Chinese)[6] ZENG B,JIANG X L,ZHAO W.The improvement of weighted association rules arithmetic based on FP-tree[C]//Proceedings of the3rd International Conference on Advanced Computer Theory and Engineering.Chengdu,2010:549-552.[7] JALAN S,SRIVASTAVA A,SHARMA G K.A non-recursive approach for FP-tree based frequent pattern generation[C]//2009IEEE Student Conference on Research and Development(SCOReD).UPM Serdang,2009:160-163.[8] ADNAN M,ALHAJJ R.A bounded and adaptive memorybased approach to mine frequent patterns from very large databases[J].IEEE Transactions on Systems,Man,and Cybernetics,Part B:Cybernetics,2011,41(1):154-172.[9] 赵强利,蒋艳凰,徐明.基于FP-Tree的快速选择性集成算法[J].软件学报,2011,22(4):709-720.ZHAO Qiang-li,JIANG Yan-huang,XU Ming.Fast ensemble pruning algorithm based on FP-tree[J].Journal of Software,2011,22(4):709-720.(In Chinese)[10] 范明,李川.在FP-树中挖掘频繁模式而不生成条件FP-树[J].计算机研究与发展,2003,40(8):1216-1222.FAN Ming,LI Chuan.Mining frequent patterns in an FP-tree without conditional FP-tree generation[J].Journalof Computer Research and Development,2003,40(8):1216-1222.(In Chinese)[11] 谭军,卜英勇,杨勃.一种单遍扫描频繁模式树结构[J].计算机工程,2010,36(14):32-33.TAN Jun,BU Ying-yong,YANG Bo.Single-pass frequent pattern tree structure[J].Computer Engineering,2010,36(14):32-33.(In Chinese)[12] 郭耀煌,刘家诚,刘常青,等.格序决策[M].上海:上海科学技术出版社,2003.。

关联规则挖掘算法

关联规则挖掘算法

关联规则挖掘算法关联规则挖掘算法(Association Rule Mining Algorithm)是一种用于从大规模数据集中发现项之间的关联关系的数据挖掘算法。

该算法可以发现数据集中出现频率较高的项集,并基于这些项集生成关联规则。

关联规则挖掘算法的基本原理是通过计算项集之间的支持度和置信度来判断它们之间的关联关系。

支持度(Support)表示包含一些项集的事务的比例,置信度(Confidence)表示在一些项集出现的条件下,另一个项集出现的概率。

常用的关联规则挖掘算法有Apriori算法和FP-Growth算法。

1. Apriori算法:Apriori算法是一种基础的关联规则挖掘算法。

该算法的核心思想是使用一种叫做“逐层”的方法来找出频繁项集。

它通过生成候选项集,并通过计算支持度来筛选出频繁项集,在不断迭代的过程中找出所有的频繁项集。

Apriori算法的流程如下:(1)扫描整个数据集,统计每个项的出现频率,生成频繁1-项集;(2)根据频繁1-项集生成候选2-项集,并计算每个候选项集的支持度,筛选出频繁2-项集;(3)根据频繁2-项集生成候选3-项集,并计算每个候选项集的支持度,筛选出频繁3-项集;(4)重复上述过程,直到没有更多的频繁项集生成。

2. FP-Growth算法:FP-Growth算法是一种基于频繁模式树的关联规则挖掘算法。

与Apriori算法不同,FP-Growth算法通过构建一个FP树来节约生成候选项集和计算支持度的时间,从而提高算法的效率。

FP-Growth算法的流程如下:(1)扫描整个数据集,统计每个项的出现频率,生成频繁1-项集;(2)构建FP树,树的节点包含项和频率信息;(3)构建条件模式基,即所有以一些项为结尾的路径;(4)从条件模式基构建条件FP树,递归生成频繁项集;(5)重复上述过程,直到没有更多的频繁项集生成。

关联规则挖掘算法在实际应用中有着广泛的应用。

例如,在市场营销领域,可以通过分析购物篮中的商品,发现一些商品之间的关联关系,从而可以做出更好的商品搭配和促销策略。

关联规则挖掘的原理与方法

关联规则挖掘的原理与方法

关联规则挖掘的原理与方法关联规则挖掘是数据挖掘中的一项重要任务,它旨在发现数据集中的有价值关联规则。

关联规则是一种描述数据项之间相互关联关系的方法,通过挖掘数据集中的关联规则,可以帮助人们了解数据之间的关系,指导决策并提升业务效率。

本文将介绍关联规则挖掘的原理与方法,帮助读者深入了解这一领域。

一、关联规则挖掘的原理关联规则挖掘的原理基于频繁项集发现和关联规则生成。

频繁项集是指在数据集中经常同时出现的项的集合,而关联规则是通过挖掘频繁项集得到的。

以下是关联规则挖掘的原理流程:1. 收集数据集:首先需要收集包含项集信息的数据集,这个数据集可以是来自各种领域的数据,如市场销售数据、电子商务数据等。

2. 数据预处理:在进行关联规则挖掘之前,需要对数据集进行预处理。

包括去除无关项,数据清洗,以及将数据转化为适合关联规则挖掘的形式。

3. 频繁项集发现:通过扫描数据集,发现频繁项集。

常用的方法有Apriori算法、FP-Growth算法等。

Apriori算法基于候选项集的不断剪枝与连接操作,逐步发现频繁项集。

FP-Growth算法则通过构建频繁模式树来高效地发现频繁项集。

4. 关联规则生成:根据频繁项集,生成满足设定置信度阈值的关联规则。

关联规则的生成涉及到计算支持度和置信度,并通过设定阈值过滤掉低置信度的规则。

5. 规则评价和选择:通过评价指标对生成的关联规则进行评估和选择。

常用的评价指标包括支持度、置信度、提升度等。

评价指标可以帮助用户判断关联规则的可靠性和有用性。

二、关联规则挖掘的方法在实际应用中,为了提升关联规则挖掘的效率和准确性,研究者们提出了许多改进的方法。

以下介绍几种较为常用的关联规则挖掘方法:1. Apriori算法:Apriori算法是关联规则挖掘中最经典的算法之一。

它基于频繁项集的自底向上发现策略,通过迭代计算每个频繁项集的候选项集,并利用候选项集的支持度进行剪枝操作,最终发现频繁项集。

2. FP-Growth算法:FP-Growth算法是一种高效的关联规则挖掘算法。

快速关联规则挖掘算法DPD

快速关联规则挖掘算法DPD

快速关联规则挖掘算法DPD
王多强;周建红;李庆华
【期刊名称】《华中科技大学学报:自然科学版》
【年(卷),期】2002(30)12
【摘要】提出了一种快速关联规则挖掘算法DPD .算法通过模式分解 ,在每次遍历中减小模式量和模式长度 ,动态地减小数据集大小 ,从而有效减少候选关联规则的产生和计数的费用 .提出了基于频繁集Lk 生成最长项目子集M (k)的FPS算
法 .DPD算法利用了M (k)进行模式分解 ,有效克服PD算法在 |~Lk|很大时模式分解效率低的缺点 ,减少了由Ck 生成Ck +
【总页数】3页(P15-17)
【关键词】数据挖掘;关联规则;模式分解;频繁集;DPD算法
【作者】王多强;周建红;李庆华
【作者单位】华中科技大学计算机科学与技术学院国家高性能计算中心(武汉)【正文语种】中文
【中图分类】TP311.132
【相关文献】
1.面向个性化推荐的快速关联规则挖掘算法 [J], 邓晓懿;金淳;樋口良之;韩庆平
2.数据库扫描的一种快速关联规则挖掘算法 [J], 戴娟;邱雁
3.一种快速挖掘关联规则的改进算法 [J], 武坤
4.基于FP-growth关联规则的图书馆数据快速挖掘算法研究 [J], 文芳;黄慧玲;李
腾达;王佳斌
5.基于FP-growth关联规则的图书馆数据快速挖掘算法研究 [J], 文芳;黄慧玲;李腾达;王佳斌
因版权原因,仅展示原文概要,查看原文内容请购买。

基于分布数据库的快速关联规则挖掘算法

基于分布数据库的快速关联规则挖掘算法

基于分布数据库的快速关联规则挖掘算法陈耿;倪巍伟;朱玉全;孙志挥【期刊名称】《计算机工程与应用》【年(卷),期】2006(042)004【摘要】关联规则发现是数据挖掘的重要研究内容,随着数据库中数据的不断增加,大数据集环境下的关联规则发现日益受到重视,分布式关联规则发现是解决这一问题的有效方法.分布式数据库环境下的关联规则挖掘算法中,时间开销主要体现在两方面:(1)频繁项目集的确定;(2)网络的通讯量.为了解决第一个问题,文章提出了一种基于二进制形式的候选频繁项目集生成和相应的计算支持数算法,该算法只需对挖掘对象进行一些"或"、"与"、"异或"等逻辑运算操作,显著降低了算法的实现难度.将该算法与DMA算法相结合提出改进算法FDMA.理论分析和实验结果表明,算法FDMA大大提高了关联规则挖掘的效率,算法是有效可行的.【总页数】4页(P165-167,194)【作者】陈耿;倪巍伟;朱玉全;孙志挥【作者单位】南京审计学院,南京,210029;东南大学计算机科学与工程系,南京,210096;东南大学计算机科学与工程系,南京,210096;江苏大学计算机科学与通信工程学院,江苏,镇江,212013;东南大学计算机科学与工程系,南京,210096【正文语种】中文【中图分类】TP311【相关文献】1.基于分布式系统下的快速关联规则挖掘算法 [J], 黄勇;赵靖2.基于关联规则的动态数据库快速挖掘算法 [J], 王宗江3.基于分布式数据库的关联规则挖掘算法 [J], 景永霞;王治和;苟和平4.基于垂直数据分布的大型稠密数据库快速关联规则挖掘算法 [J], 崔建;李强;杨龙坡5.一种分布式数据库关联规则挖掘算法 [J], 曹文梁因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
s(p)2rR薪,期中f是不能分解成并发任务 问,W是数据量的大小.由阿尔达姆定律加速系数
3算法理论分析
(1)算法的并行性能分析 假设每个结点的DB,具有D/.个事务,咒为并 行计算结点的数量,假设需要挖掘的项目集I的大小 为忌,则最多有2‘个项集,每次对数据库的扫描时间 为t。,则串行时间为2kt。,串行的时间复杂度T。=O (2‘).每个分结点的并行运行时间为2't。/n,主结点 的运行时间为t。,最坏情况下并行运行的计算时间为 t。+咒*2kt。/n,在阶的意义下并行代价等于最坏情况 下串行的代价,具有代价最佳的并行性. (2)算法的加速比分析 并行运行的时间t。由两部分组成:计算部分£。。 和通信部分£一。,t,=tc。。+t。。。. 上述算法中,如果项集X在结点i是局部频繁 的,则其通信量的复杂度为0(n),£。。。=咒(t。。。+ wtdat。),t。。。。是消息时延,t‰是发送单位数据的时
性质1 E6] 对于Xp,X。∈J,Xp,X。有且只有志一 2个元素相同的充要条件是length(Bxp or Bx。)一忌.
由Apriori算法和性质l有,如果X,,鼍∈ LLk~l(_f),length(Bxp or Bx。)=志,则,可以组成结点
J上的局部候选是项集X,U X。.以下用m位二进制 数P代表项集X,,m位二进制数q代表项集X。.
2.3从结点的局部频繁项目集的生成与支持度计算
(1)局部频繁项目集的生成算法 输入:分发到结点i的正一1项全局频繁项目集Gk一-
(i).
输出:局部频繁女项集LL。(i)
Apriori_gen() {LL。(i)=予;
for each pEGL,一I(i) for each口∈GLI—l(i)//口≠P {夕q=P Og q}//生成新的七序列
第32卷第1期 2010年2月
三峡大学学报(自然科学版) J of China Three Gorges Univ.(Natural Sciences)
V01.32 No.1 Feb.2010
集群系统中基于MPI的关联规则快速挖掘算法
安立奎1 钱伟懿1 韩丽艳2
(1.渤海大学数学系,辽宁锦州 121003;2.渤海大学公共计算机教研部,辽宁锦州 121003)
本文参照了文献[6]的算法,给出了一种在集群 系统中用MPI实现的基于二进制的关联规则算法, 该算法具有实用性强,并行可扩展性好,实现难度低 和高效率等优点.
收稿日期:2009—09—29 基金项目:国家自然科学基金资助项目(10871033);辽宁省高等学校科研项目资助计划(2008004);辽宁省教育厅A类项目(2009A034) 通讯作者:安立奎(1978一),男。讲师.硕士。软件设计师,主要研究方向为数据挖掘。并行与分布式计算.E-mail..an_likui@163.com
(1.Department of Mathematics,Bohai Univ.,Jinzhou 121003,China;2.Department of Public Computers, Bohai Univ.,Jinzhou 12 1003,China)
Abstract Cluster is a kind of distributed storage system,which mostly adopts the method of message passing to realize the communication between every node.Through the interface for message passing of MPI,puts forword a fast parallel algorithm for mining association rules based on binary data storage and eomputating, which needs only some logic operations such as‘and’,‘or’and‘xor’,decreases the realizing difficulty,re— duees the network traffic and increases the mining efficiency.It is proved theoretically that the algorithm has the advantage of improving the effectiveness and scalability of mining association rules. Keywords cluster;parallel computation; MPI; association rules
行户口2户口’ for(i=1,Count
O;i<一优&&npq!=O;i++)//统
万方数据
第32卷第1期
安立奎等 集群系统中基于MPI的关联规则快速挖掘算法
97
计npq中1的个数 if(npq and 0x01) {count++: 订户q=npq>>1}//逻辑右移1位 } if(count==志)//p,q可以合并生成候选k项集 {for(i=1,6=0x01;i<=研;i++) n=户qXOr b;//T/是加的k一1项子集 if r/∈GL.。(i)//n不是频繁k一1项集 break; ) if(i=一研)//Pq的所有k一1项子集都是频繁k一1项
定义I r63 事务(项集)一二进制数关系.给定J= {il,i2,…,i。),称,:T×(X×D-*b。b2…b。一lb。为事 务(项集)一二进制数关系,并称b=b。bz…b。一-b。为 事务T(项目集X)所对应的二进制数,记为B,(B,), 其中6,∈{0,1},且如果项i,∈T(i,∈X),则6f=l,否 则,6,=0,_『=1,2,…,m.对项目集X∈J,B,中1的 个数成为X的长度,记为length(X).例如:X={Jt, J‘,J5),B,=10011,length(B,)=3.
集 LL^(i)一LL^(i)UPq } return LL★(i); }
(2)项集的局部支持度计算方法
输入:局部频繁k项集LL^(i) 输H{:^jI鄂频繁女项集LL·(i)每一项的支持度 Support—caculate() {for each tEDB。//DB。是局部事务数据库,由主结点分 发 for each P∈LLI(i) if(P ort一一f) P.sup++l }
发送到各个结点.(5)重复(1)~(4)直到没有新的局
部频繁项集产生. 2.2中心主结点的算法描述
输入:从结点i的局部候选矗项集LL。(i)i一1,2,…,押.
输出:全局频繁候选女项集GL。(D). 女=1}G(五(D)一垂;all=0; for(i=1;i<=行;i++)
{G6I(D)=o包(D)ULL^(i); if(LLI(i)=一中)all++I
MPI拥有一个上百个函数构成的函数库.用 MPI构建一个并行计算环境主要用到六个函数.函 数名分别为:MPI—Init,MPI—Comm—Size,MPI-comm- Rank,MPI—Send,MPI—Recv,MPI—Finalize.MPI—Init 和MPI—Finalize实现MPI环境的初始化和结束; MPI—COMM—woRLD通信因子是在MPI环境初始 化过程中创建的,MPI-Commm—Size获取缺省组 (Group)的大小;MPI—Comm—Rank获取本进程在缺 省组中的逻辑号(从0开始);MPI—Send和MPI—Recv 实现消息的传递"].MPI主要处理点对点和集合两种 通信.本文的算法采用的是主从式并行I/0调控策 略.在集群中有一个结点为主结点(通常是0结点)其 他为从结点,它们之间通过高速网络进行连接,各从 结点与主结点交互数据,不用彼此交换数据,减少了 通信量,有较好的扩展性. 1.2数据的二进制表示及其性质
关键词:集群系统; 并行计算; MPI; 关联规则
中图分类号:TP393
文献标识码:A
文章编号:1672-948X(2010)01-0095-03
Reseach on Fast Algorithm Based Oil MPI for Mining Association Rules in Cluster An Likuil Qian Weiyi Han Liyan2
性质2‘63 对于m位二进制数p和q,如果P or q=p,则X。∈Xp.
2 改进算法
2.1 算法思想 主结点首先把事务数据库DB利用定义1进行
预处理,把得到的新的事务数据库均匀地分发到从结
点i上Ⅲ,i=1,2,…,n,每个从结点有自己的事务数
据库DB;.(1)在结点J中利用GL。一-(J)产生局部候
if(all==挖)exit(0)l//没有新的局部频繁项集产生 for each pEGG(D)//计算GGk(D)中所有项集P的全 局支持度
for each q∈LLk(D)
if(P xor q==O)//P与q相同 P.sup+一q.sup; }
for each pEGGl(D)
if(p.sup<艿D)GG·(D)=GGl(D)一P,
(_f)≥艿Di,X的全局支持度X.sup=∑X.sup(j),如
果X.sup>iceD,则称X是频繁项集.在第.『个数据库 生成的惫项目候选集用CL。(J)表示,在第J个数据 库生成的是项目频繁项集为局部频繁项目集,用Lk (歹)表示,在全局数据库D中生成的是项频繁项集为 全局项集,用GL。(D)表示,发送到第J个结点上的全 局走项集用GL^(j)表示.
联规则的挖掘算法主要有[1]Agrawal等提出的基于 Apriori算法的频集方法.为了提高关联规则的挖掘 效率,研究人员又提出了并行挖掘算法,主要包 括:[2引Agrawal等人提出的CD算法,Park等人提出 的PDM算法,Chueng等人提出了FDM和DMA算 法.这些算法虽然具有速度快、容易实现等优点,但也 存在着可扩性较差、候选项集大、规则合成难度高等 缺点.
相关文档
最新文档