2022年Apriori算法的更新算法 .pdf
《2022年Apriori算法的更新算法 .pdf》由会员分享,可在线阅读,更多相关《2022年Apriori算法的更新算法 .pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 关联规则 Apriori 算法的更新算法邢茜 重庆理工大学计算机科学与工程学院摘要:在数据挖掘中,关联规则是一个重要的研究方向,Apriori算法是关联规则中提取的经典算法, 但是无论是在处理的数据量还是处理效率上都有许多局限性。在现阶段的研究中,主要是针对其算法在效率上的提高。本文讨论Apriori算法存在的不足以及改进的基本思想,以提高该算法的效率。关键字:数据挖掘;关联规则;频繁项集;非频繁项集;Apriori算法1 引言数据挖掘( Data Mining )是一门交叉学科,是从大量数据中获取有效的、新颖的、潜在有用的、 最终可理解的模式的非平凡过程。其中的事务数据库挖掘关联规则(
2、Association Rules)是数据挖掘领域中一个非常重要的研究课题。AGRAW AL1年提出了关联规则,而后又进一步提出了著名的Apriori算法2。其基本思想是重复扫描数据库, 根据一个频繁集的任意子集都是频繁集的原理,可以从长度为 -1 的频繁集迭代地产生长度为的候选集,再扫描数据库以验证其是否为频繁集。但当数据库中事务较多,项目集较大时,扫描计算量大,耗时多。针对这些缺点,近10 年来,许多学者3-8对关联规则挖掘进行了大量研究工作,深入地研究了该算法并提出了各种改进方法。较多的文献是关于候选集精减的,Apriori算法本身也是通过精减候选集来减少计算量。本文在这些研究基础之上,
3、避免对数据库中无用数据的重复扫描,从而提高算法效率。2 Apriori算法分析2.1 Apriori 算法的描述Apriori算法是基本的关联规则挖掘算法。为了减少候选数据项集的数目,Apriori 算法使用逐层搜索的方法, 通过对数据库的所有事务数据项扫描来发现所有的频繁项目集。 通过频繁项集的性质知道, 只有那些确认是频繁项的候选名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 11 页 - - - - - - - - - 2 集所生成的项集才可能是频繁项集。所以只用频
4、繁项集生成下一趟扫描的候选集, 也就是用 Li-1生成 Ci(为频繁项集的集合, C候选项集的集合, i 为当前扫描数据库的次数) ,在每次扫描数据库时只考虑具有同数目数据项的集合。Apriori算法可以生成相对较少的候选数据项集,候选数据项集不必再反复地根据数据库中的记录产生, 而是在寻找频繁数据项集的过程中由前一次循环产生的- 频繁数据项集一次产生。此算法利用了下面这些基本概念和性质:设 I=i1,i2, in 是一组项目集, D 为事务数据库。 TI ,T 表示某事务涉及的项目集, Tid 为事务标识符,则D中的每一个事务都可以表示为Tid ,T。例如,表 1 表示一个数据库,它包含8
5、条事务。如事务 1 用 T1 表示,它包含项目 A,B,C,D,E 。其余类推。Tid Itemset Tid Itemset T1 A,B,C,D,E T5 C,D T2 A,B,D,E T6 B,C T3 B,C,E,F T7 E,F T4 F T8 A,B,C 表 1 性质 1: 一个频繁项目集的任一非空子集必定也是频繁项目集; 性质 2: 一个非频繁项目集的任一超集必定也是非频繁项目集;性质 3:k 项数据项目集是频繁项目集的必要条件是它的所有k-1 项子集均是频繁项目集;性质 4:Ck中任一项集必是Ck-1中某一项集的超集。Apriori算法描述 : 输入:事务数据库D;最小支持度值
6、 min_sup。输出: D中的频繁项集 L。方法:1) L1=find_frequent_1_itemsets(D); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 11 页 - - - - - - - - - 3 2) for(k=2;Lk-1;k+) 3) Ck=Apriori_gen(Lk-1,min_sup); 4) for each transaction t D /scan D for count5) Ct=subset(Ck,t); /get subse
7、ts of that are candidates 6) for each candidate cCt7) c.count+; 8) 9) L k=cCk |c.count=min_sup 10) 11)return L=k Lk; procedure apriori_gen(Lk-1;frequent(k-1)-items;min_sup:support) 1)for each itemset 11Lk-12)for each itemset 12Lk-13)if(111=121 (11k-2=12k-2 ) (11k-1=2) ,因此, T4 在以后统计更高阶频繁项集时不再用到,为了提高扫
8、描速度,删去T4,从而的到表 3。Tid A B C D E F T1 1 1 1 1 1 0 T2 1 1 0 1 1 0 T3 0 1 1 0 1 1 T5 0 0 1 1 0 0 T6 0 1 1 0 0 0 T7 0 0 0 0 1 1 T8 1 1 1 0 0 0 表 3 作链接构成候选 2- 项集,然后扫描计数,求出2-项集的支持计数,结果放名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 11 页 - - - - - - - - - 6 在表 4 的最后一行。
9、Tid AB AC AD AE AF BC BD BE BF CD CE CF DE DF EF T1 1 1 1 1 0 1 1 1 0 1 1 0 1 0 0 T2 1 0 1 1 0 0 1 1 0 0 0 0 1 0 0 T3 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 T5 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 T6 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 T7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 T8 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 3 2 2 2 0 4 2 3 0 2
10、1 0 2 0 2 表 4 约简事务:由表4 求出频繁2-项集,表中支持计数少于2 的项集分别为AF,BF,CE,CF,DF,因此删除这些非频繁项集,另外,在表4 中我们观察到事务 T5,T6,T7, 分别只含有一个频繁2- 项集,因此在以后的3-项集或者更高项集的链接中将不再用到这些事务,将其删除,得到表5。继续作链接,生成3-项集,扫描计数,结果放在最后一行,如表6。约简事务:由表 6 可以看出 3-项集ACD,ACE,BCD 的支持计数少于2,因此删除这些非频繁3- 项集,观察事务 T3,T8 分别只含有一个频繁3-项集,因此在以后的 3-项集或者更高项集的链接中将不会用到,将其删除,得
11、到表7。Tid AB AC AD AE BC BD BE CD DE EF T1 1 1 1 1 1 1 1 1 1 0 T2 1 0 1 1 0 1 1 0 1 0 T3 0 0 0 0 1 0 1 0 0 1 T8 1 1 0 0 1 0 0 0 0 0 表 5 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 11 页 - - - - - - - - - 7 Tid ABC ABD ABE ACD ACE ADE BCD BCE BDE T1 1 1 1 1 1 1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年Apriori算法的更新算法 2022 Apriori 算法 更新
限制150内