我想使用一些算法来挖掘我的日志数据。
我在http://www.philippe-fournier-viger.com/spmf/index.php?link=algorithms.php
上找到了一个模式挖掘框架我尝试了几种算法,BIDE +算法表现最佳。
BIDE +算法用于从序列数据库中挖掘频繁闭合的序列模式。
有人可以解释关于“封闭”顺序模式和开放模式的定义吗?
答案 0 :(得分:43)
很高兴你使用我的SPMF software。
顺序模式的支持是包含顺序模式的序列数。
频繁序列模式是一种模式,至少出现在序列数据库的“minsup”序列中,其中 minsup 是用户设置的参数。
频繁关闭的顺序模式是一种频繁的顺序模式,因此它不包含在具有完全相同支持的另一个顺序模式中。
PrefixSpan 等算法可以找到频繁的序列模式。 BIDE 等算法可以找到频繁的闭合序列模式。 BIDE +通常比PrefixSpan快得多,因为它使用修剪技术来避免生成所有顺序模式。此外,闭合模式集通常比顺序模式集小得多,因此BIDE +的内存效率也更高。
另一个重要的事情是,闭合的序列模式是所有序列模式的紧凑和无损表示。这意味着闭合序列模式的集合通常要小得多,但它是无损的,这意味着它允许恢复整个序列模式集(没有信息丢失),这非常方便。
我可以给你一个简单的例子。
让我们考虑4个序列:
a b c d e
a b d
b e a
b c d e
让我们说minsup = 2.
b c
是一种频繁的序列模式,因为它出现在两个序列中(它有2个支持)。 b c
不是一个封闭的顺序模式,因为它包含在具有相同支持的更大的顺序模式b c d
中。
b c d
支持2.它也不是一个封闭的顺序模式,因为它包含在具有相同支持的更大的顺序模式b c d e
中。 b c d e
是一个封闭的顺序模式,因为它没有包含在具有相同支持的任何其他顺序模式中。
顺便说一下,您还可以查看我对sequential pattern mining的调查。它对这个主题和不同的算法进行了很好的介绍。
答案 1 :(得分:2)
答案 2 :(得分:1)
谷歌“关闭频繁项目集”。将会有大量的页面解释这一点,任何数据挖掘书(寻找APRIORI算法)也是如此。
“已关闭”表示没有更大的项目集与
对于大多数用例,仅查看最大或闭项集是足够的。