Apriori algorithm的最低置信度和最低支持值的适当值是什么?你怎么能调整它们?它们是固定值,还是在运行算法期间会发生变化?如果您之前使用过此算法,您使用了什么值?
答案 0 :(得分:8)
我建议从支持值0.05和置信度0.80开始。但我同意您应该了解它们究竟代表什么,以便能够恰当地定义它们。 对于规则A => B(其中A,B非空集)
Support (A ⇒ B): s = P(A, B)
Confidence (A ⇒ B): c = P(B | A)
Lift (A ⇒ B): L = c/P(B)
提升对于评估规则的趣味性很重要(因为您通常会提出数百条规则)。已经提出了20多种有趣的措施。这些包括Ф-系数,kappa,互信息,J-度量和基尼指数。我个人根据J-measure命令我的规则。
J.measure (A ⇒B): J = s/c * (c*log(L) + (1-c)*log((L-c)/L))
答案 1 :(得分:2)
您必须在运行算法之前设置minsup和minconf值,并且在挖掘过程中它们不会更改。
选择minsup参数取决于您的数据。
对于某些数据,我使用80%。对于其他一些数据,我使用0.05%。这一切都取决于数据集。通常,我从一个较高的值开始,然后我减少这些值,直到找到一个可以产生足够的图形的值。
为了自信,它更容易一些,因为它代表了您在规则中所需的信心。通常,我使用60%的东西。但它也取决于数据。
此外,如果您不想使用minsup参数,则可以使用top-k挖掘算法。在这种情况下,您将指定k = 1000,例如,算法将发现1000个规则,而不是使用minsup。我为关联规则挖掘设计了一种这样的算法。它被称为TopKRules,您下载source code。描述它的论文将很快出版。它只使用两个参数:k和minconf。