在 Weka 的 Apriori 算法中获取频率

Getting frequencies in Apriori algorithm in Weka

我正在尝试在 Weka 中应用 Apriori 算法。
维基百科有一个简单的例子 (Apriori algorithm):

alpha beta epsilon
alpha beta theta
alpha beta epsilon
alpha beta theta

由此table可以确定以下关联规则:

我将这些条目转换为 CSV 并添加了另一个属性行,这样我终于有了这个文件:

prod1,prod2,prod3
alpha,beta,epsilon
alpha,beta,theta
alpha,beta,epsilon
alpha,beta,theta

我将其加载到 Weka 并单击选项卡 "Associate",默认选择算法 "Apriori"。

结果我得到以下信息:

 1. prod2=beta 4 ==> prod1=alpha 4    conf:(1)
 2. prod1=alpha 4 ==> prod2=beta 4    conf:(1)
 3. prod3=epsilon 2 ==> prod1=alpha 2    conf:(1)
 4. prod3=theta 2 ==> prod1=alpha 2    conf:(1)
 5. prod3=epsilon 2 ==> prod2=beta 2    conf:(1)
 6. prod3=theta 2 ==> prod2=beta 2    conf:(1)
 7. prod2=beta prod3=epsilon 2 ==> prod1=alpha 2    conf:(1)
 8. prod1=alpha prod3=epsilon 2 ==> prod2=beta 2    conf:(1)
 9. prod3=epsilon 2 ==> prod1=alpha prod2=beta 2    conf:(1)
10. prod2=beta prod3=theta 2 ==> prod1=alpha 2    conf:(1)

但我也想要维基百科示例中的频率(见上文)。

Weka 给您的信心 (conf:(1)) 正是您想要的 "frequencies"。

如您所见,您的规则“50% 的集合具有 alpha、beta 也具有 epsilon”不在 Weka 的输出中。这是因为 Weka 列出了按置信度降序排列的规则。因此,要列出您的 50% 规则,您需要增加 Weka 的输出数量。

这可以通过增加 "numRules"(其默认值为 10,请参见下面的屏幕截图)来完成。对于您的特定示例,您还需要将 "minMetric" 从 0.9 降低到 0.5(或更低)。