首页 > 编程知识 正文

数据关联规则分析算法优化,数据关联算法有哪些

时间:2023-05-04 22:20:53 阅读:225978 作者:322

数据关联规则(Associaton Rules,AR)是数据挖掘算法的重要目的之一,用于在海量数据中挖掘出具有价值的信息,通常在商业中用于数据与数据指尖的关系来产生更大的价值,典型的例子就是“啤酒与尿不湿”。

1、基于Apriori算法的关联分析

Apriori算法是关联规则分析中较为典型的频繁项集算法。

原理步骤:

(1)对数据中每一项数据进行频率次数统计;

(2)构成候选项集C1,计算每一项的支持度(频率次数/总数);

(3)根据给定的最小支持度值,对候选集进行筛选,得到频繁项集L1。即去掉支持度小于最小支持度的候选集;

(4)对频繁项集L1进行连接生成候选集C2,重复上述步骤,最终形成频繁K项集或者最大的频繁项集。

例如如果已知步骤2中的候选项集C1:

                                                                                       C1表

候选项集支持度牛奶0.5饼干0.75纸巾0.25矿泉水0.75口香糖0.75 假定最小支持度为0.5,排除矿泉水,对其他四项候选集进行连接,生成候选集C2,并计算其支持度。


候选项集支持度牛奶、饼干0.25牛奶、纸巾0.50牛奶、口香糖0.25饼干、纸巾0.50饼干、口香糖0.75纸巾、口香糖0.50 假定最小支持度为0.5,排除牛奶、饼干和牛奶、口香糖这两项,对其他四项候选集进行连接,生成候选集C3,并计算其支持度。一直重复以上步骤。得到最终的频繁项集

频繁项集 支持度饼干、纸巾、口香糖0.5 商店根究获得的这条数据可以判断饼干、纸巾和口香糖之间的关系很大,因此可以将这三种商品放在一起出售。

以上的算法步骤很简单,但存在一定的不足:

(1)在产生候选集连接项时会有很多的组合,其中有的组合可能存在无关的数据。

(2)每次计算项集的过程都会对原始数据表进行扫描,如果数据量较大时,cpu开销较大。

因此提出了改进的Apriori算法。

(1)将数据表进行压缩。由于要进行多次扫描,压缩后可以提升性能;

(2)利用哈希表的快速查找特征性对项集进行计数统计;

(3)合理选样。当数据样本过大时,通过不同的方法进行抽取分析。例如,如果根据七天的数据进行分析,可以抽取每条的数据,进行分析。

2、TF-Growth算法

虽然Apriori算法进行了改进,但是仍然要对原始数据进行不停的扫描,这样还是会影响性能。TF-Growth算法只对原始数据进行两次扫描,通过建立FP树,对原始数据进行压缩。FP树就是频繁模式树(Frequent Pattern Tree),包含一颗前缀树和一个频繁项头表,能后有效的加快关联数据分析。

3、Eclat算法

Eclat算法利用倒排索引思想,但并不是利用倒排索引进行快速查找,而是进行数据统计。利用倒排索引快速构建频繁索引项集。








版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。