Apriori算法实例

上一个章节主要是关联规则以及Apiori算法的一些基本概念。

以下通过Apriori图解实例对Apriori算法进行分析:

例:最小支持度阈值为2

1、找出频繁项集

交易数据库D

交易号

项集合

T100 

I1I2I5 

T200 

I2I4 

T300 

I2I3 

T400 

I1I2I4 

T500 

I1I3 

T600 

I2I3 

T700 

I1I3 

T800 

I1I2I3I5 

T900 

I1I2I3 


Lk-1用于产生候选Ck

扫描数据库D,对每个候选进行计数。并得到候选C1

项集

支持度计数

I1

6

I2

7

I3

6

I4

2

I5

2


比较候选支持度计数与最小值尺度计数,找出频繁1项集的集合L1

项集

支持度计数

I1

6

I2

7

I3

6

I4

2

I5

2


由L1产生候选C2

项集

I1I2

I1I3

I1I4

I1I5

I2I3

I2I4

I2I5

I3I4

I3I5

I4I5

扫描D,对每个C2候选进行计数。

项集

支持度计数

I1I2

4

I1I3

4

I1I4

1

I1I5

2

I2I3

4

I2I4

2

I2I5

2

I3I4

0

I3I5

1

I4I5

0

比较候选支持度和最小支持度得到集合L2

项集

支持度计数

I1I2

4

I1I3

4

I1I5

2

I2I3

4

I2I4

2

I2I5

2


再通过L2得到候选C3

项集

I1I2I3

I1I2I5

产生C3的连接与剪枝步骤如下 不了解JOIN运算请点击

连接:C3=L2 JOIN L2=
{{I1,I2}, {I1,I3}, {I1,I5}, {I2,I3}, {I2,I4}, {I2,I5}} JOIN {{I1,I2}, {I1,I3}, {I1,I5}, {I2,I3}, {I2,I4}, {I2,I5}}

 ={{I1,I2,I3}, {I1,I2,I5}, {I1,I3,I5}, {I2,I3,I4},{I2,I3,I4}, {I2,I3,I5} ,{I2,I4,I5}}。

剪枝:{I1,I2,I3}的2-项子集是{I1,I2}, {I1,I3}和{I2,I3}。
{I1,I2,I3}的所有2-项子集都是L2的元素。因此,保留{I1,I2,I3}在C3中。
{I2,I3,I5}的2-项子集是{I2,I3}, {I2,I5}和{I3,I5}。
{I3,I5}不是L2的元素,因而不是频繁的。因此,由C3中删除{I2,I3,I5}。
剪枝后C3= {{I1,I2,I3}, {I1,I2,I5}}。

























你可能感兴趣的:(数据挖掘,Apriori算法)