大数据平台中关联挖掘算法及发展趋势探讨

(整期优先)网络出版时间:2018-12-22
/ 2

大数据平台中关联挖掘算法及发展趋势探讨

赵刚靳扬马倩杨大伟李凯

(国网新疆电力有限公司信息通信公司新疆乌鲁木齐830000)

摘要:在信息化时代,云计算和大数据技术为我们的生活、工作提供着重要支撑。面对庞大的数据规模,如何对其进行挖掘和运用是人们所要考虑的。云计算能够有效结合大数据挖掘的特点,不但能够有效缓解数据存储的压力,同时还能够将多个用户的数据进行融合存储并实现快速访问,Apriori算法就可以依据用户的兴趣内容对存储于云端的大数据进行挖掘。

关键词:大数据平台;关联挖掘算法;发展趋势

1关联规则挖掘的概念

首先给定两个数据集A,M={j1,j2,j3,…,jn},其中所有项都不相同,从这些项当中抽取部分项组成一个事务Q,M与Q之间的关系可以用公式Q⊆M来表示。假设每一个事务都有一个对应的标识符QID,一个项的集合用Y来表示,当有Y⊆M成立时,代表Y集合包含于事务M。对应的关联规则为C⇒D,其中C⊂M,D⊂M,同时还有C∩d=μ成立,当设定好的最小置信度阈值以及最小支持度阈值得以满足,才会有规则C⇒D成立,其对应的概率分别可以用来P(C∪D)和P(D|C)表示。实际上支持度就是C与D同时出现对应的概率,而置信度就是在C项集中出现了交易,同时在D项集当中也出现交易所对应的概率。关联规则中的挖掘问题实际上就是规定范围当中既能够满足最小置信度,又能够满足最小支持度的关联规则,其中规定范围指的就是事务数据库A。

2大数据内涵及其常见用法

大数据的内涵非常丰富,对其概念的定义也存在着各种不同的看法。在笔者看来,大数据挖掘技术是通过技术手段,对海量信息进行采集、整理、归类、分析、建模、总结,然后挖掘出潜藏于数据背后的价值的过程。大数据挖掘技术在近几年诞生并得到了飞速发展,在我国的一二线城市,其从业人员的平均工资已经远超其他行业,这更说明大数据挖掘技术已经逐渐的渗透到各行各业,其自身的发展也日趋成熟,应用前景之广也可见一斑。大数据在数据挖掘中常用的方法如下:

(1)数据关联分析:数据的关联分析,顾名思义,就是通常目标数据的特征,寻找数据和数据之间的内在关系,并对这种数据关系作出分析。

(2)聚类集合:聚类概念就是将一系列无规律的、没有任何关联的数据,通过一定的规则进行分类,形成不同的类群,集合则是类群的统称。

(3)趋势预估:趋势预估的一个重要前提,就是要在海量数据中寻找可以预测性信息,或是可以包含预测性信息的其他信息集合。

(4)数据特征总结:数据特征总结在一定程度上来说就是对数据进行概念上的描述和区分,通过对数据特征的总结归纳,形成一条数据的概念。

(5)误差分析:大数据挖掘技术对于误差的分析,往往是通过对数据库中的异常信息进行检测,从而找到其与参照对象之间的差异。

3关联规则挖掘过程

在对大数据进行挖掘的过程中,根据关联规则的概述可知,关联规则挖掘问题就是在事务数据库D中寻找满足最小支持度和最小置信度的关联规则。第一步找出所有的频繁项集,即发现所有的事务支持度大于最小支持度的项集。第二步由频繁项集产生强关联规则,即关联规则必须满足最小支持度和最小置信度。

4经典Apriori算法

4.1Apriori算法的基本思想

Apriori算法是挖掘布尔型关联规则频繁项集的经典算法,这种算法实际使用中最基本的一个思想就是合理使用逐层迭代的手段来实现对于数据库中相关内容的挖掘,也就是使用k_项集去探索(k+1)_项集。该算法在第一趟扫描数据库时,对项集中的每一个数据项计算其支持度,确定出满足最小支持度的频繁1_项集,记作L1。第二趟扫描时,首先以第一趟扫描得到的频繁1_项集作为候选项集Ck,之后通过对数据库中的相关数据进行扫描计算出候选集各自的支持度,最后从候选项集Ck中确定出满足最小支持度的频繁2_项集。以此类推迭代,直至不再有新的频繁项集产生为止。

4.2Apriori算法的具体实现过程

Apriori算法的具体实现过程:(1)通过扫描事务数据库D,计算出项集Ci的支持度,得到频繁项集的集合Li;(2)为了得到频繁k_项集Lk,先将频繁k-1_项集Lk-1与自身进行笛卡尔乘积连接,产生候选k_项集Ck;(3)候选k_项集Ck是频繁k_项集Lk的超集,所有的Lk都包含在Ck中。剪枝的工作就是将Ck中的非频繁项集删去,从而得出Lk。对数据库中的数据进行扫描,明确每一个候选项集各自的支持度,只有支持度不小于给定阈值的才是频繁项集,将非频繁项集从Ck中删掉得到频繁k_项集Lk。即若某候选非空子集不是频繁的,则该候选项集肯定也不是频繁的,可将其删除;(4)通过迭代扫描事务数据库D,从而计算出各个项集支持度,并将不满足的项集去掉。

4.3Apriori算法的性能分析

只有置信度和支持度都满足一定阈值时,所挖掘出来的关联规则才能够称作有效地规则。另外,随着处理的数据规模逐渐变大,假如仅仅开展简要的搜索那么就会形成非常多的规则,而这些规则中中有许多规则是无效的。基于频繁项集Apriori算法的优点是思路简单清晰,易于理解,通过递归,连接,剪枝操作生成频繁项集。但会存在以下缺点:

(1)Apriori算法是一种基于向下封闭属性的原理来获取频繁项集的手段,也就是说如果一个项集能够满足要求的支持度,那么这一项目中所包含的所有的非空子集都应该能够满足这一支持度要求。但是如果数据规模比较大,算法的效率就会降低。

(2)算法在执行过程中需要多次扫描数据库,对于数据量较小的数据库其性能降低的不是很明显。但是对于数据量较大的数据库,对于系统内存和I/O负载较重。

(3)算法通过设置支持度与置信度来控制挖掘出来的规则数量,若把支持度设置得过低,虽能够较完整地挖掘到有效的关联规则,但开销过大;若把支持度设置得过高,则无法保证算法的完整性。

4.4Apriori算法的优化

针对经典Apriori算法的性能缺点,根据其原理分析发现当进行扫描事务时可先删除其中不需要的候选项集、并实时进行数据压缩,这样可使扫描的效率更高,降低对计算机资源开销。

(1)基于减少扫描数据量的算法

AprioriTid算法、Sampling算法。AprioriTid算法是在Apriori算法的基础上演化得来的,该算法在每产生候选项集后构造一个Tid表,用来记录每条事务包含的候选项集,因此之后只是扫描上次生成的候选项集Tid表,同时还会计算出频繁项集的支持度,以减少扫描数据库的时间来提高算法的效率。AprioriTid算法的优点就是使用逐渐减小的Tid表替代原来的事务数据库。但是该算法的缺点是在循环的初始阶段,候选项集的个数是可能还大于数据项的个数,从而导致Tid表比原来的事务数据库还要大。

(2)基于减少候选项集数量的算法

DHP算法、FP-growth算法。DHP算法采用哈希表对候选项集修剪来降低算法的时间和空间开销。具体是利用哈希函数在计算k-1_项集时先粗略计算出k_项集的支持度,减少候选k_项集的数量,尤其是对候选2_项集的数量控制的较为明显,有效缩减了候选2_项集的规模和扫描事务数。FP-growth算法是先将数据库中的事务压缩到一颗频繁模式数FP-tree中,然后将这种压缩后的FP-tree分成一些条件数据库并分别挖掘。FP-growth算法的最大优点是只扫描一次数据库并且不产生庞大的候选项集,但对存储空间的要求比较高。

(3)基于数据集划分的算法

DIC算法也是采用分区的方法,将数据库划分成若干个分区并做标记,在计算项集时并行计算候选项集的支持度,因此就大大减少了I/O操作从而提高了算法效率。

结论

近年来,随着数据的快速增长,数据库中积累了大量数据,为查找所需信息带了很大困难,目前的数据库算法很难满足人们的需求。本文首先介绍了关联规则挖掘概念与关联规则种类,在其基础上,利用CD算法以及DD算法建立了算法的结构模型,并讨论了实现步骤,最后分析了关联规则挖掘算法在大数据中的应用结果。实践表明,该算法模型具有一定的可行性以及创新性。

参考文献:

[1]韩江.基于度特征的部分推导边抽样算法研究[D].武汉:华中科技大学,2017.

[2]金玲.城市多源异构关联型时空数据的可视分析[D].杭州:浙江大学,2017.

[3]吴小雄.基于关联规则的安全威胁感知方法研究[D].南京:南京理工大学,2017.