广义序列模式算法 MapReduce
我在找一个关于广义序列模式算法(GSP)的例子实现,想看看具体的代码。这个算法的介绍在维基百科上有,链接是http://en.wikipedia.org/wiki/GSP_Algorithm。
虽然维基百科上有伪代码,但看起来有点复杂,我想找一些真正的代码,最好是用Python或者Java写的。有谁知道好的参考资料吗?
我想先理解这个算法,然后可能会尝试在MapReduce的环境中实现它。维基百科提到使用计数器,这可能会比较复杂。
我这么做是因为我有一个事件图,其中的边是受时间限制的。一个序列是指一个节点连接到另一个节点,比如A到B发生在一个开始和结束的时间之间,而B到C则是在B结束后X时间发生。A到B到C就是这个序列,而且一个序列不能重复访问同一个节点超过一次。
2 个回答
1
SPMF是一个很不错的工具,它实现了很多算法。使用这个工具可以帮助我们节省很多时间。不过,我们需要对不同的算法进行性能比较,比如广义序列模式(GSP),这是在序列模式挖掘中一个很重要的算法。
1
如果你想要一些关于 GSP、PrefixSpan、SPADE、SPAM 以及其他很多算法的Java代码,可以去这个网站看看:http://www.philippe-fournier-viger.com/spmf/
然后你可以看看这些代码是否可以改造成一个map-reduce算法。