APP下载

关联规则改进算法及其在地铁运营中的应用

2021-06-29周永强杨振华

计算机时代 2021年4期
关键词:关联规则算法

周永强 杨振华

摘  要: 为了探索天气与地铁客流量之间的关系,为地铁运营部门科学合理的调度、预案的制定提供帮助,对地铁大数据进行了关联规则挖掘,并对经典的关联规则算法Apriori进行了改进。改进算法提高了从海量数据中取得频繁项目集的效率,降低了对计算机资源的消耗,高效地挖掘出了天气因素对地铁客流影响的规律。

关键词: 关联规则; Apriori; 算法; 频繁项目集

中图分类号:TP393          文献标识码:A     文章编号:1006-8228(2021)04-57-03

Abstract: In order to explore the relationship between weather and subway passenger flow, provide help for scientific and reasonable scheduling and plan formulation. The association rule mining to the subway big data is carried out and the classical association rule algorithm Apriori is improved. The improved algorithm improves the efficiency of obtaining frequent item sets from massive data and reduces the consumption of computer resources, so that the rules of the influence of weather factors on subway passenger flow are mined efficiently.

Key words: association rule; Apriori; algorithm; frequent item sets

0 引言

随着城市化进程的发展,城市人口高速增长,大量的城市人口给交通带来了极大的压力。为了缓解交通压力[4],许多城市都大力发展地铁建设。然而乘客人数过多,在高峰期地铁站仍然是人潮涌动。当天气变化时也会对地铁交通产生极大影响。因此,天气因素对地铁客流的影响就成了我们的研究对象。随着地铁电子化车票的使用,地铁运营公司已经收集了海量的用户乘车数据。我们尝试采用关联规则方法对出行数据中蕴含的潜在知识进行挖掘,找出其中有价值的信息。

1 Apriori算法研究

关联规则挖掘的过程分为两个步骤:第一步,从事务数据库中找出所有满足支持度的频繁项集;第二步,从频繁项集中找出所有满足置信度的规则。找出频繁项集是进行关联规则挖掘的基础,也是最耗时耗力的一步,也因此成为大多数关联规则研究的热点[5]。

频繁项集挖掘经典的算法是Apriori算法,它挖掘的主要步骤是:①首先,扫描事务数据库D,找出其中的频繁1项集L1。②由频繁1项集L1进行L1 X L1连接运算产生候选频繁2项集C2。再次扫描事务数据库D,找出其中的频繁2项集L2。重复上述过程,直至找出所有的频繁k项集Lk。

Apriori的算法如下:

L1=frequent_1_itemsets(D); //找到所有频繁1项集L1,

D是事务数据库的所有项

for(k=2;Lk-1≠?;k++) {

Ck=generate(Lk-1);

for each transaction t∈D {

for each item ji∈Ck {

if (ji∈t) then ji.count=ji.count+1

}

}

Lk={ j∈Ck|ji.count>min_support }

}

L=LULk //找到所有的频繁项集

2 Apriori算法的改进

Apriori算法剪枝操作的过程是:用频繁Lk-1项集连接产生候选频繁k项集Ck,再统计每个候选频繁项的k个子集是不是都在频繁项集Lk-1中,如果有的子集不在Lk-1中,则该候选频繁项一定不是频繁的,应当排除。但是这种方法会产生大量候选频繁项集。如果频繁2项集L2有200000条,那么连接运算将产生 19999900000条候选频繁3项集,再依次检查每个候选频繁项的子集将花费大量的计算资源[6]。

我们发现在频繁k-1项集产生之后,频繁k-1项集中的某些元素Ii(li在频繁k-1项集出现次数小于k-1),那么它对于下一级的频繁k项集的产生就已经不起作用了。因为,如果候选频繁k项集Ck是频繁的,则它的k-1项的子集也一定是频繁的。所以它的每个子项一定会在频繁k-1项集中出现至少k-1次。因此,可以在产生下一级候选频繁项目集Ck之前,先从频繁项目集Lk-1中删除包含这些元素(Ii)的频繁项目,这就会减少大量无用的候选频繁項目集的产生[7]。

我们在Apriori算法的剪枝过程中增加如下操作:

function reduce (Lk-1)

for i in 1…k-1 //设置计数标记 A1,A2……Ak-1初始值为0

{ Ai.count=0 }

for each item c∈Lk-1 //统计频繁k-1项集中,各个项目I[i]

出现的次数

{ for each item I[i]∈c }

{ Ai.count=Ai.count+1}

for i in 1…k-1 //从频繁k-1项集中,去除适合产生候选频繁k项集的项目

if Ai.count

{

for each item c∈Lk-1

if Ai∈c

delete c from Lk-1

}

例如,有频繁2项集:

{I1,I2},{I1,I5},{I1,I6},{I2,I4},{I2,I5},{I2,I7},{I3,I5},{I4,I7},{I5,I7}

需要进行连接运算36次,将会产生候选频繁3项集13个:{I1,I2,I4},{I1,I2,I5},{I1,I2,I6},{I1,I2,I7},{I1,I3,I5},{I1,I5,I6},{I1,I5,I7},{I2,I3,I5},{I2,I4,I5},{I2,I4,I7},{I2,I5,I7},{I3,I5,I7},{I4,I5,I7},而我们的方法先统计各个频繁2项集中每个元素出现的次数。I1:出现3次,I2:出现4次,I3:出現1次,I4:出现2次,I5:出现4次,I6:出现1次,I7:出现3次。因此,可以从频繁2项集中,把包含I3和I6的项去掉。只需要进行21次连接运算,产生候选频繁3项集8个:

{I1,I2,I4},{I1,I2,I5},{I1,I2,I7},{I1,I5,I7},{I2,I4,I5},{I2,I4,I7},{I2,I5,I7},{I4,I5,I7},产生的候选频繁项目集就大为减少,这就极大地提高了查找频繁项目集的效率。

3 实验对比分析

为了验证我们的改进效果,我们将改进的算法与传统算法进行了时间对比实验,实验数据我们选取了印度地铁从2012.10.2到2017.5.17的33750条数据,记录了每个小时的乘车人数以及当时的天气状况,包括出行日期、是否节假日、空气指数、湿度、风速、风向、可见度、降雨指数、降雪指数、温度、天气类型,以及乘客人数,如图1所示。

先后使用传统的Apriori算法与改进算法,计算在不同支持度下,挖掘频繁项集需要的时间。最终实验挖掘结果如图2所示。

从实验的对比结果可以看出改进的Apriori算法挖掘出频繁项目集的速度比传统的Apriori算法快了很多,速度最高提高了26%,特别是在支持度较低的情况下,优势十分的明显。

4 结束语

本文对传统的关联规则算法Apriori进行了改进,更加精确有效的产生了候选频繁项目集,提高了关联规则挖掘的效率。最后使用改进的算法对地铁出行数据进行了挖掘,分析发现,从时间来看雨雪类天气对地铁客流的影响在周末和上下班的高峰期影响较大[8],从空间来看从城市的中心到郊区,天气因素对地铁客流的影响在逐步减弱,地铁出行无规律的人群等容易受到极端天气因素的影响。因此,我们可以通过对天气数据分析来预判地铁客流的变化情况,提前做好科学的预案,保障地铁交通畅通、高效运行。特别是在商业集中的景点,上下班的高峰时段,密切留意天气的变化情况,如果发现客流量异常等突发情况[9],及时采取应急处置预案。保证地铁的高效运营。

参考文献(References):

[1] 贾熹滨,叶颖婕,陈军成.基于关联规则的交通事故影响因素的挖掘[J].计算机科学,2018.S1.

[2] 乔春凯,赵佳文.基于时序关联规则挖掘的交通拥堵预测研究[J].科技创新与应用,2017.1.

[3] 王平水.关联规则挖掘算法研究[J].计算机工程与应用,2010.46(30):115-116

[4] 郑淑鉴,杨敬锋.国内外交通拥堵评价指标计算方法研究[J].公路与汽运,2014.1.

[5] 刘丽娟.改进的Apriori算法的研究及应用[J].计算机工程与设计,2017.12.

[6] 关联规则算法优化研究与实现[J].世界科技研究与发展,2010.3.

[7] 张健,刘韶涛.事务约简和2项集支持度矩阵快速剪枝的Apriori改进算法[J].华侨大学学报(自然科学版),2017.5.

[8] 梁晨,熊萍.基于地铁运营大数据的乘客出行效用分析[J].交通与运输,2020.S2:149-154

[9] 陈东洋,陈德旺,陈开河,肖李德,江世雄.基于客流大数据分析和支持向量回归的地铁乘客出行时间预测研究[J].现代城市轨道交通,2020.9:70-76

猜你喜欢

关联规则算法
基于MapReduce的改进Eclat算法
Travellng thg World Full—time for Rree
进位加法的两种算法
基于增强随机搜索的OECI-ELM算法
基于Apriori算法的高校学生成绩数据关联规则挖掘分析
基于关联规则和时间阈值算法的5G基站部署研究
关联规则挖掘Apriori算法的一种改进
基于关联规则的计算机入侵检测方法
一种改进的整周模糊度去相关算法