CN105589908A - 用于事务集合的关联规则计算方法 - Google Patents
用于事务集合的关联规则计算方法 Download PDFInfo
- Publication number
- CN105589908A CN105589908A CN201410845489.2A CN201410845489A CN105589908A CN 105589908 A CN105589908 A CN 105589908A CN 201410845489 A CN201410845489 A CN 201410845489A CN 105589908 A CN105589908 A CN 105589908A
- Authority
- CN
- China
- Prior art keywords
- affairs
- tree
- collection
- frequent
- matrix
- 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
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种用于事务集合的关联规则计算方法,包括如下步骤:遍历事务集合中各事务,以特征项生成频繁1项集,按各特征项出现的频次对频繁1项集进行排序;对频繁1项集进行哈希映射,以生成第二项集;以第二项集生成差值矩阵;针对事务集合中每一事务,按排序先后关系分别对该事务的特征项进行排序,以生成第二事务集;将第二事务集划分为多个数据集,并对每个数据集执行FP-tree生成算法,以生成与多个数据集一一对应的FP-tree子树;基于不同FP-tree子树中元素之间的对应关系,挖掘关联规则。其解决了因频繁项集过大而导致计算节点无法加载的问题,并克服了因FP-tree过大导致单个计算节点内存不足的缺陷。
Description
技术领域
本发明涉及数据挖掘技术领域,更具体地说,涉及一种用于事务集合的关联规则计算方法。
背景技术
对海量数据进行关联规则计算,通常会使用FP-growth算法,但如果事务集合中元素数量巨大,在计算过程中会碰到以下困难:
一、在生成频繁模式树(FrequentPatterntree,简称FP-tree)之前,中间过程数据(即频繁1-项集)过大而无法加载到任何一个计算节点上,导致各节点不能利用频繁-1项集的计算结果,以致后续计算无法继续进行;二、同样因数据量过大,理论上最终生成的FP-tree同样需要巨大的内存空间,这也是单个计算节点的内存无法满足的,导致结果无法输出。因此,本领域技术人员期望获得一种能够克服上述缺陷的用于事务集合的关联规则计算方法。
发明内容
本发明的目的在于提供一种适于对海量数据进行关联规则计算的方法。
为实现上述目的,本发明提供一种技术方案如下:
一种用于事务集合的关联规则计算方法,其中,事务集合包括多条事务,每一事务包括多个特征项,该方法包括如下步骤:a)、遍历事务集合中各事务,以特征项生成频繁1项集,按各特征项出现的频次对频繁1项集进行排序;b)、对频繁1项集进行哈希映射,以生成第二项集;c)、以第二项集生成差值矩阵;其中,差值矩阵指示第一项集中各特征项之间的排序先后关系;d)、针对事务集合中每一事务,按排序先后关系分别对该事务的特征项进行排序,以生成第二事务集;e)、将第二事务集划分为多个数据集,并对每个数据集执行FP-tree生成算法,以生成与多个数据集一一对应的FP-tree子树;f)、基于不同FP-tree子树中元素之间的对应关系,挖掘关联规则。
优选地,步骤a)中还包括:从频繁1项集中删除支持度低于支持度阈值的特征项。
优选地,步骤c)还包括:在生成差值矩阵后,对差值矩阵进行压缩;其中,差值矩阵为反对称矩阵。
优选地,步骤f)具体包括:f1)、遍历各FP-tree子树,若两个不同FP-tree子树的子项头表中存在相同的元素,则在该两个不同FP-tree子树的子项头表之间建立索引指向;f2)、重复步骤f1),直到遍历完成所有FP-tree子树。
优选地,该方法在分布式系统上实现。
本发明提供的用于事务集合的关联规则计算方法,适于对海量数据进行关联规则计算。其利用哈希变换和差值矩阵,并对矩阵进行压缩,使得特征项之间的排序关系可加载到各计算节点上,有效解决了因频繁项集过大而导致计算节点无法加载的问题;同时,上述方法以原始事务集构建了多个FP-tree子树,有效克服了因FP-tree过大导致单个计算节点内存不足的缺陷。此外,本发明借助差值矩阵对事务集进行排序,以及在分布式系统上实现,还显著提升了数据挖掘的速度;执行该计算方法的分布式系统运行稳定、效率明显提高。
附图说明
图1示出本发明一实施例提供的用于事务集合的关联规则计算方法的流程示意图。
图2示出根据本发明一实施例的FP-tree子树的项头表索引。
具体实施方式
需要说明的是,根据本发明各实施例,事务集合包括多条事务,每一事务包括多个特征项。不同事务间可能具有相同的特征项,也可能具有互不相同的特征项。
本文所指的“事务集合”包括但不限于银行卡交易记录数据库,其中包含多条交易记录(其对应于“事务”),每一交易记录包含多个交易特征(其对应于“特征项”)。
如图1所示,本发明一实施例提供一种用于事务集合的关联规则计算方法,其包括如下步骤:
步骤S10、遍历事务集合中各事务,以特征项生成频繁1项集,按各特征项出现的频次对频繁1项集进行排序。
具体地,频繁1项集以本文所指的“特征项”为其元素。频繁1项集中每一特征项(即其元素)对应的值是该特征项在事务集合中各事务中总计出现的频次。在生成初始的频繁1项集之后,依据特征项出现的频次对频繁1项集进行降序排序。
进一步地,在上述降序排序之后,从频繁1项集中删除支持度低于支持度阈值的特征项,使频繁1项集中元素数量减少,以加快后续算法步骤的执行效率。其中,支持度阈值可由用户根据提取关联规则的实际需求确定。
步骤S11、对频繁1项集进行哈希映射,以生成第二项集。
该步骤可使用线性探测再散列的方法进行哈希映射,以避免不同的频繁1项集元素映射到相同位置上。哈希映射后的结果形成第二项集。
步骤S12、以第二项集生成差值矩阵。
该步骤S12中,基于第二项集生成差值矩阵,差值矩阵指示第一项集中各特征项之间的排序先后关系;例如,差值矩阵中元素采用如下定义:
设排好序的频繁1项集包括元素序列<a,b,c,d>,经哈希变换后的第二项集包括元素序列<1,2,3,4>,则经该步骤S12之后,对应的差值矩阵为:
可见,差值矩阵为斜对称矩阵,更具体地,其为反对称矩阵,即针对任一元素,其关于对角线对称的元素为该元素的相反值。
作为反对称矩阵,该差值矩阵存在较多的信息冗余,从而可对该差值矩阵进行压缩,例如,只保留矩阵右上角的数据,这样压缩过后的差值矩阵数据可以很方便地加载到每个计算节点上,以便执行后续算法步骤。
步骤S13、针对事务集合中每一事务,按排序先后关系分别对该事务的特征项进行排序,以生成第二事务集。
具体地,该步骤基于步骤S12中获得的差值矩阵,针对原始事务集合中每一事务,按差值矩阵所指示的各特征项之间的排序先后关系,分别对该事务的特征项进行降序排序。若原始事务集合中存在n条事务,则该步骤中执行n次降序排序,该n次排序执行完成后得到第二事务集。
因排序是基于步骤S12中获得的差值矩阵进行的,排序的时间复杂度大大降低。
第二事务集可视为对原始事务集合中各事务的数据重组的结果;可以理解,第二事务集与原始事务集合具有相同的事务数。
步骤S14、将第二事务集划分为多个数据集,并对每个数据集执行FP-tree生成算法,以生成与多个数据集一一对应的FP-tree子树。
该步骤中,将第二事务集划分为多个数据集可由实现本算法的分布式系统实现,也可按用户事先定义的规则对第二数据集进行划分。其中,每个数据集可包括多条完整的事务。
划分形成的多个数据集可分配到不同的计算单元上,各计算单元并行地对各数据集进行后续的FP-tree生成算法,从而提高数据运算速度。
FP-tree存储了用于挖掘频繁项集的全部信息,而又高度压缩。其特别适用于对海量数据进行数据挖掘,其生成算法可采用现有技术所提供的各种算法。
步骤S15、基于不同FP-tree子树中元素之间的对应关系,挖掘关联规则。
该步骤具体包括如下两个分步骤:f1)、遍历各FP-tree子树,若两个不同FP-tree子树的子项头表中存在相同的元素,则在该两个不同FP-tree子树的子项头表之间建立索引指向;f2)、重复步骤f1),直到遍历完成所有FP-tree子树。
如图2所示,子FP-tree1包括元素D,其频次为5,其对应于项头表1;子FP-tree2也包括相同元素D,其频次为6,其对应于项头表2,则在项头表1与项头表2之间建立相应的索引指向。在遍历完成所有FP-tree子树之后,得到的各索引指向共同组成了本文所述的关联规则。
上述关联规则计算方法在分布式系统上实现。例如,其优选地采用Hadoop分布式系统。
本领域技术人员理解,Hadoop实现了一个分布式文件系统,其具有高容错性的特点,并且设计用来部署在低廉的硬件上;它提供高吞吐量来访问应用程序的数据,尤其适合那些有着超大数据集的应用程序。
本发明提供的用于事务集合的关联规则计算方法,利用哈希变换和差值矩阵,并对矩阵进行压缩,使得特征项之间的排序关系可加载到各计算节点上,有效解决了因频繁项集过大而导致计算节点无法加载的问题。同时,上述方法以原始事务集合生成多个FP-tree子树,有效克服了因FP-tree过大导致单个计算节点内存不足的缺陷。
其次,本发明借助差值矩阵对事务集进行排序,以及在分布式系统上实现,还可显著提升数据挖掘的速度。再次,执行该计算方法的分布式系统运行稳定、效率明显提高。
上述说明仅针对于本发明的优选实施例,并不在于限制本发明的保护范围。基于本发明的思想,本领域技术人员可作出各种变形设计,而不脱离本发明的思想及附随的权利要求。
Claims (8)
1.一种用于事务集合的关联规则计算方法,其中,所述事务集合包括多条事务,每一所述事务包括多个特征项,所述方法包括如下步骤:
a)、遍历所述事务集合中各所述事务,以所述特征项生成频繁1项集,按各所述特征项出现的频次对所述频繁1项集进行排序;
b)、对所述频繁1项集进行哈希映射,以生成第二项集;
c)、以所述第二项集生成差值矩阵;其中,所述差值矩阵指示所述第一项集中各所述特征项之间的排序先后关系;
d)、针对所述事务集合中每一所述事务,按所述排序先后关系分别对该事务的所述特征项进行排序,以生成第二事务集;
e)、将所述第二事务集划分为多个数据集,并对每个所述数据集执行FP-tree生成算法,以生成与所述多个数据集一一对应的FP-tree子树;
f)、基于不同所述FP-tree子树中元素之间的对应关系,挖掘所述关联规则。
2.根据权利要求1所述的方法,其特征在于,所述步骤a)中还包括:
从所述频繁1项集中删除支持度低于支持度阈值的所述特征项。
3.根据权利要求1所述的方法,其特征在于,所述步骤b)中具体包括:
使用线性探测再散列的方法进行所述哈希映射。
4.根据权利要求1所述的方法,其特征在于,所述步骤c)还包括:在生成所述差值矩阵后,对所述差值矩阵进行压缩;其中,所述差值矩阵为反对称矩阵。
5.根据权利要求1所述的方法,其特征在于,所述步骤d)中进行的排序为降序排序。
6.根据权利要求1所述的方法,其特征在于,所述步骤f)具体包括:
f1)、遍历各所述FP-tree子树,若两个不同所述FP-tree子树的子项头表中存在相同的元素,则在该两个不同所述FP-tree子树的子项头表之间建立索引指向;
f2)、重复所述步骤f1),直到遍历完成所有所述FP-tree子树。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法在分布式系统上实现。
8.根据权利要求7所述的方法,其特征在于,所述分布式系统为Hadoop分布式系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410845489.2A CN105589908A (zh) | 2014-12-31 | 2014-12-31 | 用于事务集合的关联规则计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410845489.2A CN105589908A (zh) | 2014-12-31 | 2014-12-31 | 用于事务集合的关联规则计算方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105589908A true CN105589908A (zh) | 2016-05-18 |
Family
ID=55929490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410845489.2A Pending CN105589908A (zh) | 2014-12-31 | 2014-12-31 | 用于事务集合的关联规则计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105589908A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106327323A (zh) * | 2016-08-19 | 2017-01-11 | 清华大学 | 银行频繁项模式挖掘方法及挖掘系统 |
WO2017201920A1 (zh) * | 2016-05-27 | 2017-11-30 | 西华大学 | 基于项目子集事例树的极小非约简关联规则挖掘方法 |
CN108022057A (zh) * | 2017-12-29 | 2018-05-11 | 科大讯飞股份有限公司 | 学习行为分析方法及系统 |
CN110136008A (zh) * | 2019-04-15 | 2019-08-16 | 深圳壹账通智能科技有限公司 | 利用大数据的产品数据推送方法、装置、设备和存储介质 |
CN111352954A (zh) * | 2020-02-20 | 2020-06-30 | 中国科学院自动化研究所 | 低资源条件下的关联规则挖掘方法、系统、装置 |
CN110297853B (zh) * | 2019-07-01 | 2023-11-14 | 创新先进技术有限公司 | 频繁集挖掘方法和装置 |
CN117474013A (zh) * | 2023-12-27 | 2024-01-30 | 卓世科技(海南)有限公司 | 一种大语言模型知识增强方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103258049A (zh) * | 2013-05-27 | 2013-08-21 | 重庆邮电大学 | 一种基于海量数据的关联规则挖掘方法 |
-
2014
- 2014-12-31 CN CN201410845489.2A patent/CN105589908A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103258049A (zh) * | 2013-05-27 | 2013-08-21 | 重庆邮电大学 | 一种基于海量数据的关联规则挖掘方法 |
Non-Patent Citations (3)
Title |
---|
SHEN XUE-LI ETAL.: "Association rules parallel algorithm based on FP-tree", 《2010 2ND INTERNATIONAL CONFERENCE ON COMPUTER ENGINEERING AND TECHNOLOGY》 * |
唐辉: "关联挖掘技术在商品销售中的应用研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
邓丰义等: "基于模式矩阵的FP-growth改进算法", 《厦门大学学报(自然科学版)》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017201920A1 (zh) * | 2016-05-27 | 2017-11-30 | 西华大学 | 基于项目子集事例树的极小非约简关联规则挖掘方法 |
GB2568558A (en) * | 2016-05-27 | 2019-05-22 | Univ Xihua | Minimum non-reduction association rule mining method based on item subset example tree |
CN106327323A (zh) * | 2016-08-19 | 2017-01-11 | 清华大学 | 银行频繁项模式挖掘方法及挖掘系统 |
CN108022057A (zh) * | 2017-12-29 | 2018-05-11 | 科大讯飞股份有限公司 | 学习行为分析方法及系统 |
CN110136008A (zh) * | 2019-04-15 | 2019-08-16 | 深圳壹账通智能科技有限公司 | 利用大数据的产品数据推送方法、装置、设备和存储介质 |
CN110297853B (zh) * | 2019-07-01 | 2023-11-14 | 创新先进技术有限公司 | 频繁集挖掘方法和装置 |
CN111352954A (zh) * | 2020-02-20 | 2020-06-30 | 中国科学院自动化研究所 | 低资源条件下的关联规则挖掘方法、系统、装置 |
CN117474013A (zh) * | 2023-12-27 | 2024-01-30 | 卓世科技(海南)有限公司 | 一种大语言模型知识增强方法及系统 |
CN117474013B (zh) * | 2023-12-27 | 2024-03-22 | 卓世科技(海南)有限公司 | 一种大语言模型知识增强方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105589908A (zh) | 用于事务集合的关联规则计算方法 | |
US9405790B2 (en) | System, method and data structure for fast loading, storing and access to huge data sets in real time | |
US10346432B2 (en) | Compaction policy | |
US10831747B2 (en) | Multi stage aggregation using digest order after a first stage of aggregation | |
Kiveris et al. | Connected components in mapreduce and beyond | |
US9507875B2 (en) | Symbolic hyper-graph database | |
US9361343B2 (en) | Method for parallel mining of temporal relations in large event file | |
US9325344B2 (en) | Encoding data stored in a column-oriented manner | |
WO2015106711A1 (zh) | 一种为半结构化数据构建NoSQL数据库索引的方法及装置 | |
CN104881466B (zh) | 数据分片的处理以及垃圾文件的删除方法和装置 | |
US9619501B2 (en) | Index scan device and index scan method | |
US20180150536A1 (en) | Instance-based distributed data recovery method and apparatus | |
JP5959592B2 (ja) | データベース管理方法、プログラム及び該管理システム、並びにデータベースのツリー構造 | |
CN103440246A (zh) | 用于MapReduce的中间结果数据排序方法及系统 | |
CN103207889A (zh) | 一种基于Hadoop的海量人脸图像的检索方法 | |
Kolb et al. | Iterative computation of connected graph components with MapReduce | |
CN103064991A (zh) | 一种海量数据聚类方法 | |
CN108170799A (zh) | 一种海量数据的频繁序列挖掘方法 | |
US9875292B2 (en) | Method of synchronizing data within database clusters | |
CN105302915A (zh) | 基于内存计算的高性能数据处理系统 | |
CN104346347A (zh) | 数据存储方法、装置、服务器及系统 | |
JP2017073093A (ja) | インデックス生成プログラム、インデックス生成装置、インデックス生成方法、検索プログラム、検索装置および検索方法 | |
Shibla et al. | Improving efficiency of DBSCAN by parallelizing kd-tree using spark | |
Yin et al. | Content-based image retrial based on Hadoop | |
CN103761298A (zh) | 一种基于分布式架构的实体匹配方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160518 |
|
RJ01 | Rejection of invention patent application after publication |