2011-03-08 24 views
1

我试图使用apriori算法推断客户帐户上发生的错误。所以我有一个错误的表像这样:Apriori算法 - 选择事务处理列表

 
error_id error_code cust_id 
1   M015   100 
2   M020   101 
3   M016   100 
4   M019   100 
5   M015   102 

...

我要建立以期望给什么错误M015。
(例如M015 - > ??)

问题是错误表包含数十万行项目,并且有数百个可能的错误代码。那么,我是否真的很低自信地运行我的算法以尽可能多地找回规则?或者,我是否缩小了错误数据库的范围,以仅包含包含我感兴趣的错误的“交易”?

(在这个例子中,例如,如果我在寻找规则M015,我应该限制交易表为CUST_ID 100和102只行项目?)

回答

0

,对于最小的信心和支持度阈值,它如果你没有得到足够的结果,最好从高价值开始,然后降低它们。

但我认为你应该保持高信心,否则结果将不会有用。例如,也许你希望有一个至少50%的信心。

是的,为了优化,您可以修改算法以仅搜索包含您感兴趣的项目的规则。这将使算法不会产生大量的规则。

但不要忘记,一个关联不是因果关系。如果要根据时间进行一些预测,可以使用“顺序规则挖掘算法”或“顺序模式挖掘算法”,而不是关联规则挖掘算法。