代码之家  ›  专栏  ›  技术社区  ›  leon

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

  •  27
  • leon  · 技术社区  · 11 年前

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

    我在以下位置找到了一个模式挖掘框架: http://www.philippe-fournier-viger.com/spmf/index.php?link=algorithms.php

    我已经尝试了几种算法,BIDE+算法表现最好。

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

    有人能解释一下“封闭”序列模式和开放序列模式的定义吗?

    3 回复  |  直到 6 年前
        1
  •  52
  •   Phil    7 年前

    很高兴你用我的 SPMF software .

    这个 支持顺序模式 是包含序列模式的序列数。

    A. 频繁序列模式 是至少出现在序列数据库的“minsup”序列中的模式,其中 苏格兰议会议员 是由用户设置的参数。

    A. 频繁闭合序列模式 是一种频繁的顺序模式,因此它不包括在具有完全相同支持的另一个顺序模式中。

    算法,例如 前缀跨度 发现频繁的顺序模式。算法,例如 坐浴盆 +发现频繁的闭合序列模式。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摄氏度 不是封闭的顺序模式,因为它包含在较大的顺序模式中 b c d 具有相同的支撑。

    b c d公司 支持2。它也不是一个封闭的序列模式,因为它包含在一个更大的序列模式中 b c d e 具有相同的支撑。 b c d e公司 是一个封闭的顺序模式,因为它不包括在具有相同支持的任何其他顺序模式中。

    顺便说一句,你也可以查看我关于 sequential pattern mining 。它很好地介绍了这个主题和不同的算法。

        2
  •  2
  •   babalu    11 年前
        3
  •  1
  •   Has QUIT--Anony-Mousse    11 年前

    谷歌搜索“已关闭的频繁项目集”。将会有大量的页面来解释这一点,任何数据挖掘书籍也是如此(寻找APRIORI算法)。

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

    对于大多数用例来说,只关注最大项集或封闭项集就足够了。