繁体   English   中英

执行市场篮子分析的高效算法

[英]Efficient algorithms to perform Market Basket Analysis

我想对零售电子商务数据集执行购物篮分析(或关联分析)。

我面临的问题是单月 330 万笔交易的庞大数据量。 我不能减少交易,因为我可能会错过一些产品。 下面提供数据结构:

Order_ID = 唯一交易标识符

Customer_ID = 下订单的客户的标识符

Product_ID = 客户已购买的所有产品的列表

日期 = 销售发生的日期

当我将此数据提供给 Python 中的 #apriori 算法时,我的系统无法处理运行所需的巨大 memory 要求。 它只需 100K 事务即可运行。 我有 16GB 内存。

非常感谢您提出更好(更快)算法的任何帮助。

我也可以使用 SQL 来解决数据大小问题,但我只会得到 1 个前件 --> 1 个后件规则。 有没有办法获得多集规则,例如 {A,B,C} --> {D,E} 即,如果客户购买产品 A、B 和 C,那么很有可能购买产品 D 和 E .

对于庞大的数据量,请尝试FP Growth ,因为它是对 Apriori 方法的改进 与 Apriori 相比,它也只循环数据两次。

from mlxtend.frequent_patterns import fpgrowth

然后只需更改:

apriori(df, min_support=0.6)

fpgrowth(df, min_support=0.6)

还有一项比较每种算法的研究,对于 memory 问题,我推荐: 评估 Apriori、FP 增长和 Eclat 关联规则挖掘算法或比较频繁模式挖掘算法的性能

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM