更全的杂志信息网

基于Apriori改进算法的频繁路径挖掘——以实现图书移动路径挖掘为例

更新时间:2009-03-28

1 Apriori算法

1.1 经典算法介绍

Apriori算法首先利用递归的方法对数据进行逐层挖掘找出所有的频集,然后从这些频集中产生关联规则,最后除去那些小于用户预设的最小可信度和最小支持度的规则,留下的便是我们需要的强关联规则了。Apriori算法的主要描述如下[1]

事务数据库F;最小支持度min_s.

输出:F的频繁项集L.

1) L1={frequent_1-itemsets};  //初始产生的频繁1-项集的集合;

在我国“一带一路”战略大背景下,中俄交往日益密切,国际婚姻发展也日益迅速,如何避免出现婚姻瑕疵对巩固中俄友谊和战略协同具有重要意义。

2) for(x=2;Lx-1≠φ;x++) {  //由频繁x-1-项集产生频繁x-项集[1]

忽一天,因环保治理不力,某某被上级约谈,某某某被警告撤职。很快,同学中疯传,A措手不及,马失前蹄,一蹶不振。

3) Cx=ap_hxx(Lx-1);//调用函数ap_hxx,由Lx-1产生新的候选项集Cx;

4) for all affairs t∈D do { //对于事务数据库F中的每一个事务t[1]

5) Ct=subset(Cx,t); //t中所包含的候选项集Cx[1]

6) return L=∪xLx; //频繁项集L为输出结果[1]

其中函数ap_hxx通过连接产生新的候选项集,并根据“频繁路径+Apriori性质”的定义对Ck内的候选项集进行删选,删除那些不包含频繁路径子集的候选项集。

根据(Apriori性质):因为支持度小于min_s的路径p都不是频繁路径,那么包含p的任何路径也都不是频繁路径[2],只要检查候选项集的子集是否为频繁路径集,就可判断该候选项集是否为频繁路径集。这里用函数has_apriori_s完成非频繁路径子集的测试,描述如下:

funtion has_apriori_s (C,Lx-1){ //C为候选x项集,Lx-1为频繁x-1项集[1]

3) 生成频繁2-路径集

2) if s Lk-1 then //如果s不在Lk-1中则返回true,即从Ck中删除[1]

1.2 经典算法的不足

Apriori算法通过递归搜索的方法[3]来产生强关联规则。该算法虽然简单易懂,容易实现,但在实际应用中仍有许多不足之处。

本文定义5个评价指标的权重相同,通过这5个评价指标绘制相同权重的五边形雷达图,并采用雷达图的面积、周长2个特征量反映不同车站的综合水平及各个评价指标的均衡性。

1) 重复扫描数据库

由于最小支持数为2,而表6中(c,1)(z,1)(r,5)的支持数是1,其支持数≦ 最小支持数,所以(c,1)(z,1)(r,5)是非频繁路径,根据(Apriori性质)可知,它更不属于最大频繁路径集,因此将其删除,得到长度为3的频繁3-路径集,如表7所示。

2) 侯选项集太多

用Apriori算法生成关联规则的过程中会产生大量的候选项集,这些候选项集又会带来大量的中间数据[3]

3) 执行时间较长

根据施工方式及功能重要性,采用百分制对4种方案进行评分Si, k(其中k = A、B、C或D),加权计算得到各方案的功能评价系数Fw, k,结果见表2。全部方案的功能评价系数总分(S)合计35.25,则功能系数Fk = Fw, k / S。经计算,方案A、B、C和D的Fk依次为0.247 614、0.245 735、0.249 610和0.257 041。

在频繁项集的长度较大而事务并没有减少的情况下,Apriori算法需要消耗较长的时间才能完成对非频繁项集的删选工作。

4) 挖掘效率较低

Apriori算法只是单纯依靠设定的支持度来产生强关联规则[4],并没有考虑到项目的重要性[4],如此导致了大量无用规则的产生,大大降低了挖掘的效率。

抽取RFID数据库中图书的路径数据组成事务数据库,并把图书的属性值嵌入路径记录来作为事务数据库中的事务P;同时用单个形如(location,times)的路径段或属性值来表示事务中的每个项目(path);之后通过对事务数据库的扫描来创建临时二进制数据库,该数据库以项目为主键,另用二进制位来表示项目的事务集,也就是每个项目依次在所有事务中出现的情况,如它在某事务中出现就用“1”表示,未出现则用“0”表示;最后统计“1”的个数作为各项目的支持数(countp),countp = supportp*|DB|,所以min_countp=min_supportp*|DB|,其中|DB|为事务P的总数。

白酒是我国的传统蒸馏酒,按其风味特征可分为各种不同的香型,虽然每种香型各有其典型风格,但是不论哪种香型的白酒,保持适度的甜味,不仅可以遮盖其他一些苦涩杂味,而且还能使酒体甘洌、醇厚、绵软,但是这种甜味是来自于自然发酵产生的,而非添加甜味剂。风味化学研究表明,味觉是由一定的呈味物质引起的,酒之所以具有醇甜之感,是因为酒中含有一定量的甜味物质,如高级醇、多元醇、氨基酸等,这些甜味物质,对于名优白酒,是由其特殊的生产工艺决定的,如浓香型大曲酒的低温入池、缓慢发酵,就是为了有利于醇甜物质的生成,无需另行添加[8]。

因为算法设定了最小支持度,所以我们无法对小于这个支持度的事务进行分析。同时算法的效率还会随着支持度的变小而降低。

2 改进的Apriori算法

2.1 改进算法的描述

用Apriori算法进行数据挖掘时扫描数据库的次数与频繁项集的长度有关,如频繁项集的长度为N时就需扫描数据库N次,这样不仅给网络的传输造成了一定的负担,还明显降低了Apriori算法的挖掘效率。因此本文在设计Apriori改进算法时,考虑改变原有数据库的存储结构,建立临时二进制数据库,并采用二进制位的方法来表示项目在事务集中出现的情况,如项目在某事务中出现就用“1”来表示,反之用“0”来表示,然后通过设定的最小支持度(min_sup)对候选项集进行删选,直到产生出最大频繁项集为止。如此较好地减少了扫描数据库的次数和产生候选项集的个数,大大提高了算法的效率。

2.2 改进算法在频繁路径挖掘中的具体步骤

1) 创建临时二进制数据库

5) 分析数据不全面

2) 生成频繁1-路径集

用统计好的项目支持数依次与指定的最小支持数进行比较,如其支持数大于等于最小支持数,那么该项就是频繁路径,如小于则为非频繁路径;最后根据比较结果,删除非频繁路径,得到长度为1的频繁1-路径集。

三个通道的振动加速度信号通过信号调理器和INV36DF型信号采集处理仪采集得到,输入到电脑中由与之相配套的DASP软件纪录和存储。

1) for each (x-1)-subset s of C //对每个k-1项子集s[1]

先将频繁1-路径集中所有的项目两两相交,也就是进行二进制位的与运算,并统计运算结果中“1”的个数来作为项目的新支持数,得到包含2个路径段和属性值的候选2-路径集;接着同样把新支持数与最小支持数进行比较,最后删除候选集中的非频繁路径,得到长度为2的频繁2-路径集。

4) 生成频繁k-路径集

1) 降低访问数据量

从频繁3-路径集开始,只需求前k-2项相同的两个项目的交集,不同的则不需再重复运算,就可生成符合的所有频繁路径集。当再没有新的频繁路径产生时,最终的频繁路径集就是最大频繁路径集。

3 改进算法在频繁路径挖掘中的应用

3.1 图书移动路径中的频繁路径挖掘算法

设事务数据库D,其事务P的总数为4,即|DB|=4,指定最小支持度(min_sup)为0.5,据上所述,我们可得到最小支持数(min_cup)为2. 路径数据中各地点的含义为:c,仓库; j,书架;r,阅览室。停留以“小时”为时间单位,如表1所示。

 

1 事务数据库D

  

事务P路径记录项数NP1(小说)(c,1)(j,2)(r,7)4P2(散文)(c,1)(r,5)3P3(小说)(c,1)(j,2)(r,5)4P4(随笔)(c,30)2

我们先把表1中的项数N与最小支持数2进行比较,然后通过对事务数据库D的一次扫描来创建临时二进制数据库,它以项目(path)为主键,,并用二进制位来表示项目的事务集,也就是代表(c,1)、(j,2)、(r,7)、(r,5)、(c,30)、(小说)、(散文)、(随笔)这8个项分别在每条事务(路径)中出现的情况,如有出现用“1”表示,未出现则用“0”表示;最后统计“1”的个数作为各项目的支持数(countp),如表2所示。

 

2 临时二进制数据库

  

项目path事务Pcountp(c,1)11103(小说)10102(j,2)10102(r,5)01102(r,7)10001(散文)01001(随笔)00011(c,30)00011

由于最小支持数为2,而表2中(r,7)、(c,30)、(散文)、(随笔)的支持数为1,其支持数≦最小支持数,所以(r,7)、(c,30)、(散文) 、(随笔)是非频繁路径,根据之前的Apriori性质可知,它们更不属于最大频繁路径集,因此将其删除,得到长度为1的频繁1-路径集,如表3所示。

 

3 频繁1-路径集

  

项目path事务Pcountp(c,1)11103(小说)10102(j,2)10102(r,5)01102

根据表3,把(小说)、(c,1)、(j,2)、(r,5)这4个路径两两相交,也就是进行二进制位的与运算,并同样对运算结果中“1”的个数进行统计作为路径的支持数[1],得到包含2个路径段和属性值的候选2-路径集,如表4所示。

 

4 候选2-路径集

  

项目path事务Pcountp(小说)(c,1)10102(c,1)(j,2)10102(c,1)(r,5)01102(小说)(j,2)10102(小说)(r,5)00101(j,2)(r,5)00101

由于最小支持数为2,而表4中(小说)(r,5)、(j,2)(r,5)的支持数为1,其支持数≦ 最小支持数,所以(小说)(r,5)、(j,2)(r,5)是非频繁路径,根据(Apriori性质)可知,(小说)(r,5)、(j,2)(r,5)更不属于最大频繁路径集,因此将其从候选2-路径集中删除,得到长度为2的频繁2-路径集,如表5所示。

 

5 频繁2-路径集

  

项目path事务Pcountp(小说)(c,1)10102(c,1)(j,2)10102(c,1)(r,5)01102(小说)(j,2)10102

在将表5中的长度为2的路径进行两两相交时,先判断其第1项是否相同,然后只求第1项相同路径的交集,也就是进行二进制位的与运算,并统计运算结果中“1”的个数获取新的支持数,最后得到包含3个路径段和属性值的候选3-路径集,如表6所示。

 

6 候选3-路径集

  

项目path事务Pcountp(小说)(c,1)(j,2)10102(c,1)(j,2)(r,5)00101

在Apriori算法中扫描数据库的次数是根据频繁项集的长度而定的,这就是说每产生一次频繁项集都要扫描一次数据库,直到产生出最大频繁项集为止。

 

7 频繁3-路径集

  

项目path事务Pcountp(小说)(c,1)(j,2)10102

由于事务数据库D中事务P的总数为4,而频繁3-路径集的数目为1,所以事务数据库的最大频繁路径集为{(小说)(c,1)(j,2)}。

小鼠回肠黏膜SIgA的变化趋势也与十二指肠表现基本一致。试验进行1周后,试验组回肠黏膜SIgA表达水平与对照组相比差异不显著(P>0.05);试验进行2周到6周中,试验组回肠黏膜SIgA表达水平与对照组相比均显著提高,由2周到6周试验组依次分别提高了11.69%和6.64%(P<0.05)、24.58%和13.49%(P<0.05)、18.26%和 17.74%(P<0.05)、8.41%和 6.87%(P<0.05)、10.72%和9.86%(P<0.05),其中饲喂3周时回肠SIgA表达水平提高最多。

3.2 改进算法在频繁路径挖掘中的优势

改进算法用二进制位来表示项目的事务集,并通过二进制的运算来获得各项目的支持数,然后将支持数与最小支持数进行比较,找出候选项集中的非频繁项,最后从候选项集中删除这些非频繁项来得到频繁项集。改进算法与经典算法相比具有以下优势。

杨秉奎摇摇头:“这雨不会下一整夜。雨后的蚊子以一当十,以十当百,以百当千当万。不相信的就让他领教领教北大荒的蚊子,哼!”

数据样本分类是利用已收集的数据样本,对未知样本类别的新样本进行样本类别预测。在样本收集过程中,常常由于某些类别的样本数据难以收集,从而导致数据样本集中一些类别样本占少数,形成不平衡样本集,例如医学肿瘤特征数据集中,恶心肿瘤特征数据占少数。

2) 快速求得交集

营造积极网络环境,减少青少年犯罪事件发生,需要家长、学校和社会的共同努力,加大对青少年的关注力度,帮他们安全度过人生的转折期。

改进算法只扫描原始数据库一次,当求候选项集Ck的支持数时只需访问二进制数据库的频繁k-1项集即可,并且随着k的增大,频繁k-1项集却在减小,因此大大降低了访问的数据量[4]

改进算法只需对项目的事务集进行二进制位的与运算就可完成两项集的交集。

3) 节省存储空间

因为改进算法采用的是二进制数据库,所以大大节省了事务的存储空间,而且对二进制数进行运算远比对字符串来的快[5]

3.3 实验结果

通过数据库WebDocs的测试来比较经典算法与改进算法的性能,同时考虑到基于Apriori的改进算法目前已有很多,为了体现出本文中改进算法的优越性,在此加入了基于矩阵的Apriori改进算法和基于深度优先的Apriori改进算法来进行共同比较。另外为了比较出几种算法的实际效率,我们采用相同的最小支持数和最小可信度,且在Pentium双核E5300,内存1024M的环境下运行。实验结果见表8所示。

 

8 两个算法的性能比较 (min_cup=10 min_conf=0.5)

  

事务数目/条关联规则运算时间/s 经典算法  基于矩阵的法  基于深度优先的法  改进算法 1000116758625815001783777975180023170143153136220023281223240214

由上可知,在事务数较少的情况下改进算法的性能与经典算法差不多,但随着事务数的增加,改进算法的效率明显优于经典算法。因其在任何情况下都只扫描原始数据库一次,而经典算法则需根据最大频繁项集的长度来确定扫描数据库的次数[6]。另外从本文的改进算法与另外两种改进算法的比较来看,本文的改进算法在性能上也略有提高,虽然不是很多,但在事务数不断增加的情况下仍具有一定的优越性。

参考文献:

围绕中心服务大局。在全县违建治理工作中,县人大常委会发出《致全县人大代表的一封信》,各级代表在积极发挥桥梁纽带作用的同时,充分利用密切联系群众的优势,做好群众思想工作,截至目前,全县涉及人大代表及其负责联系的群众的违法建筑全部拆除到位,有力推动了全县违建治理工作的开展。

[1]陈正权,王宇一. 关联规则Apriori算法的改进[J]. 江南大学学报(自然科学版),2012,(3): 294~299.

和欧美国家相比,我国绝大部分城市的图书馆读者证持有率不到 10%,图书馆利用率较低[1]。那么图书馆该如何挖掘另外90%的潜在用户呢?图书馆一方面要吸引更多的人走进图书馆,另一方面要激活潜在用户,让更多的个人或机构主动寻求图书馆的各种服务,使图书馆服务向更广范围、更深层次延伸,惠及全社会。

晚清最后10年,清政府也开始以较为保守的方式进行自我变革。变革的方向对后世影响较大,其中,办新学、编练新军等措施甚至在一定程度上直接加速了清政府的灭亡。

[2]陈竹西. 面向RFID海量数据的若干数据挖掘技术研究[D]. 扬州: 扬州大学,2009.

[3]付 沙,周航军. 关联规则挖掘Apriori算法的研究与改进[J]. 微电子学与计算机,2013, (9): 110~114.

[4]李 伟,刘光明等.并行化Apriori算法在海量医疗文档数据挖掘中的应用及优化 [J]. 北京师范大学学报(自然科学版) ,2016,04 (52):420~424.

[5]宋顶利,张 昕,于复兴.分布式优化Apriori算法的交通运行状态数据分析模拟[J]. 科技通报, 2016,10(32):202~206.

[6]张 容,张 勇.基于数据挖掘算法的电子图书馆智能推荐技术研究[J]. 西南师范大学学报 (自然科学版) ,2017,07(42):81~85.

 
王宇一
《湖北师范大学学报(自然科学版)》2018年第01期文献

服务严谨可靠 7×14小时在线支持 支持宝特邀商家 不满意退款

本站非杂志社官网,上千家国家级期刊、省级期刊、北大核心、南大核心、专业的职称论文发表网站。
职称论文发表、杂志论文发表、期刊征稿、期刊投稿,论文发表指导正规机构。是您首选最可靠,最快速的期刊论文发表网站。
免责声明:本网站部分资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有
如有不愿意被转载的情况,请通知我们删除已转载的信息 粤ICP备2023046998号