算法作用:寻求哪些因素之间是强相关的
3、假设现有如下表所示的一个事务数据库,数据库中有10个事务,即|D|=10。假定最小支持度minsupport=20%,最小置信度minconfidence=65%,利用Apriori算法寻找D中的频繁项集,并由找到的频繁项集产生强关联规则。
其主要思路如下图所示:
算法流程:
- 首先对数据库中进行一次扫描,统计每一个项出现的次数,形成候选1-项集;
- 根据minsupport阈值筛选出频繁1-项集;
- 重复上述流程,直到候选项集为空;
最小支持度决定了 每一步哪些项会被舍弃。(即这边共有10项,如果每一步小于2的话就会被舍弃)
TID | 项列表 |
T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 | I1,I2,I5 I1,I2 I2,I4 I1,I2,I4 I1,I3 I1,I2,I3,I5 I1,I2,I3 I2,I5 I2,I3,I4 I3,I4 |
解:minsupport=20%
minconfidence=65%
For{I1,I2,I3}:
Confidence(I1I3->I2) =2/3=66.6%>65%
Confidence(I2I3->I1) =2/3=66.6%>65%
这一步置信度怎么理解?
置信度(A–>B)= 同时包含A和B的元组数/包含A的元组数
例子与计算方法(以此类推)
I1I3->l2,即同时包含I2, 底数为I1 I3的总和
我们可以从下边的表看到,总共有3项满足 I1 I3 同时出现,其中两项里边有I2,而标红的这个里边没有I2,所以 是 2/3
TID | 项列表 |
T1 T2 T3 T4 T5 T6 T7 T8 T9 T10 | I1,I2,I5 I1,I2 I2,I4 I1,I2,I4 I1,I3 I1,I2,I3,I5 I1,I2,I3 I2,I5 I2,I3,I4 I3,I4 |
For{I1,I2,I5}:
Confidence(I1I5->I2) =2/2=100%>65%
Confidence(I2I5->I1) =2/3=66.6%>65%
Confidence(I5->I1,I2) =2/3=66.6%>65%