我想知道是否可以在挖掘关联规则中自动确定最小支持度和最小置信度?如果是这样,任何指向资源的提示或指针都会很棒。
1 回答
是的,有一些方法可以自动确定 minsup 和 minconf 阈值。
但首先,让我告诉您如何选择 minsup 和 minconf 参数。选择它们取决于您的数据。
对于最低支持,我在某些数据上使用 80%。对于其他一些数据,我使用 0.05 %。这一切都取决于数据集。通常,我从一个高值开始,然后减小这些值,直到找到一个能够生成足够模式的值。
对于分钟。confidence,它更容易一些,因为它代表了您对规则的信心。所以通常,我使用 60 % 之类的东西,因为我对真正少于 60 % 时间的规则不感兴趣。但这也取决于数据。
在性能方面,当 minsup 较高时,您会发现模式较少并且算法更快。对于 minconf,当它设置得更高时,模式会更少,但可能不会更快,因为许多算法不使用 minconf 来修剪搜索空间。所以很明显,设置这些参数也取决于你想要多少规则。
如果不想使用 minsup 参数,可以使用top-k 关联规则挖掘算法。在这种情况下,例如,您将指定 k=1000,算法将以给定的最小置信度发现 1000 个最常见的规则。我为关联规则挖掘设计了一种名为TopKRules的算法。您可以从SPMF 开源数据挖掘库中下载源代码,该库提供了许多关联规则和模式挖掘算法的实现。
自动设置 minsup 阈值的另一种解决方案是使用数学函数根据您拥有的数据量来设置它。您可以在此处查看我的博客文章作为如何执行此操作的示例。
其他一些工作试图找到设置 minsup 和 minconf 的解决方案。您可以在 Google Scholar 上找到它们。