Apriori算法:频繁(k-1)子集意味着频繁吗?

时间:2011-02-20 19:10:47

标签: algorithm data-mining

我一直在盯着一本描述Apriori算法挖掘频繁项目集的书中的下一行,我似乎无法掌握它

请注意,给定候选k-itemset,我们只需检查其(k-1)子集是否频繁,因为Apriori算法使用了逐级搜索策略。

在上文中,候选人意味着潜在的频繁k项目集。

很明显,频繁k-itemset的(k-1)子集是频繁的,但即使所有(k-1)子集频繁,我也看不到其他含义。但也许我正在以错误的方式阅读?

2 个答案:

答案 0 :(得分:1)

“很明显,频繁k-itemset的(k-1)子集是频繁的,但即使所有(k-1)子集频繁,我也看不到其他含义。”

你是对的,另一个含义是不正确的。 (k-1)子集用于生成需要测试频率或支持的k项集(正如原始论文所称)。您需要测试对从(k-1) - 子集生成的k项集的支持。

原始论文非常易读且可用here。第1列有一个例子,这个想法非常清楚。

答案 1 :(得分:0)

另一个暗示是不正确的。但是如果一个子集不频繁,则项目集不会频繁。 APriori算法执行子集检查以消除一些不频繁的项集。但在那之后,仍然需要检查每个候选人的支持。为此,Apriori算法将扫描数据库。

如果你想更好地描述Apriori,我建议你查看这一章:

http://www-users.cs.umn.edu/~kumar/dmbook/ch6.pdf

它以非常简单的术语解释了Apriori,FPGrowth和关联规则挖掘。它比最初的Apriori文章更容易阅读。