-
在这个大数据日益迅速发展的时代, 人们对于数据的价值已经越来越重视.根据IDC(International Data Corporation)的研究报告预测, 全世界数据总量将在2020年由2013年的4.4 ZB增长到35 ZB[1].数据挖掘作为一个重要的技术手段已经被广泛应用于各个领域的研究当中, 例如机器学习、模式识别、信息检索等[2-4], 而关联规则挖掘是数据挖掘中十分重要的手段之一, 特别是在大数据时代下进行数据间的关联分析显得尤为重要.由于大数据具有多样性的特点, 使用单个支持阈值来评估数据库中所有项目的发生频率是不够的, 因为每个项目不同, 它们不应该被同等看待.特别是在零售业, 价格低廉的日常用品经常被购买, 而奢侈品和高价位的产品却很少被购买; 如果设置过高最小支持度阈值, 只会挖掘到经常被购买的产品, 而较低的最小支持度阈值又会产生较多无意义的规则, 不利于产品的定位分析.所以, 传统的关联规则挖掘算法在处理海量数据时, 容易挖掘出常规的或无效用规则.
为了处理数据间的差异性问题, Liu等[5]首次提出一种多最小支持度框架下的关联规则算法MSApriori, 该算法通过给事务数据库中的每一个项目设定单独的最小支持度, 将经典的Apriori算法扩展到关联规则的挖掘中, 避免了设置单一支持度所产生的局限性.但是, 由于Apriori算法结构的缺陷, 需要多次扫描数据库容易受到组合爆炸的影响, Hu等[6]提出一种基于多最小支持度模式树的关联规则算法CFP-growth, 该算法基于FP-tree结构构造多最小模式树MIS-tree进行频繁项集的挖掘, 由于FP-tree模型的优点, 在挖掘过程中仅需2次扫描数据库来创建一系列条件模式树并生成完整的频繁项集, 在一定程度上节省了挖掘时间. Tseng等[7]提出了MMS_Cumulate和MMS_Stratify两种算法, 在分类的情况下允许多种形式的最小支持度定义, 并挖掘发现了广义的关联规则. Lee等[8]提出了一种基于最大约束条件下的多最小支持度关联规则算法, 在约束条件下进行关联规则挖掘, 并证明利用最大约束得到的关联规则数目小于使用最小约束得到的数目, 能够较为有效地减少无用规则产生.
随着研究深入, 更多的基于多最小支持度挖掘关联规则算法被提出, 例如基于属性关系多最小支持度的REMMAR算法[9]; 模糊定量序列模式关联规则算法FQDN-MMS[10]; 一种基于多最小置信度的关联规则算法[11]等.这些算法都从不同角度进行关联规则提取, 但是随着数据不断增大, 在挖掘过程中冗余造成时间和空间上的消耗, 并且会出现较多的冗余规则, 造成挖掘效率不高的问题.所以, 本文基于多最小支持度的定义, 通过改进CFP-growth算法在频繁项集的挖掘过程中进行优化:将频繁项目最小支持度值作为初始项目的支持度阈值进行数据预处理, 并在生成候选项集过程中利用排序向下闭合的属性进行冗余项删除, 以达到解决挖掘时间和减少冗余规则产生的目的.
An Improved Algorithm for Association Rules with Multiple Minimum Supports
-
摘要: 由于大数据具有多样性的特点,在数据挖掘过程中采用单一最小支持度会出现较多冗余规则,造成挖掘效率不高等问题,该文提出一种基于多最小支持度关联规则改进算法.通过给每一项目设置单独的支持度阈值,构建多最小支持度模式树,利用最小频繁项目作为节点筛选标准,进行冗余节点删除;在挖掘频繁项集的过程中利用排序向下闭合的性质,删除冗余的候选项集,同时能够自动停止向下挖掘,从而快速直接地得到所有频繁项集,并且不需要多次扫描数据库.实验结果表明,改进算法能够提高挖掘效率,节省计算时间.Abstract: Due to the diversity of big data, using a single minimum support in the data mining process will result in inefficient mining and redundancy rules. This paper proposes an improved algorithm based on multi-minimum support association rules. By setting a separate support threshold for each project, a multi-minimum support pattern tree is constructed, and the minimum frequent items are used as node screening criteria to perform redundant node deletion. In the process of mining frequent itemsets, the nature of sorting down-close is utilized to delete redundant candidate sets, and at the same time, it can automatically stop down mining, so that all frequent itemsets can be quickly and directly obtained, and the database does not need to be scanned multiple times. Experimental results show that the improved algorithm can improve mining efficiency and save computing time.
-
Key words:
- big data /
- frequent itemset /
- association rule /
- multiple minimum support .
-
表 1 项目的MIS值
Item a b c d e f g h MIS 5 5 6 7 2 3 3 4 表 2 构建NMIS-tree算法
算法 构建NMIS-tree 输入:事务数据库D, 包含n项的项集I, 各个项的MIS 输出: NMIS-tree 步骤: 1:创建NMIS-tree的根节点Null; 2: for每一条事务t∈D do 3:将每一条事务中的项按照MIS值大小进行降序排列; 4:计算每个项的支持度, 记作Sup(i); 5:将排序后的每一条事务记作[p|P], p代表第一个元素, P代表该事务剩余的集合, 6:调用insert_tree([p|P], T) 7: end for 8: for (; j≥0; j=j-1) do 9: if (Sup(ij)<MIS(ij)) then 10:删除头表中的项ij; 调用NMIS_Pruning(NMIS-tree, f); 11: else 12: LMS=MIS[ij]; break; 13: end if 14: end for 15: for (; j≥0; j=j-1) do 16: if (Sup(ij)<LMS) then 17:删除头表中的项ij; 调用NMIS_Pruning(NMIS-tree, f) 18: end if 19: end for 20:调用MIN_Merge(NMIS-tree) 表 3 insert_tree过程
过程1 insert_tree([p|P], T) 1: if存在一个T的子节点N, 使得p.item-name=N.item-name then 2: N的Count增加1; 3: else 4:创建一个新的子节点N, 使其节点的Conut为1, 并链接到父节点T; 5:通过节点链接的结构将该节点链接到同名的节点上; 6: end if 7: if $P \notin \emptyset $ then8:调用insert_tree([p|P], T) 9: end if 表 4 NMIS_Pruning过程
过程2 NMIS_Pruning(NMIS-tree, f) 1: for任意在NMIS-tree与ij链接的节点 2: if如果该节点是叶子节点then直接删除; 3: else删除该节点, 并将该节点的子节点链接到它的父节点上; 4: end if 5: end for 表 5 MIN_Merge过程
过程3 MIN_Merge(NMIS-tree) 1: for Frequent header table中每一项do 2: if存在相同名称的子节点then 3:合并这些节点, 支持度计数为这些节点的计数之和; 4: end if 5: end for 表 6 NCFP-growth
算法 NCFP-growth 输入: NMIS-tree, MIS(ij), k 输出:频繁项集 步骤: 1: for each ij in the header of NMIS-tree do 2: if k=2 then 3: generate pattern β=ij∪α with ij. support; 4: else 5: generate pattern β=Apriori-gen(k, Fs); 6: end if 7: end for 8: Construct set of β′s conditional pattern do 9: for each β in the set of β′s conditional pattern do 10: if β is frequent then 11: Fs.add(β); 12: Call NCFP-growth(NMIS-tree, k+1, β, MIS(ij)) 表 7 原始事务数据库D
Tid Items 1 c, d 2 a, d 3 b, c, d, g 4 a, b, c, f, h 5 a, d, g 6 c, d 7 a, c, d, h 8 b, d, f 9 a, b, c, e, f 10 a, c 表 8 排序后的事务数据库D
Tid Items 1 c, d 2 d, a 3 c, d, b, g 4 c, a, b, f, h 5 d, a, g 6 c, d 7 c, d, a, h 8 d, b, f 9 c, a, b, f, e 10 c, a 表 9 数据集
数据集 项的个数 事务数 平均长度 最大长度 T10I4D100K 1 000 100 000 10 29 Transaction 20 46 243 5.5 68 注:平均长度和最大长度的单位, 都为项的个数. -
[1] GANTZ J, REINSEL D. 2011 Digital Universe Study:Extracting Value from Chaos[M]. Hopkinton:IDC Go-to-Market Services, 2011. [2] WU F, WANG Z, ZHANG Z, et al. Weakly Semi-Supervised Deep Learning for Multi-Label Image Annotation[J]. IEEE Transactions on Big Data, 2015, 1(3):109-122. doi: 10.1109/TBDATA.2015.2497270 [3] CORMACK G V, CLARKE C L A, BUTTCHER S. Information Retrieval:Implementing and Evaluating Search Engines[J]. The Electronic Library, 2011, 29(6):853-854. doi: 10.1108/02640471111188088 [4] NAUN C C. Book Review:Introduction to Modern Information Retrieval[J]. Library Resources & Technical Services, 2011, 55(4):239-240. [5] LIU B, HSU W, MA Y M. Mining Association Rules with Multiple Minimum Supports[C]//San Diego: Proceedings of the Fifth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining-KDD'99, 1999. [6] HU Y H, CHEN Y L. Mining Association Rules with Multiple Minimum Supports:A New Mining Algorithm and a Support Tuning Mechanism[J]. Decision Support Systems, 2006, 42(1):1-24. [7] doi: http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=e4247371b971944482d7d3ed42b840cb TSENG M C, LIN W Y. Efficient Mining of Generalized Association Rules with Non-Uniform Minimum Support[J]. Data & Knowledge Engineering, 2007, 62(1):41-64. [8] LEE Y C, HONG T P, LIN W Y. Mining Association Rules with Multiple Minimum Supports Using Maximum Constraints[J]. International Journal of Approximate Reasoning, 2005, 40(1-2):44-54. doi: 10.1016/j.ijar.2004.11.006 [9] LIU Y C, CHENG C P, TSENG V S. Discovering Relational-Based Association Rules with Multiple Minimum Supports on Microarray Datasets[J]. Bioinformatics, 2011, 27(22):3142-3148. doi: 10.1093/bioinformatics/btr526 [10] HUANG T C K. Discovery of Fuzzy Quantitative Sequential Patterns with Multiple Minimum Supports and Adjustable Membership Functions[J]. Information Sciences, 2013, 222:126-146. doi: 10.1016/j.ins.2012.07.047 [11] RAGE U K, KITSUREGAWA M. Efficient Discovery of Correlated Patterns Using Multiple Minimum All-Confidence Thresholds[J]. Journal of Intelligent Information Systems, 2015, 45(3):357-377. doi: 10.1007/s10844-014-0314-7 [12] TANG K, CHEN Y L, HU H W. Context-Based Market Basket Analysis in a Multiple-Store Environment[J]. Decision Support Systems, 2008, 45(1):150-163. doi: 10.1016/j.dss.2007.12.016