。
精选资料,欢迎下载
Apriori
算法:使用候选项集找频繁项集
Apriori
算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。
Apriori
使用一种称作逐层搜索的迭代方法,
k-
项集用于探索
(k+1)-
项集。
首先,
找出频繁
1-
项集的集合。该集合记作
L1
。
L1
用于找频繁
2-
项集的集合
L2
,而
L2
用于找
L3
,如此下
去,直到不能找到频繁
k-
项集。找每个
Lk
需要一次数据库扫描。
该算法利用了一个基本性质:
一个频繁项目集的任一子集必定也是频繁项目集,一个非频
繁项目集的任一超集必定也是非频繁项目集。
Apriori
算法:使用候选项集找频繁项集
一个
Apriori
的具体例子。该例基于图
6.2
的
AllElectronics
的事务数据库。数据库中
有
9
个事务,即
|D|=9
。
Apriori
假定事务中的项按字典次序存放。我们使用图
6.3
解释
Apriori
算法发现
D
中的频繁项集。
Apriori
算法:使用候选项集找频繁项集
“
如何将
Apriori
性质用于算法?
”
为理解这一点,我们必须看看如何用
Lk-1
找
Lk
。
下面的两步过程由连接和剪枝组成。
1.
连接步:为找
Lk
,通过
Lk-1
与自己连接产生候选
k-
项集的集合。该候选项集的集合记
作
Ck
。
2.
剪枝步:
Ck
是
Lk
的超集;即,它的成员可以是,也可以不是频繁的,但所有的频繁
k-
项集都包含在
Ck
中。
注意,
Apriori
算法使用逐层搜索技术,给定
k-
项集,我们只需要检查它们的
(k-1)-
子集
是否频繁。