2013-01-06 98 views
6

我想了解先验(篮)算法的基本原理在数据挖掘应用,频繁集和关联规则 - Apriori算法

这是最好的,我解释我跟一个例子具有并发症:

这里是一个事务性数据集:

t1: Milk, Chicken, Beer 
t2: Chicken, Cheese 
t3: Cheese, Boots 
t4: Cheese, Chicken, Beer 
t5: Chicken, Beer, Clothes, Cheese, Milk 
t6: Clothes, Beer, Milk 
t7: Beer, Milk, Clothes

最小支持度为上面是0.5或50%。

从上面的考虑,我交易数量显然是7,意为一个项集是“频繁”,它必须有4/7计数。因此,这是我的频繁项集1:

F1:

Milk = 4 
Chicken = 4 
Beer = 5 
Cheese = 4

然后我创建了候选人第二细化(C2),并把范围缩小到:

F2:

{Milk, Beer} = 4

这是我困惑的地方,如果我被要求显示全部频繁项目组我是否全部写下F1F2或者只是F2F1对我来说不是“套”。

我接着问到创建我刚才定义的频繁项集关联规则,并计算出它们的“自信”的数字,我得到这个:

Milk -> Beer = 100% confidence 
Beer -> Milk = 80% confidence

这似乎是多余的把F1的项目集在这里因为他们都会有100%的信心,不管实际上什么都不“联合”,这就是我现在质疑F1是否确实“频繁”的原因?

+1

空集也是一个集合。并且有一组有1个元素。它们可以是频繁项目集,而不会提供有用的*关联规则*。 –

回答

2

大小为1的商品集在其支持适合的情况下被认为是频繁的。 在这里你必须考虑最低门槛。就像你的最小阈值在你的例子中是那么F1将不被考虑。但如果最低门槛是那么你必须。

你可以看看herehere了解更多的想法和例子。

希望我帮忙。

+0

在这种情况下,未指定最小阈值,是否认为'F1'项目频繁?他们是否应该在“关联规则”中有所体现,甚至认为他们除了自己以外别无其他? –

+1

不幸的是。但是,没有最低门槛,没有使用先验。因为这会导致错误的规则。最低门槛总是由数据分析师决定。 –

0

如果最小支持阈值(minsup)是4/7,那么如果出现在7个以上的4个事务中,那么您应该在频繁项目集中包含单个项目。因此,在你的榜样,你应该包括他们:

牛奶= 4 鸡= 4 啤酒= 5 奶酪= 4

对于关联规则,它们具有形式X ==> Y其中X和Y是不相交的项目集,并且通常假定X和Y不是空集(这是Apriori所假设的)。因此,您至少需要两个项目才能生成关联规则。