闭序和开序列模式挖掘算法的区别

时间:2013-04-22 10:57:15

标签: pattern-matching data-mining sequential apriori

我想使用一些算法来挖掘我的日志数据。

我在http://www.philippe-fournier-viger.com/spmf/index.php?link=algorithms.php

上找到了一个模式挖掘框架

我尝试了几种算法,BIDE +算法表现最佳。

BIDE +算法用于从序列数据库中挖掘频繁闭合的序列模式。

有人可以解释关于“封闭”顺序模式和开放模式的定义吗?

3 个答案:

答案 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算法)也是如此。

“已关闭”表示没有更大的项目集与相同的支持。可以有更大的项目集,但它们必须具有较低的支持。

对于大多数用例,仅查看最大或闭项集是足够的。