数据挖掘中的模式发现(六)挖掘序列模式

    xiaoxiao2021-03-26  35

    序列模式挖掘

    序列模式挖掘(sequence pattern mining)是数据挖掘的内容之一,指挖掘相对时间或其他模式出现频率高的模式,典型的应用还是限于离散型的序列。。

    其涉及在数据示例之间找到统计上相关的模式,其中数据值以序列被递送。通常假设这些值是离散的,因此与时间序列挖掘是密切相关的,但时间通常被认为是不同的活动。序列模式挖掘是结构化数据挖掘的一种特殊情况。

    基础概念

    为了帮助大家理解,我这里讲序列是如何产生的稍微描述一下。

    例如,一个事务数据库,一个事务代表一笔交易,一个单项代表交易的商品,单项属性中的数字记录的是商品ID

    一般为了方便处理,需要把数据库转化为序列数据库。方法是把用户ID相同的记录合并,有时每个事务的发生时间可以忽略,仅保持事务间的偏序关系。

    序列(Sequence)

    通常以SID表示,一个序列即是一个完整的信息流。每个序列由不同的元素按顺序有序排列,每个元素由不同项目(或者也可以称之为事件)组成,

    让我们将其符号化

    例:一条序列<(10,20)30(40,60,70)>有3个元素,分别是(10,20),30,(40,60,70);

    3个事务的发生时间是由前到后。其中项目10和项目20是同时发生的,所以处在同一个元素中。这条序列是一个6-序列。

    子序列(Subsequence)

    设序列 α=<a1a2an> ,序列 β=<b1b2bm> ai bi 都是元素。如果存在整数序列 J 1j1<j2<<jnm,使得 a1bj1 a2bj2 anbjn,则称序列 α 为序列 β 的子序列,又称序列 β 包含序列 α ,记为 αβ

    支持度

    序列 α 在序列数据库S中的支持度为序列数据库S中包含序列支持度的序列个数,记为Support( α )。

    给定最小支持度阈值 ξ ,如果序列 α 在序列数据库中的支持数不低于 ξ ,则称序列 α 为序列模式。

    长度为l的序列模式记为l-模式。

    序列模式挖掘:找出所有的频繁子序列,即该子序列在序列集中的出现频率不低于最小支持度阈值。

    例子:设序列数据库如下图所示,并设用户指定的最小支持度min-support = 2。

    序列 <a(bc)df> <script type="math/tex" id="MathJax-Element-22"> </script>是序列 <a(abc)(ac)d(cf)> <script type="math/tex" id="MathJax-Element-23"> </script>的子序列。

    序列 <(ab)c> <script type="math/tex" id="MathJax-Element-24"><(ab)c></script>是长度为3的序列模式, <a(abc)(ac)d(cf)> <script type="math/tex" id="MathJax-Element-25"> </script>中出现了2次, <(ad)c(bc)(ae)> <script type="math/tex" id="MathJax-Element-26"><(ad)c(bc)(ae)></script>出现了一次。

    转载请注明原文地址: https://ju.6miu.com/read-661132.html

    最新回复(0)