Python中良好的“频繁序列挖掘”软件包?


14

除了MLLib中的FPM之外,是否有人在Python中使用(并喜欢)任何良好的“频繁序列挖掘”软件包?我正在寻找一个稳定的程序包,最好还是由人们维护。谢谢!

Answers:


6

我发现的唯一一个是:https : //github.com/bartdag/pymining

他们在BIDE那里有一个实现,但它不是维护的代码。

附言:我正在加入您的问题:-|


只是为了澄清,它没有实现BIDE来挖掘频繁的关闭序列。实际上,它实现了PrefixSpan,它可以挖掘所有频繁序列。PrefixSpan和BIDE共享相同的模式枚举框架,这就是为什么作者引用了BIDE论文。
Chuancong Gao

最后使用的是我的操作:philippe-fournier-viger.com/spmf-这是一个Java lib,但是我用python包装了它以满足我的需要
yossico

6

我正在积极维护Python 3中PrefixSpan和BIDE的有效实现,支持挖掘频繁和top-k(封闭)顺序模式。

https://github.com/chuanconggao/PrefixSpan-py


我想用javascript实现这些功能,但是我不完全了解这些算法的工作原理。能用简单的英语解释吗?
inf3rno

我建议您检查一下PrefixSpan的原始最小实现。它的核心部分仅占用15条线。gist.github.com/chuanconggao/4df9c1b06fa7f3ed854d5d96e2ae499f

谢谢!我将尝试将其翻译为js,但并非易事。:-) Afaik PrefixSpan根据前缀匹配的位置构建计划的数据库。我目前正在阅读有关BIDE的信息,这是一种更好的算法。
inf3rno

js和python集合之间有太多差异。我没有设法在js中重现代码。稍后再试。
inf3rno

不确定是否有帮助,但是我有另一个Scala版本的PrefixSpan。github.com/chuanconggao/PrefixSpan-scala但是,我强烈建议您在实施之前充分了解该算法。
Chuancong Gao

1

我过去使用过fim的fpgrowth函数,并且效果很好。但是,在Windows计算机上安装有点麻烦。这似乎是一个学术网站,所以我不确定他们是否会随着时间的推移对代码进行多次更新...




By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.