我试图了解用于数据挖掘的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还是仅写下F2?对我来说,F1不是“集合”。

然后,我被要求为我刚刚定义的频繁项目集创建关联规则,并计算它们的“置信度”数字,我得到以下信息:
Milk -> Beer = 100% confidence
Beer -> Milk = 80% confidence

F1的项目集放在这里似乎是多余的,因为它们都会有100%的置信度,无论它们是否实际上不“关联”任何东西,这就是我现在质疑F1是否确实是“频繁”的原因。

最佳答案

如果支持的大小合适,则认为大小为1的项目集很频繁。 但是在这里,您必须考虑最小阈值。例如,如果您的示例中的最小阈值 2 ,则将不考虑 F1 。但是,如果最小阈值 1 ,则必须这样做。

您可以看看herehere了解更多的想法和示例。

希望我能帮上忙。

10-08 14:49