CN108875015A - 一种基于FpGrowth算法的剪枝策略 - Google Patents

一种基于FpGrowth算法的剪枝策略 Download PDF

Info

Publication number
CN108875015A
CN108875015A CN201810633316.2A CN201810633316A CN108875015A CN 108875015 A CN108875015 A CN 108875015A CN 201810633316 A CN201810633316 A CN 201810633316A CN 108875015 A CN108875015 A CN 108875015A
Authority
CN
China
Prior art keywords
tree
algorithm
frequent
mining
path
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.)
Pending
Application number
CN201810633316.2A
Other languages
English (en)
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.)
Anyang Institute of Technology
Original Assignee
Anyang Institute of 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 Anyang Institute of Technology filed Critical Anyang Institute of Technology
Priority to CN201810633316.2A priority Critical patent/CN108875015A/zh
Publication of CN108875015A publication Critical patent/CN108875015A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

FpGrowth算法是不产生候选集的关联规则挖掘算法,具有广泛的实际应用价值。为此对经典FpGrowth算法的FP‑tree的结构和挖掘过程进行了深入分析和研究,分析了FP‑tree单路径和多路径的挖掘方法,提出了一个剪枝策略,在频繁模式挖掘时可以减少部分分支的迭代次数。实验结果验证提出的剪枝策略有效地改进了算法,并提高了FpGrowth算法对数据的处理能力和效率。

Description

一种基于FpGrowth算法的剪枝策略
技术领域
本发明涉及数据挖掘领域,尤其涉及一种基于FpGrowth算法的剪枝策略。
背景技术
随着信息技术的迅猛发展,要从日益庞大和复杂的数据中发现有价值的信息和知识,达到为决策服务的目的,己成为非常艰巨的任务。数据挖掘技术在此背景下应运而生。关联规则挖掘是数据挖掘中的一个重要分支,也是目前应用最广的一种数据挖掘类型。
数据关联规则的挖掘目的,是发现在大量的数据项之间存在的值得关注的关联或相关关系,典型应用是零售业的购物篮分析。所谓购物篮分析是指对数据进行关联规则研究,有助于发现交易数据库中不同商品之间的联系,找出顾客购买行为的模式,例如,如果面包和牛奶经常被顾客同时购买,则把它们摆放在一起有助于增加两种商品的销售量。为了衡量一条规则的重要程度,关联规则通常采用支持度和可信度作为度量标准。支持度可以表示商品在超市销售中的重要程度,可信度反映了商品之间的关联程度。如果在购买面包的交易中,有60%的交易既购买了面包又购买了牛奶,则称关联规则“面包牛奶”,表示如果购买面包则购买牛奶的可信度为60%。
关联规则,表示A与B同时存在的情况下,在事务数据库D中的支持度,可用概率表示;关联规则在事务数据库D中的可信度,是在事务数据库D中的那些包含A的事务中,B也同时出现的概率,即条件概率。
一个项集X在事务数据库D中的支持度,是事务数据库D中包含X的事务占事务总数的百分比,即概率P(X)。对于一个项集X,如果其支持度大于或等于预先给定的支持度阈值min_support,则称X为频繁项集或频繁模式。
FpGrowth算法的基本思想是利用树结构对事务进行压缩,同时保留了事务中属性之间的关系。这种算法不会产生候选项集,而采用增长频繁集的方法进行数据挖掘。FpGrowth算法的重要步骤是FP- tree的构造过程,需要扫描两次事务集:第一次扫描事务集T,找出频繁1-项集合L_list,并且将L_list按照支持度计数降序排列;第二次扫描事务集T,以“Null”为根节点,基于L_list构建FP- tree。为了方便遍历FP- tree,还需创建项头表。该表中每一行表示一个频繁项,并且有一个指针指向它在FP- tree中对应的节点。具体算法流程如下:
(1) 创建原始FP-tree。
1)扫描事务集合T,找出支持度计数满足条件的项,并将这些项组合成频繁1-项集合L,基于支持度计数将L降序排列得到L_list。
2)创建原始FP- tree,并以“Null”为根节点。
3)创建项头表。为了方便遍历原始FP-tree,项头表中每一行表示一个频繁项,并且有对应指针指向它在FP- tree中的节点。
4) 遍历一次事务集合T,将T中所有事务的项次序根据L_list进行调整。为每个调整后项次序的事务创建一个事务分支。如果分支可以共享路径则共享,并且在各个节点上记录共享事务数目。
(2)在原始FP- tree上递归地找出所有的频繁项集。
1)赋后缀模式a的初始值为根节点Null,即a=Null。在FP- tree上采用递归的方法搜索频繁项集,如果FP- tree只有一个分支,那么分支路径上的节点的一个组合就是一个前缀模式b。剔除分支路径上的不满足最小支持度的节点,剩余的节点值所组成的任何集合b与后缀模式a取并,可获得所有对应的频繁项集。其中bi为一前缀模式,否则增长a,a=a∪{Ei}, 其中Ei为L_list中的最后一项,即支持度计数的最小项。然后构造后缀模式的条件模式基与条件FP- tree,其中a的条件模式基,指得是FP- tree中以Ei为叶子节点的所有分支。A的条件FP- tree,指得是以a的条件模式基为事务按照步骤1中的方式所创建的新的FP子树。
2)在条件FP- tree上采用相同方法递归地搜索频繁项集,后缀模式a此时为{Ei}。
3)对每个最大频繁项集,取其所有子集,其中每个子集为一频繁项集。
FpGrowth算法主要包括3个模块,FpGrowth模块体现了FpGrowth算法的流程,Insert模块主要完成生成FP- tree的功能,Search模块则完成获得条件模式基以方便下一层递归运算。
发明内容
本发明的目的是为了解决传统数据关联规则挖掘效率不高的问题,为此对经典FpGrowth算法的FP-tree的结构和挖掘过程进行了深入分析和研究,分析了FP-tree单路径和多路径的挖掘方法,提出了一个剪枝方法,可以减少部分分支的迭代次数。提高了FpGrowth算法对数据的处理能力和效率。
本发明实施例提供的一种数据关联规则挖掘FP-tree的剪枝方法,包括:
通过对FpGrowth算法的挖掘步骤研究,文中提出了一个剪枝方法。如果项集i在某一个路径上是非频繁的,又项集i在FP-tree中存在前缀路径集合A,B并且A⊂B,那么集合B就可以剪掉和短路径集合A合并。因为FP-tree的项集是按照项集的频度排列的,那么从树的结构上来说,频度是从根到叶子依次递减的,如果多路径的项集在某一个路径上的项是非频繁的,并且存在一个路径的前缀完全包含另外路径的项集前缀,那么长路径的项就可以剪掉和短路径合并,这样而来短路径就包含了长路径的频繁模式。
本发明提供的数据关联规则挖掘实现方法中,在对频繁模式树挖掘过程采用了剪枝策略,减少了数据挖掘的迭代次数,提高了处理效率。本发明可用于数据挖掘的关联规则提取中;适用于数据处理在商业、企业、政府部门及科学研究等领域中;也适用于其他需要提取数据的关联性的各种场合。
本发明的其他优点、目标,和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书,权利要求书,以及附图中所特别指出的结构来实现和获得。
附图说明
图1为表一数据集建立的FP-tree结构示意图。
图2为由图1建立的FP-tree进行剪枝的结构示意图。
图3为本发明实施提供的数据关联规则挖掘实现方法的步骤流程图。
具体实施方式
下面结合附图,对本发明实施例提供的数据关联规则挖掘实现方法及***进行详细阐述。
参见图1-2,为本发明实施例提供的剪枝方法,包括如下步骤:
如果项集i在某一个路径上是非频繁的,又项集i在FP-tree中存在前缀路径集合A,B并且A⊂B,那么集合B就可以剪掉和短路径集合A合并。
对于多路径的项集来说,有的项集存在某个路径上的支持度小于给定的阈值,因此可以采用上述的剪枝策略进行剪枝。剪枝后如果是单路径的就可以归为单路径的情况下去考虑。改进的方法相对于原始的算法来说在挖掘的过程中采用一个优化,这样可以减少项集挖掘的递归次数。
表1
下面用表1事务数据集D来说明剪枝方法的过程。假如最小支持度为2,在建立图1的FP-tree后,可以得到该FP-tree对应的Header Table的信息,通过用Header Table中节点链的信息,查找各个项的各个节点前缀路径。
从图1可以看出,I5项的一个前缀路径是A={I2,I1},I5项的另外一个前缀路径是B={I2,I1,I3},A是B的真子集,满足上面提出的剪枝方法,所以剪枝I5后的FP-tree如图2所示,这样I5就从原来的多路径变为单路径,直接进行频繁项的挖掘,减少了挖掘的递归次数。
参见图3,为本发明实施例提供的剪枝频繁模式树算法步骤流程图,包括如下步骤:
1)剪枝频繁模式树算法,在串行算法上表现了一定的优势。该算法总体分成四个步骤:步骤一是频繁1-项集的频率统计;步骤二是利用1-项集的频率统计结果建立一个频繁1-项集表,按照频繁1-项集表创建FP-tree;步骤三是判断FP-tree是否满足剪枝算法的要求,如果需要剪枝走剪枝策略,然后进行挖掘关联规则;步骤四汇总最后的频繁模式,即M1,M2,M3,M4。
11)M1阶段是使用频繁1-项集的频率统计。当输入原始数据之后,按照频率统计的结果按照设定的最小支持度进行筛选,把筛选的结果按照项集的频度从高到低的顺序存入频繁1-项集表中。
12)M2阶段是创建项头表,从上往下降序排列。
13)M3阶段是创建FP-tree,扫描FP-tree树的各个路径,是否有满足图2的场景,进行剪枝处理。
14)M4阶段是统计最后的频繁模式,关联规则的挖掘。
综上所述,本发明提供的数据关联规则挖掘实现方法中,提出了一个剪枝方法,并提出了剪枝频繁模式树算法,减少部分分支的迭代次数。本发明对传统的FpGrowth算法进行了优化,提高了挖掘效率,本发明可用于数据挖掘的关联规则提取中;适用于数据处理在商业、企业、政府部门及科学研究等领域中;也适用于其他需要提取数据的关联性的各种场合。
以上所述仅为本发明的优选实施例,并不用于限制本发明,显然,本领域的技术人员可以采用本发明中的剪枝频繁模式树算法进行优化,然后在商业、企业中对本发明进行应用,不脱离本发明的精神和范围。

Claims (2)

1.一种基于FpGrowth的剪枝策略挖掘算法,包括以下步骤:
(1)统计项集出现的频率,找出所有的频繁项集;
(2)对每个频繁项,构建它的条件模式基,然后构建它的条件FP-tree;
(3)对每个新创建的条件FP-tree重复上述过程;
(4)直至结果FP-tree为空,或者它仅包含一个单一路径,该路径将生成其所有的子路径的组合,每个组合都是一个频繁模式。
2.如权利要求1所述的基于FpGrowth的剪枝策略挖掘算法的改进算法,包括以下步骤:
分析FP-tree单路径和多路径的挖掘方法,提出一个改进的剪枝策略,改进的剪枝策略算法针对如下场景:对于多路径的项集挖掘过程中,如果存在某一个项集i在某一个路径上是非频繁的,有存在该项集i在FP-tree中存在前缀路径集合A,B并且满足A⊂B,那么集合B中的i就可以通过剪枝后短路径集合A合并,实现从多路径的频繁模式挖掘转化为单路径的频繁模式挖掘,提高算法的挖掘性能。
CN201810633316.2A 2018-06-20 2018-06-20 一种基于FpGrowth算法的剪枝策略 Pending CN108875015A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810633316.2A CN108875015A (zh) 2018-06-20 2018-06-20 一种基于FpGrowth算法的剪枝策略

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810633316.2A CN108875015A (zh) 2018-06-20 2018-06-20 一种基于FpGrowth算法的剪枝策略

Publications (1)

Publication Number Publication Date
CN108875015A true CN108875015A (zh) 2018-11-23

Family

ID=64339919

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810633316.2A Pending CN108875015A (zh) 2018-06-20 2018-06-20 一种基于FpGrowth算法的剪枝策略

Country Status (1)

Country Link
CN (1) CN108875015A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109376138A (zh) * 2018-11-29 2019-02-22 北京奇艺世纪科技有限公司 一种多维数据的异常组合检测方法及装置
CN109669967A (zh) * 2018-12-13 2019-04-23 深圳市信义科技有限公司 一种基于大数据技术的时空数据关联分析方法
CN113274033A (zh) * 2021-05-10 2021-08-20 燕山大学 基于脑肌电交叉频率耦合的运动功能监测管理方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109376138A (zh) * 2018-11-29 2019-02-22 北京奇艺世纪科技有限公司 一种多维数据的异常组合检测方法及装置
CN109669967A (zh) * 2018-12-13 2019-04-23 深圳市信义科技有限公司 一种基于大数据技术的时空数据关联分析方法
CN109669967B (zh) * 2018-12-13 2022-04-15 深圳市信义科技有限公司 一种基于大数据技术的时空数据关联分析方法
CN113274033A (zh) * 2021-05-10 2021-08-20 燕山大学 基于脑肌电交叉频率耦合的运动功能监测管理方法

Similar Documents

Publication Publication Date Title
US6665669B2 (en) Methods and system for mining frequent patterns
KR101079063B1 (ko) 점진적으로 증가하는 데이터를 처리하기 위한 빈발패턴 트리를 이용한 연관규칙 추출 장치 및 방법
CN108875015A (zh) 一种基于FpGrowth算法的剪枝策略
Chang et al. A novel incremental data mining algorithm based on fp-growth for big data
CN105260387B (zh) 一种面向海量事务数据库的关联规则分析方法
CN104778237A (zh) 一种基于关键用户的个性化推荐方法和***
CN105740387B (zh) 一种基于作者频繁模式的科技文献推荐方法
Apiletti et al. Pampa-HD: A parallel MapReduce-based frequent pattern miner for high-dimensional data
Dinari A survey on graph queries processing: techniques and methods
Prasad et al. Frequent pattern mining and current state of the art
George et al. DRL-Prefixspan: A novel pattern growth algorithm for discovering downturn, revision and launch (DRL) sequential patterns
Hahsler et al. Selective association rule generation
CN107133281B (zh) 一种基于分组的全局多查询优化方法
CN102955860B (zh) 基于模式图的关键字查询改进方法
CN111723122A (zh) 数据间关联规则的确定方法、装置、设备及可读存储介质
Tanna et al. Foundation for frequent pattern mining algorithms implementation
Vani Comparative analysis of association rule mining algorithms based on performance survey
KR101430064B1 (ko) 분류 코드를 제공하기 위한 시스템 및 방법
CN111107493B (zh) 一种移动用户位置预测方法与***
Wisaeng Association rule with frequent pattern growth algorithm for frequent item sets mining
Thakur et al. An improved progressive sampling based approach for association rule mining
CN111563782B (zh) 一种待推荐产品的确定方法和终端
KR101714985B1 (ko) 분산 병렬 데이터베이스의 중첩 질의 병렬성 검사 방법 및 장치
Tseng et al. A minimal perfect hashing scheme to mining association rules from frequently updated data
Yuan et al. Association Rule Mining Technique with Optimized FP-Tree Algorithm

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20181123

WD01 Invention patent application deemed withdrawn after publication