1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 数据挖掘算法之关联规则挖掘Apriori算法详细过程

数据挖掘算法之关联规则挖掘Apriori算法详细过程

时间:2019-12-12 07:04:27

相关推荐

数据挖掘算法之关联规则挖掘Apriori算法详细过程

关联规则挖掘的概念

关联规则挖掘就是寻找隐藏在给定的数据记录集中数据项之间的相互依赖关系,反映了数据之间的密切程度。

关联规则的种类

简单关联

买面包的顾客中,有90%的可能性同时也会购买牛奶

时序关联

买汽车的顾客中,有70%的可能性后面还会购买车内用品

支持度与置信度

支持度(supp)

在 数据库D 中A、B、C三项同时出现的比率

置信度(conf)

在A出现的情况下,B、C也出现的比率

或在A、B都出现的情况下,C出现的比率

频繁项集

所有支持度不小于用户设定的最小支持度的项集称为频繁项集

Apriori定理

频繁项集的所有非空子集也都必须是频繁的

Apriori算法关联规则挖掘详细过程

以用户购买商品为例,分析用户的购买行为

用户购买商品记录

首先设定最小支持计数为2,最小支持度为2/5=40%,最小支持度根据实际情况人为设定,一般不能取得太小,否则挖掘得到的结果会没有太大意义。

第1步:扫瞄所有的事务D,统计每个项(每件商品)的出现次数,产生候选1-项集的集合C1

C1

第2步:通过比较,将C1中支持度计数不小于最小支持度(2)的候选1-项集选出(这里删除面包/雨伞/可口可乐/洗衣粉),产生频繁1-项集的集合L1

L1

第3步:利用自身连接L1 X L1产生候选2-项集的集合C2,扫瞄所有的事务D,统计C2中每个候选项集的支持度计数

C2

第4步:通过比较,将C2中支持度计数不小于最小支持度(2)的候选2-项集选出,产生频繁2-项集的集合L2

L2

第5步:利用自身连接L2 X L2,产生候选3-项集的集合C3,重复上述过程,直至产生的候选项集不满足Apriori定理。此处由于候选3-项集为空, 频繁2-项集为最终结果

举个例子帮大家理解为什么候选3-项集为空,比如说L2 X L2得到其中的一个3 -项集是{啤酒,尿布,牛奶},Apriori定理说频繁项集的所有非空子集也都必须是频繁的,{啤酒,尿布,牛奶}包括三个子集{啤酒,尿布},{啤酒,牛奶},{尿布,牛奶},其中{啤酒,尿布},{啤酒,牛奶}是频繁的,因为它们都出现在了L2中,但是{尿布,牛奶}不是频繁的,因此3 -项集是{啤酒,尿布,牛奶}不满足Apriori定理,其余理解类似。

关联规则产生:据以上结果,关联规则的产生如下

1. 啤酒→尿布,置信度= 3/4= 75%

2. 尿布→啤酒,置信度= 3/4= 75%

3. 牛奶→啤酒,置信度= 2/2= 100%

4. 啤酒→牛奶,置信度= 2/4= 50%

5. 尿布→婴儿爽身粉,置信度= 2/4= 50%

6. 婴儿爽身粉→尿布,置信度= 2/2= 100%

置信度计算举例啤酒→尿布,{啤酒,尿布}一起在原始购买记录中共出现了3次,而啤酒单独在原始购买记录中共出现了4次,啤酒→尿布置信度={啤酒,尿布}一起出现的次数/啤酒单独出现的次数。

有效规则:据所定最小置信度阈值的不同,可得有效的规则。置信度越大,表明关联规则越强。

“牛奶→啤酒”和“婴儿爽身粉→尿布”都是强关联规则,结果表明,购买牛奶的用户于此同时基本都还会购买啤酒,购买了婴儿爽身粉的用户于此同时也基本还会购买尿布。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。