CN105912660A - 一种面向大规模数据的关联规则树挖掘方法 - Google Patents
一种面向大规模数据的关联规则树挖掘方法 Download PDFInfo
- Publication number
- CN105912660A CN105912660A CN201610221837.8A CN201610221837A CN105912660A CN 105912660 A CN105912660 A CN 105912660A CN 201610221837 A CN201610221837 A CN 201610221837A CN 105912660 A CN105912660 A CN 105912660A
- Authority
- CN
- China
- Prior art keywords
- attribute
- candidate
- data
- item set
- support
- 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
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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
Abstract
本发明涉及一种面向大规模数据的关联规则树挖掘方法,包括以下步骤:S1.对原始数据进行预处理,将原始数据的数据结构处理为便于遍历的数据结构;S2.遍历每项数据,将每项数据包含的属性名、属性名的值名及其支持度缓存起来,生成1‑候选项集C1;S3.由1‑候选项集C1生成1‑频繁项集L1;S4.由k‑频繁项集Lk生成k+1‑候选项集Ck+1;S5.由k+1‑候选项集Ck+1生成k+1‑频繁项集Lk+1;S6.重复执行步骤S4~S5直至不能生成新的k+1‑频繁项集Lk+1;S7.将步骤S6获得的所有的频繁项集用于生成规则;S8.过滤出能被规则分类的数据,不能被规则分类的数据重复执行步骤S1~步骤S7,直至没有规则生成。
Description
技术领域
本发明涉及计算机及数据挖掘领域,更具体地,涉及一种面向大规模数据的关联规则树挖掘方法。
背景技术
目前,随着以大数据、云计算为核心的互联网技术的迅速发展,作为大数据核心技术的数据分析技术正在吸引越来越多的研究和关注。关联规则树挖掘这种结合关联规则挖掘和决策树生成的算法吸引了大量的注意,而对于挖掘算法来说,面对庞大的数据时,保持高准确率的同时尽可能地提高算法的运算效率至关重要。
关联规则树挖掘是2004年被提出的一种结合关联规则挖掘和决策树生成的一种分类训练方法,它在类标分类的数据上展现出比传统分类方法更高的准确率及可操作性,但是这个算法在当时是基于单机设备设计的,在面对小规模数据时,上述算法可以得到理想的分类结果,而在处理大规模数据时,由于算法无法在分布式集群上进行有效扩展,效率低下,算法无法完成任务,不能得到理想结果。
发明内容
本发明为解决以上现有技术的缺陷,提供了一种面向大规模数据的关联规则树挖掘方法,该方法根据MapReduce框架和RDD数据结构对关联规则树挖掘算法进行了并行化创新,使得挖掘方法的执行效率更高,同时本发明能在可扩展的大规模分布式平台上执行关联规则树挖掘,在面对大规模数据量时可扩展机器以提升计算能力,在可接受的时间内得出关联规则树,用于较高准确度的分类决策。
为实现以上发明目的,采用的技术方案是:
一种面向大规模数据的关联规则树挖掘方法,以下步骤:
S1.对原始数据进行预处理,将原始数据的数据结构处理为便于遍历的数据结构;
S2.遍历每项数据,将每项数据包含的属性名、属性名的值名及其支持度缓存起来,生成1-候选项集C1;
S3.由1-候选项集C1生成1-频繁项集L1;
S4.由k-频繁项集Lk生成k+1-候选项集Ck+1:
设k-频繁项集Lk中某一个项集为I,找出该项集中属性名最靠右的属性,设为A,然后在1-频繁项集L1中找到一个比A更靠右的属性,拼接到I的后面;
对k-频繁项集Lk中所有的项集进行以上操作,则生成了k+1-候选项集Ck+1;
S5.由k+1-候选项集Ck+1生成k+1-频繁项集Lk+1;
S6.重复执行步骤S4~S5直至不能生成新的k+1-频繁项集Lk+1;
S7.将步骤S6获得的所有的频繁项集用于生成规则;
S8.过滤出能被规则分类的数据,不能被规则分类的数据重复执行步骤S1~步骤S7,直至没有规则生成。
优选地,所述1-候选项集C1存储的形式如下:
{{属性1:值1}:支持度1}
{{属性1:值2}:支持度2}
{{属性2:值3}:支持度3}。
...
{{属性a:值v}:支持度f}
优选地,所述步骤S3具体执行如下:将1-候选项集C1中的每一个项集的支持度与最小支持度MINSUP做比较,将支持度大于MINSUP的项集留下来构造一个1-频繁项集L1。
优选地,所述1-频繁项集L1的存储形式与1-候选项集C1的存储形式一致。
优选地,所述步骤S5具体执行如下:
计算k+1-候选项集Ck+1中每一项的支持度,然后从k+1-候选项集中筛选出支持度高于最小支持度MINSUP的项集,构造k+1-频繁项集Lk+1。
优选地,所述k+1-候选项集Ck+1的存储形式如下:
{属性a1:值v1,属性a2:值v2,...,属性an:值vm}。
与现有技术相比,本发明的有益效果是:
本发明提供的数据挖掘方法根据MapReduce框架和RDD数据结构对关联规则树挖掘算法进行了并行化创新,使得挖掘方法的执行效率更高,同时本发明能在可扩展的大规模分布式平台上执行关联规则树挖掘,在面对大规模数据量时可扩展机器以提升计算能力,在可接受的时间内得出关联规则树,用于较高准确度的分类决策。
附图说明
图1为本发明的算法流程图。
图2为并行计算平台Spark RDD原理图。
图3为本发明并行化运行原理图。
图4为本发明在不同数据上加速比展示图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
以下结合附图和实施例对本发明做进一步的阐述。
实施例1
本发明涉及一种面向大规模数据的关联规则树挖掘方法,如图2所示,该方法的执行平台为并行计算平台Spark RDD,算法的流程及并行化运行的原理分别如图1、图3所示,图4为本发明提供的方法在在不同数据上加速比展示图。
如图1、3所示,本发明提供的方法包括以下步骤:
第一步:数据预处理。原始数据可能是各种形式的数据,不利于存取也不利于遍历,比如数据库文件、文本文件等,需要将它处理为有一定数据结构的、内存存储的,分布式的便于遍历的数据。理想的处理结果是每一行数据以以下这种形式存在
{行号:{{属性1:值1},{属性2:值2}...{属性a:值v}}}
这里有个重要的提示,由于ART是一种解决分类问题的算法,所以在频繁项挖掘的过程中,“类别”是当成一个属性来看待的;
第二步:生成1-候选项集C1。这一步就是完整地遍历每一行数据,将数据以每一项包含属性名、值名、支持度(这里就是指出现频度)缓存起来,缓存所有的单项集,具体是以下形式:
{{属性1:值1}:支持度1}
{{属性1:值2}:支持度2}
{{属性2:值3}:支持度3}
...
{{属性a:值v}:支持度f}
这里假设数据中存在N个属性,第i个属性存在Vi个可能的属性值,则此步挖掘出来的1-候选项集的个数为:
第三步:由1-候选项集C1生成1-频繁项集L1。即将1-候选项集C1中每一个单项集的支持度与参数最小支持度MINSUP做比较,将支持度大于MINSUP的项集留下来构造一个1-频繁项集L1,存储的形式保持1-候选项集C1的形式不变;
第四步:用k-频繁项集Lk生成k+1-候选项集Ck+1。这一步用到两份数据:(1)k-频繁项集;(2)1-频繁项集(L1)。假设Lk中某一个项集为I,找出该项集中属性名最靠右的属性,设为A,然后在L1中找到一个比A更靠右的属性,拼接到I的后面,则生成了一个比I多一个属性的项;将所有比A更靠右的属性,每一个都拼接到一个I的后面;对Lk中所有的项,都做与I相同的操作,则生成了Ck+1,存为以下形式:
{属性a1:值v1,属性a2:值v2,...,属性an:值vm}
第五步:由k+1-候选项集Ck+1生成k+1-频繁项集Lk+1。如图需要两份数据:(1)预处理过的原始数据D;(2)k+1-候选项集Ck+1。这一步里,遍历D,数出Ck+1中的每一项在D中的出现次数,亦即计算Ck+1中的每一项的支持度,记录为如下形式:
{{属性a1:值v1,属性a2:值v2,...,属性an:值vm,}:支持度f} (4.5)
然后根据参数最小支持度MINSUP,从Ck+1中筛选出支持度f高于MINSUP的项集,存为k+1-频繁项集Lk+1。
第六步:回到第四步骤,循环运行,由频繁项集生成多一项的候选项集,由候选项集筛选出频繁项集,直到不能再生成新的频繁项集。
第七步:将挖掘出来的频繁项用来生成规则;
第八步:过滤出能被规则分类的数据,余下的数据重新进入第一大步进行频繁项集挖掘,循环运行,直到没有好的规则生成。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (6)
1.一种面向大规模数据的关联规则树挖掘方法,其特征在于:包括以下步骤:
S1.对原始数据进行预处理,将原始数据的数据结构处理为便于遍历的数据结构;
S2.遍历每项数据,将每项数据包含的属性名、属性名的值名及其支持度缓存起来,生成1-候选项集C1;
S3.由1-候选项集C1生成1-频繁项集L1;
S4.由k-频繁项集Lk生成k+1-候选项集Ck+1:
设k-频繁项集Lk中某一个项集为I,找出该项集中属性名最靠右的属性,设为A,然后在1-频繁项集L1中找到一个比A更靠右的属性,拼接到I的后面;
对k-频繁项集Lk中所有的项集进行以上操作,则生成了k+1-候选项集Ck+1;
S5.由k+1-候选项集Ck+1生成k+1-频繁项集Lk+1;
S6.重复执行步骤S4~S5直至不能生成新的k+1-频繁项集Lk+1;
S7.将步骤S6获得的所有的频繁项集用于生成规则;
S8.过滤出能被规则分类的数据,不能被规则分类的数据重复执行步骤S1~步骤S7,直至没有规则生成。
2.根据权利要求1所述的面向大规模数据的关联规则树挖掘方法,其特征在于:所述1-候选项集C1存储的形式如下:
{{属性1:值1}:支持度1}
{{属性1:值2}:支持度2}
{{属性2:值3}:支持度3}。
…
{{属性a:值v}:支持度f} 。
3.根据权利要求1所述的面向大规模数据的关联规则树挖掘方法,其特征在于:所述步骤S3具体执行如下:将1-候选项集C1中的每一个项集的支持度与最小支持度MINSUP做比较,将支持度大于MINSUP的项集留下来构造一个1-频繁项集L1。
4.根据权利要求3所述的面向大规模数据的关联规则树挖掘方法,其特征在于:所述1-频繁项集L1的存储形式与1-候选项集C1的存储形式一致。
5.根据权利要求3所述的面向大规模数据的关联规则树挖掘方法,其特征在于:所述步骤S5具体执行如下:
计算k+1-候选项集Ck+1中每一项的支持度,然后从k+1-候选项集中筛选出支持度高于最小支持度MINSUP的项集,构造k+1-频繁项集Lk+1。
6.根据权利要求5所述的面向大规模数据的关联规则树挖掘方法,其特征在于:所述k+1-候选项集Ck+1的存储形式如下:
{属性a1:值v1,属性a2:值v2,...,属性an:值vm}。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610221837.8A CN105912660A (zh) | 2016-04-11 | 2016-04-11 | 一种面向大规模数据的关联规则树挖掘方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610221837.8A CN105912660A (zh) | 2016-04-11 | 2016-04-11 | 一种面向大规模数据的关联规则树挖掘方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105912660A true CN105912660A (zh) | 2016-08-31 |
Family
ID=56745780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610221837.8A Pending CN105912660A (zh) | 2016-04-11 | 2016-04-11 | 一种面向大规模数据的关联规则树挖掘方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105912660A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145959A (zh) * | 2017-03-23 | 2017-09-08 | 北京国电通网络技术有限公司 | 一种基于大数据平台的电力数据处理方法 |
CN107887033A (zh) * | 2017-10-25 | 2018-04-06 | 青岛海信医疗设备股份有限公司 | 为终端预传输数据的方法、装置及服务器 |
CN110019383A (zh) * | 2017-07-26 | 2019-07-16 | 香港理工大学深圳研究院 | 一种关联规则挖掘方法、装置及计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6324533B1 (en) * | 1998-05-29 | 2001-11-27 | International Business Machines Corporation | Integrated database and data-mining system |
CN102364498A (zh) * | 2011-10-17 | 2012-02-29 | 江苏大学 | 一种基于多标签的图像识别方法 |
CN103020256A (zh) * | 2012-12-21 | 2013-04-03 | 电子科技大学 | 一种大规模数据的关联规则挖掘方法 |
-
2016
- 2016-04-11 CN CN201610221837.8A patent/CN105912660A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6324533B1 (en) * | 1998-05-29 | 2001-11-27 | International Business Machines Corporation | Integrated database and data-mining system |
CN102364498A (zh) * | 2011-10-17 | 2012-02-29 | 江苏大学 | 一种基于多标签的图像识别方法 |
CN103020256A (zh) * | 2012-12-21 | 2013-04-03 | 电子科技大学 | 一种大规模数据的关联规则挖掘方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145959A (zh) * | 2017-03-23 | 2017-09-08 | 北京国电通网络技术有限公司 | 一种基于大数据平台的电力数据处理方法 |
CN110019383A (zh) * | 2017-07-26 | 2019-07-16 | 香港理工大学深圳研究院 | 一种关联规则挖掘方法、装置及计算机可读存储介质 |
CN107887033A (zh) * | 2017-10-25 | 2018-04-06 | 青岛海信医疗设备股份有限公司 | 为终端预传输数据的方法、装置及服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Rong et al. | Fast and scalable distributed set similarity joins for big data analytics | |
Kim et al. | Efficient list based mining of high average utility patterns with maximum average pruning strategies | |
Raj et al. | EAFIM: efficient apriori-based frequent itemset mining algorithm on Spark for big transactional data | |
Ediger et al. | Tracking structure of streaming social networks | |
KR101617696B1 (ko) | 데이터 정규표현식의 마이닝 방법 및 장치 | |
Kajdanowicz et al. | Comparison of the efficiency of mapreduce and bulk synchronous parallel approaches to large network processing | |
Wu et al. | Mining compact high utility itemsets without candidate generation | |
Padillo et al. | Exhaustive search algorithms to mine subgroups on big data using apache spark | |
CN105912660A (zh) | 一种面向大规模数据的关联规则树挖掘方法 | |
Singh et al. | Performance Measure of Similis and FPGrowth Algo rithm | |
Wang et al. | Research of massive web log data mining based on cloud computing | |
Chen et al. | Parallel mining frequent patterns over big transactional data in extended mapreduce | |
Lin et al. | Mining of high average-utility patterns with item-level thresholds | |
Huynh et al. | A parallel method for mining frequent patterns with multiple minimum support thresholds | |
Ishita et al. | ECLAT with large database parallel algorithm and improve its efficiency | |
Bustio-Martínez et al. | A novel multi-core algorithm for frequent itemsets mining in data streams | |
Yazdi et al. | A novel model for mining association rules from semantic web data | |
Cao et al. | An algorithm for outlier detection on uncertain data stream | |
Kaur et al. | Metamorphosis of data (small to big) and the comparative study of techniques (HADOOP, HIVE and PIG) to handle big data | |
Huang et al. | A Novel Frequent Pattern Mining Algorithm for Real-time Radar Data Stream. | |
Phan et al. | An efficient document indexing-based similarity search in large datasets | |
David et al. | Big data, Knowledge Organization and decision making: opportunities and limits | |
Raj et al. | Mining frequent temporal structures in web graph | |
CN108874819A (zh) | 一种数据库的数据挖掘方法 | |
Wei et al. | Semi-automated construction of a knowledge graph with template |
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: 20160831 |
|
RJ01 | Rejection of invention patent application after publication |