CN106294617A - 一种高效挖掘关联规则中频繁项集的方法 - Google Patents
一种高效挖掘关联规则中频繁项集的方法 Download PDFInfo
- Publication number
- CN106294617A CN106294617A CN201610621635.2A CN201610621635A CN106294617A CN 106294617 A CN106294617 A CN 106294617A CN 201610621635 A CN201610621635 A CN 201610621635A CN 106294617 A CN106294617 A CN 106294617A
- Authority
- CN
- China
- Prior art keywords
- collection
- matrix
- item
- candidate
- item collection
- 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
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000005065 mining Methods 0.000 title claims abstract description 10
- 239000011159 matrix material Substances 0.000 claims abstract description 46
- 230000000750 progressive effect Effects 0.000 claims description 4
- 238000013138 pruning Methods 0.000 abstract description 8
- 238000007418 data mining Methods 0.000 abstract description 3
- 238000012098 association analyses Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000009412 basement excavation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种高效挖掘关联规则中频繁项集的方法,属于数据挖掘技术领域,本发明通过支持度矩阵表示数据库中所有一项集和二项集的支持度,减轻内存负担,减少扫描数据库次数,通过生成二项集支持度矩阵避免了产生无效的二项集,解决了二项集瓶颈的问题。同时利用矩阵的优势对连接和剪枝步做了改进,提高了挖掘频繁项的效率。
Description
技术领域
本发明涉及数据挖掘技术,尤其涉及一种高效挖掘关联规则中频繁项集的方法。
背景技术
随着计算机的普及应用和计算机网络的飞速发展,在过去若干年里,无论是商业企业、科研机构或者政府部门,各个领域都积累了海量的并以不同形式存储的数据。面对如此多的数据,人们不再满足于日常的事务处理,而是更加关注能否从形式不同的,分散的,纷繁复杂的数据环境中得到有用的决策信息,从而可以做出正确的分析和决策,广泛的应用到商业、网络安全等领域。
关联分析是数据挖掘的一项重要研究内容。其主要任务是从事务数据库中获取频繁项,然后再由这些频繁项生成相应的关联规则。用以发现隐藏在大量数据中的有价值信息。如今,关联分析在商业、电信、农业、医学、教育、金融等领域有着广泛的应用。Apriori方法是关联分析的一个最为经典的方法,该方法首先通过最小支持度来获取事务数据库中所有的频繁项,然后再通过最小置信度来挖掘出关联规则。其中,频繁项的获取是关联规则挖掘中的关键,其计算复杂度决定了整个挖掘方法的时间复杂度,在Apriori方法中,这个过程需要频繁的扫描数据库,因此耗费了大量的时间。
发明内容
为了解决以上问题,本发明提出了一种高效挖掘关联规则中频繁项集的方法。
一种高效挖掘关联规则中频繁项集的方法:
(1)扫描数据库,构造二项集的支持度矩阵。分别以项目集合I中的各个项作为矩阵的行标和列标,用Iik表示项二项集{Ii,Ik}(i≤k)在事务数据库D中出现的次数,此矩阵为对称矩阵,构造的二项集支持度矩阵M如图1所示:
图1二项集支持度矩阵
通过扫描数据库,若扫描到一条事务中包含{Ii,Ik}项,则对位于矩阵坐标[i,k],[i,i],[k,k]中的元素计数分别加1。
(2)逐行扫描矩阵,找出该行中不小于最小支持度计数的元素Iij,到j行搜索该行中不小于最小支持度计数的元素Ijk,再定位到矩阵Iik中,若Iik不小于最小支持度计数,则连接生成候选三项集{Ii,Ij,Ik}。方法如下:
输入:上三角矩阵M,最小支持度计数min_supcount
输出:候选三项集表C3
方法:
(3)由Ck生成候选k+1项集表Ck+1(k≥3),由于生成的候选k项集表Ck是按字典顺序排列的。对于每个候选k项集X,从X在Ck之后的位置中查找以X后k-1个项开始的其他候选k项集,若找到这样一个候选k项集Y,则把X的第一个项Ir和Y的最后一个项Is的标号连接形成矩阵坐标[r,s],到矩阵M中查找这个坐标上的值是否大于最小支持度计数,如果大于或等于,则生成候选k+1项集,如果不大于,则不予连接,继续查找下一个,直到Ck中的最后一个k项集。至此候选k+1项集表构造结束。
(4)第二次扫描数据库,因在生成支持度矩阵时,已经产生了频繁二项集,所以这里只对生成的候选k项集表Ck(k≥3)中的每个k项集进行计数。并对其进行筛选,最后形成频繁k项集。
本发明的有益效果是
本发明通过支持度矩阵表示数据库中所有一项集和二项集的支持度,在一定程度上可以减轻内存负担,减少扫描数据库次数,通过生成二项集支持度矩阵避免了产生无效的二项集,解决了二项集瓶颈的问题。同时利用矩阵的优势对连接和剪枝步做了改进,提高了挖掘频繁项的效率。
附图说明
图1是二项集支持度矩阵M示意图。
具体实施方式
下面对本发明的内容进行更加详细的阐述:
设有一个事务数据库D={T1,T2,T3,T4,……,Tn},项目集合I={I1,I2,I3,I4……,Im},它是事务数据库D中出现的所有数据项的集合。其中包含k个数据项的项集称为k项集。k项集X在事务数据库D中的百分比称为X的支持度。如果此支持度大于或等于用户设定的最小阈值(此阈值即为最小支持度),则称X为频繁k项集。
Apriori方法:
(1)首先扫描数据库,生成频繁一项集,构建频繁一项集表L1。
(2)由L1中的频繁一项集相互连接生成候选二项集,生成候选二项集表C2。
(3)第二次扫描数据库,对C2中的二项集进行计数,找出其中大于最小支持度的二项集,生成频繁二项集表L2。
(4)由L2中的频繁二项集连接生产三项集,并根据性质:一个非频繁项的所有的超集都是非频繁的。对这些生成的三项集进行剪枝:如果生成的某三项集中只要有一个子集不在L2中,那么就把此三项集删除,最后由未经删除的三项集组成候选三项集表C3。
(5)第三次扫描数据库,对C3中的三项集进行计数,找出大于最小支持度的三项集,生成频繁三项集表L3。这样依次由频繁k项集表生成频繁k+1项集表,直至不能生成更高维的频繁项集为止。
Apriori方法的有以下几个缺点:
①需要频繁的扫描数据库,这对我们经常遇到的海量数据库以及平均事务宽度很长的数据库来说,这个I/O开销是非常大的。
②生成了大量的候选二项集,产生了二项集瓶颈问题,其中有许多是无效的二项集。这样不但占用了较多的空间,而且增加了步骤(3)的工作量。
③在生成的每一个候选三项集时的连接和剪枝阶段都要多次对L2进行扫描,且搜索空间较大,效率较低。
一种高效挖掘关联规则中频繁项集的方法--Apriori-M方法:
(1)扫描数据库,构造二项集的支持度矩阵。分别以项目集合I中的各个项作为矩阵的行标和列标,用Iik表示项二项集{Ii,Ik}(i≤k)在事务数据库D中出现的次数,此矩阵为对称矩阵,构造的二项集支持度矩阵M如图1所示:
通过扫描数据库,若扫描到一条事务中包含{Ii,Ik}项,则对位于矩阵坐标[i,k],[i,i],[k,k]中的元素计数分别加1。
(2)逐行扫描矩阵,找出该行中不小于最小支持度计数的元素Iij,到j行搜索该行中不小于最小支持度计数的元素Ijk,再定位到矩阵Iik中,若Iik不小于最小支持度计数,则连接生成候选三项集{Ii,Ij,Ik}。如下:
输入:上三角矩阵M,最小支持度计数min_supcount
输出:候选三项集表C3
方法:
(3)由Ck生成候选k+1项集表Ck+1(k≥3),由于生成的候选k项集表Ck是按字典顺序排列的。对于每个候选k项集X,从X在Ck之后的位置中查找以X后k-1个项开始的其他候选k项集,若找到这样一个候选k项集Y,则把X的第一个项Ir和Y的最后一个项Is的标号连接形成矩阵坐标[r,s],到矩阵M中查找这个坐标上的值是否大于最小支持度计数,如果大于或等于,则生成候选k+1项集,如果不大于,则不予连接,继续查找下一个,直到Ck中的最后一个k项集。至此候选k+1项集表构造结束。
(4)第二次扫描数据库,因在生成支持度矩阵时,已经产生了频繁二项集,所以这里只对生成的候选k项集表Ck(k≥3)中的每个k项集进行计数。并对其进行筛选,最后形成频繁k项集。值得注意的是有许多改进方法对生成的对角矩阵进行深度遍历,这样能更好的提高获取最高维频繁项的连接效率,但是却不能及时的进行剪枝,极有可能会造成许多连接的浪费,此外,它实际上只生成了候选频繁项集表,但并没有对数据库进行第二次扫描,对其中的候选项集进行验证,这样就很有可能将非频繁k项集划为频繁k项集,如考虑由表1所示的数据库D1这种情况:
表1数据库D1
设最小支持度计数是2,则会有频繁二项集{a,b}{b,c}{a,c},按照此方法的做法,会生成频繁三项集{a,b,c}。但是三项集{a,b,c}并不在数据库中。所以应该对数据库进行第二次扫描,以避免这种错误。
通过实验结果可以看出:无论是在不同的数据规模上还是在不同的最小支持度的情况下Apriori-M的在时间上的耗费比Apriori要小,而且随着数据库的增大,这种优势会更加明显,因而更加适合大型数据库关联规则的挖掘。通过对本发明提出的Apriori-M方法分析,我们可以看出:
第一,该发明减少了对数据库的扫描次数,当频繁项的最高维数是k时,Apriori方法需要扫描k次数据库才能挖掘出所有的频繁项,而本方法,在保证不会错误的获取k项集时,仅需扫描数据库两次,就能挖掘出所有的频繁项集,减少了I/O花销。
第二,充分利用矩阵的性质,进行连接时,只到特定的行中搜索频繁二项集,搜索空间要远比在Lk小,而且由于这是一个上三角矩阵,随着连接过程的深入,所要搜索的空间会越来越小。因此可以比Apriori方法中的连接步节省更多的时间,进行剪枝时,则只需定位到矩阵特定的坐标中,根据其元素的值来决定是否剪枝,大大提高了剪枝效率。
Claims (3)
1.一种高效挖掘关联规则中频繁项集的方法,其特征在于,
(1)扫描数据库,构造二项集的支持度矩阵;分别以项目集合I中的各个项作为矩阵的行标和列标,用Iik表示项二项集{Ii,Ik}(i≤k)在事务数据库D中出现的次数,此矩阵为对称矩阵;
(2)逐行扫描矩阵,找出该行中不小于最小支持度计数的元素Iij,到j行搜索该行中不小于最小支持度计数的元素Ijk,再定位到矩阵Iik中,若Iik不小于最小支持度计数,则连接生成候选三项集{Ii,Ij,Ik};
(3)由Ck生成候选k+1项集表Ck+1(k≥3),由于生成的候选k项集表Ck是按字典顺序排列的,对于每个候选k项集X,从X在Ck之后的位置中查找以X后k-1个项开始的其他候选k项集,若找到这样一个候选k项集Y,则把X的第一个项Ir和Y的最后一个项Is的标号连接形成矩阵坐标[r,s],到矩阵M中查找这个坐标上的值是否大于最小支持度计数,如果大于或等于,则生成候选k+1项集,如果不大于,则不予连接,继续查找下一个,直到Ck中的最后一个k项集,至此候选k+1项集表构造结束;
(4)第二次扫描数据库,因在生成支持度矩阵时,已经产生了频繁二项集,所以这里只对生成的候选k项集表Ck(k≥3) 中的每个k项集进行计数,并对其进行筛选,最后形成频繁k项集。
2.根据权利要求1所述的方法,其特征在于,
通过第一次扫描数据库,若扫描到一条事务中包含{Ii,Ik}项,则对位于矩阵坐标[i,k],[i,i],[k,k]中的元素计数分别加1。
3.根据权利要求1所述的方法,其特征在于,
逐行扫描矩阵方法如下:
输入:上三角矩阵M,最小支持度计数min_supcount
输出:候选三项集表C3
方法:
C3= Ø
For(int i=0,i<m,i++)
If M[i][i]≥min_supcount
For (int j=i+1,j<m,j++)
If M[i][j]≥min_supcount{
For (int k=j+1,k<m,k++)
If M[i][k] ≥min_supcount
{Ii,Ij,Ik}包含于C3
return C3。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610621635.2A CN106294617A (zh) | 2016-07-29 | 2016-07-29 | 一种高效挖掘关联规则中频繁项集的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610621635.2A CN106294617A (zh) | 2016-07-29 | 2016-07-29 | 一种高效挖掘关联规则中频繁项集的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106294617A true CN106294617A (zh) | 2017-01-04 |
Family
ID=57663939
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610621635.2A Pending CN106294617A (zh) | 2016-07-29 | 2016-07-29 | 一种高效挖掘关联规则中频繁项集的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106294617A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106991141A (zh) * | 2017-03-21 | 2017-07-28 | 北京邮电大学 | 一种基于深度剪枝策略的关联规则挖掘方法 |
CN107066587A (zh) * | 2017-04-17 | 2017-08-18 | 贵州大学 | 一种基于组链表的高效频繁项集挖掘方法 |
CN107908776A (zh) * | 2017-11-30 | 2018-04-13 | 国网浙江省电力公司经济技术研究院 | 基于事务‑项目关联矩阵的频繁模式网络挖掘算法及系统 |
CN110992109A (zh) * | 2019-12-16 | 2020-04-10 | 重庆锐云科技有限公司 | 基于关联规则的房地产客户分析方法、装置及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102968375A (zh) * | 2012-11-30 | 2013-03-13 | 中国矿业大学 | 基于关联规则挖掘的不可达路径检测方法 |
CN103341506A (zh) * | 2013-07-10 | 2013-10-09 | 鞍钢股份有限公司 | 一种基于数据模式的板形时间序列数据挖掘方法 |
CN103514267A (zh) * | 2013-09-04 | 2014-01-15 | 快传(上海)广告有限公司 | 一种网络关联信息获取方法和系统 |
CN104573080A (zh) * | 2015-01-27 | 2015-04-29 | 南京信息职业技术学院 | 一种基于事务二进制的约束频繁项集挖掘方法 |
CN105183785A (zh) * | 2015-08-17 | 2015-12-23 | 上海斐讯数据通信技术有限公司 | 一种保护原交易数据集关联规则的数据挖掘方法及系统 |
CN105279184A (zh) * | 2014-07-16 | 2016-01-27 | 鞍钢股份有限公司 | 一种基于总量控制的频繁项集数据挖掘方法 |
CN105320756A (zh) * | 2015-10-15 | 2016-02-10 | 江苏省邮电规划设计院有限责任公司 | 一种基于改进Apriori算法的数据库关联规则挖掘方法 |
-
2016
- 2016-07-29 CN CN201610621635.2A patent/CN106294617A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102968375A (zh) * | 2012-11-30 | 2013-03-13 | 中国矿业大学 | 基于关联规则挖掘的不可达路径检测方法 |
CN103341506A (zh) * | 2013-07-10 | 2013-10-09 | 鞍钢股份有限公司 | 一种基于数据模式的板形时间序列数据挖掘方法 |
CN103514267A (zh) * | 2013-09-04 | 2014-01-15 | 快传(上海)广告有限公司 | 一种网络关联信息获取方法和系统 |
CN105279184A (zh) * | 2014-07-16 | 2016-01-27 | 鞍钢股份有限公司 | 一种基于总量控制的频繁项集数据挖掘方法 |
CN104573080A (zh) * | 2015-01-27 | 2015-04-29 | 南京信息职业技术学院 | 一种基于事务二进制的约束频繁项集挖掘方法 |
CN105183785A (zh) * | 2015-08-17 | 2015-12-23 | 上海斐讯数据通信技术有限公司 | 一种保护原交易数据集关联规则的数据挖掘方法及系统 |
CN105320756A (zh) * | 2015-10-15 | 2016-02-10 | 江苏省邮电规划设计院有限责任公司 | 一种基于改进Apriori算法的数据库关联规则挖掘方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106991141A (zh) * | 2017-03-21 | 2017-07-28 | 北京邮电大学 | 一种基于深度剪枝策略的关联规则挖掘方法 |
CN106991141B (zh) * | 2017-03-21 | 2020-12-11 | 北京邮电大学 | 一种基于深度剪枝策略的关联规则挖掘方法 |
CN107066587A (zh) * | 2017-04-17 | 2017-08-18 | 贵州大学 | 一种基于组链表的高效频繁项集挖掘方法 |
CN107908776A (zh) * | 2017-11-30 | 2018-04-13 | 国网浙江省电力公司经济技术研究院 | 基于事务‑项目关联矩阵的频繁模式网络挖掘算法及系统 |
CN110992109A (zh) * | 2019-12-16 | 2020-04-10 | 重庆锐云科技有限公司 | 基于关联规则的房地产客户分析方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Akoglu et al. | Fast and reliable anomaly detection in categorical data | |
Karthikeyan et al. | A survey on association rule mining | |
Zhang et al. | Bed-tree: an all-purpose index structure for string similarity search based on edit distance | |
CN109359172B (zh) | 一种基于图划分的实体对齐优化方法 | |
CN101655857B (zh) | 基于关联规则挖掘技术挖掘建设法规领域数据的方法 | |
CN106294617A (zh) | 一种高效挖掘关联规则中频繁项集的方法 | |
CN103927398A (zh) | 基于最大频繁项集挖掘的微博炒作群体发现方法 | |
Ahmed et al. | Mining interesting patterns from uncertain databases | |
CN109918418A (zh) | 一种基于遗传算法的关联规则的改进挖掘方法 | |
Enders et al. | A citation-based map of concepts in invasion biology | |
Mohamed et al. | Efficient mining frequent itemsets algorithms | |
Aseervatham et al. | bitSPADE: A lattice-based sequential pattern mining algorithm using bitmap representation | |
CN102243631A (zh) | 超关键字分布式搜索方法 | |
Skaria et al. | Literature Review on Web Mining | |
CN107480199B (zh) | 数据库的查询重构方法、装置、设备及存储介质 | |
Tohidi et al. | A Frequent Pattern Mining Algorithm Based on FP-growth without Generating Tree | |
Rajeswari et al. | Mining Association Rules Using Hash Table | |
de Carvalho et al. | Discovering frequent itemsets on uncertain data: a systematic review | |
Chee et al. | FP-NoSQL: An Efficient Frequent Itemset Mining Algorithm Using the FP-DB Approach | |
Sharma et al. | Review Of Data Mining Techniques: An Empirical Study | |
Li et al. | An Improved Apriori Algorithm Applied to Mining Ancient Chinese Poems | |
Sinthuja et al. | Frequent Itemset Mining Using LP-Growth Algorithm Based on Multiple Minimum Support Threshold Value (Multiple Item Support Frequent Pattern Growth) | |
Nimmagadda et al. | The North West Shelf (NWS), a Digital Petroleum Ecosystem (PDE) in a Big Data Scale | |
Giri et al. | Frequent pattern mining algorithms analysis | |
CN107562854B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170104 |