Apriori 算法 - 选择交易列表

Posted

技术标签:

【中文标题】Apriori 算法 - 选择交易列表【英文标题】:Apriori algorithm - selecting list of transactions 【发布时间】:2011-03-08 15:11:41 【问题描述】:

我正在尝试使用先验算法推断客户帐户上发生的错误。所以我有一个像这样的错误表:

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 的行项目?)

【问题讨论】:

【参考方案1】:

对于最小置信度和支持度阈值,最好从较高的值开始,如果您没有获得足够的结果,则将它们降低。

但我认为你应该保持高信心,否则结果将无用。例如,您可能希望有至少 50 % 的置信度。

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

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

【讨论】:

以上是关于Apriori 算法 - 选择交易列表的主要内容,如果未能解决你的问题,请参考以下文章

Frequent Pattern 挖掘之一(Aprior算法)(转)

机器学习实战精读--------Apriori算法

第九章 数据关联规则分析算法——基于Apriori算法的关联项分析

Apriori算法

Apriori算法 - 没有得到python中的规则

R语言关联规则模型(Apriori算法)挖掘杂货店的交易数据与交互可视化