38
1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà des motifs séquentiels (simples) 2 Outline Classical sequential pattern-mining methods GSP PrefixSpan Extensions to sequential pattern-mining Delay between events Event duration Relations between events with duration

Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

1

Data Mining

Temporal pattern mining: beyond (simple) sequential patterns

Fouille de motifs temporels :

au-delà des motifs séquentiels (simples)

2

Outline

 Classical sequential pattern-mining methods –  GSP

–  PrefixSpan

 Extensions to sequential pattern-mining –  Delay between events

–  Event duration

–  Relations between events with duration

–  …

Page 2: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

3

What Is Sequential Pattern Mining?

 Given a set of sequences (a long unique sequence), find the complete set of frequent subsequences

A sequence : < (ef) (ab) (df) c b >

SID sequence

10 <a(abc)(ac)d(cf)>

20 <(ad)c(bc)(ae)>

30 <(ef)(ab)(df)cb>

40 <eg(af)cbc>

4

Sequence Databases & Sequential Patterns

  Applications of sequential pattern mining

–  Customer shopping sequences:

 First buy computer, then CD-ROM, and then digital camera, within 3 months.

–  Medical treatments, natural disasters (e.g., earthquakes), science & eng. processes, stocks and markets, etc.

–  Telephone calling patterns, Weblog click streams

–  DNA sequences and gene structures

  Transaction databases, time-series databases vs. sequence databases

  Frequent patterns vs. (frequent) sequential patterns

Page 3: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

5

Sequential Pattern Mining: definitions

  Transaction: items bought by some client at a specific date T=<id-client, id-date, itemset>

  (Data) sequence: list of a client’s itemsets ordered by date S=<s1=itemset(T1), …, sn=itemset(Tn)>

  Sequence inclusion: s1=<a1a2…an> is included in s2=<b1b2…bm> (noted s1 < s2) iff there exist i1<i2<…<in such that a1⊆bi1, a2⊆bi2, …, an⊆bin

  Support: –  A client supports a sequence s if s belongs to this client data

sequence

–  The support of a sequence is the ratio of clients that support this sequence

6

The Apriori Property of Sequential Patterns

  A basic property: Apriori (Agrawal & Sirkant’94)

–  If a sequence S is not frequent

–  Then none of the super-sequences of S is frequent

–  E.g, <hb> is infrequent so do <hab> and <(ah)b>

<a(bd)bcb(ade)> 50

<(be)(ce)d> 40

<(ah)(bf)abf> 30

<(bf)(ce)b(fg)> 20

<(bd)cb(ac)> 10

Sequence Seq. ID

Page 4: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

8

Challenges on Sequential Pattern Mining

  A huge number of possible sequential patterns are hidden in databases

  A mining algorithm should

–  find the complete set of patterns, when possible, satisfying the minimum support (frequency) threshold

–  be highly efficient, scalable, involving only a small number of database scans

–  be able to incorporate various kinds of user-specific constraints

9

Sequential Pattern Mining Algorithms

  Concept introduction and an initial Apriori-like algorithm

–  Agrawal & Srikant. Mining sequential patterns, ICDE’95

  Apriori-based method: GSP (Generalized Sequential Patterns: Srikant &

Agrawal @ EDBT’96)

  Pattern-growth methods: FreeSpan & PrefixSpan (Han et al.@KDD’00; Pei,

et al.@ICDE’01)

  Vertical format-based mining: SPADE (Zaki@Machine Leanining’00)

  Constraint-based sequential pattern mining (SPIRIT: Garofalakis, Rastogi,

Shim@VLDB’99; Pei, Han, Wang @ CIKM’02)

  Mining closed sequential patterns: CloSpan (Yan, Han & Afshar @SDM’03)

Page 5: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

10

GSP—Generalized Sequential Pattern Mining

  GSP (Generalized Sequential Pattern) mining algorithm

–  proposed by Agrawal and Srikant, EDBT’96   Method

–  generate frequent length-1 candidates from frequent items in DB –  generate frequent length-2 candidates by self-joining 2 frequent

length-1 patterns: <(A) (A)>, <(A) (B)>, <(A B)> –  for each level (i.e., sequences of length-k) do

 scan database to collect support count for each candidate sequence

 generate candidate length-(k+1) sequences from length-k frequent sequences using Apriori (self-join)

–  repeat until no frequent sequence or no candidate can be found   Major strength: Candidate pruning by Apriori   Self-join:

–  < (A B) (C ) > < (A B) (C ) > –  < (B) (C D)> < (B) (C ) (E)>

–  < (A B) (C D) > < (A B) (C ) (E) >

11

Finding Length-1 Sequential Patterns

  Examine GSP using an example

  Initial candidates: all singleton sequences –  <a>, <b>, <c>, <d>, <e>, <f>, <g>, <h>

  Scan database once, count support for candidates

<a(bd)bcb(ade)> 50

<(be)(ce)d> 40

<(ah)(bf)abf> 30

<(bf)(ce)b(fg)> 20

<(bd)cb(ac)> 10

Sequence Seq. ID

Cand Sup

<a> 3

<b> 5

<c> 4

<d> 3

<e> 3

<f> 2

<g> 1

<h> 1

Page 6: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

12

GSP: Generating Length-2 Candidates

<a> <b> <c> <d> <e> <f>

<a> <aa> <ab> <ac> <ad> <ae> <af>

<b> <ba> <bb> <bc> <bd> <be> <bf>

<c> <ca> <cb> <cc> <cd> <ce> <cf>

<d> <da> <db> <dc> <dd> <de> <df>

<e> <ea> <eb> <ec> <ed> <ee> <ef>

<f> <fa> <fb> <fc> <fd> <fe> <ff>

<a> <b> <c> <d> <e> <f>

<a> <(ab)> <(ac)> <(ad)> <(ae)> <(af)>

<b> <(bc)> <(bd)> <(be)> <(bf)>

<c> <(cd)> <(ce)> <(cf)>

<d> <(de)> <(df)>

<e> <(ef)>

<f>

51 length-2 Candidates

Without Apriori property, 8*8+8*7/2=92 candidates Apriori prunes

44.57% candidates

13

The GSP Mining Process

<a> <b> <c> <d> <e> <f> <g> <h>

<aa> <ab> … <af> <ba> <bb> … <ff> <(ab)> … <(ef)>

<abb> <aab> <aba> <baa> <bab> …

<abba> <(bd)bc> …

<(bd)cba>

1st scan: 8 cand. 6 length-1 seq. pat.

2nd scan: 51 cand. 19 length-2 seq. pat. 10 cand. not in DB at all

3rd scan: 46 cand. 19 length-3 seq. pat. 20 cand. not in DB at all

4th scan: 8 cand. 6 length-4 seq. pat.

5th scan: 1 cand. 1 length-5 seq. pat.

Cand. cannot pass sup. threshold

Cand. not in DB at all

<a(bd)bcb(ade)> 50

<(be)(ce)d> 40

<(ah)(bf)abf> 30

<(bf)(ce)b(fg)> 20

<(bd)cb(ac)> 10

Sequence Seq. ID

Page 7: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

14

Candidate Generate-and-test: Drawbacks

  A huge set of candidate sequences generated.

–  Especially 2-item candidate sequence.

  Multiple Scans of database needed.

–  The length of each candidate grows by one at each

database scan.

  Inefficient for mining long sequential patterns.

–  A long pattern grow up from short patterns

–  The number of short patterns is exponential to the

length of mined patterns.

15

PrefixSpan: prefix-projected pattern growth

  Divide and conquer strategy

  Given a frequent prefix α (initially α=null), mine S|α the projected database,

to find frequent 1-pattern. Form the frequent pattern α’=α.b. Then, mine S|α’,

etc.

–  Original DB is recursively projected by item prefixes to yield smaller databases

–  Each projected database can be mined separately

  Prefix: the sequence s2=<e’1e’2…bm> is a prefix of the sequence s1=<e1e2…en> (m<n) iff

–  e’i=ei for 1 ≤ i ≤ m-1

–  e’m⊆em

–  <e’’mem+1…en> is a suffix (postfix) of s1

Page 8: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

16

Prefix and Suffix (Projection)

  <a>, <aa>, <a(ab)> and <a(abc)> are prefixes of

sequence <a(abc)(ac)d(cf)>

  Given sequence <a(abc)(ac)d(cf)>

Prefix Suffix (Prefix-Based Projection)

<a> <(abc)(ac)d(cf)>

<aa> <(_bc)(ac)d(cf)>

<a(ab)> <(_c)(ac)d(cf)>

17

Mining Sequential Patterns by Prefix Projections

  Step 1: find length-1 sequential patterns

–  <a>:4, <b>:4, <c>:4, <d>:3, <e>:3, <f>:3

  Step 2: divide search space. 6 subsets according to the 6 prefixes a, b, c, d, e, f

  Step 3: Find subsets of sequential patterns by constructing corresponding projected databases and mine each recursively

SID sequence

10 <a(abc)(ac)d(cf)>

20 <(ad)c(bc)(ae)>

30 <(ef)(ab)(df)cb>

40 <eg(af)cbc>

Page 9: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

18

Finding Seq. Patterns with Prefix <a>

  Only need to consider projections w.r.t. <a>

–  <a>-projected database: <(abc)(ac)d(cf)>, <(_d)c(bc)(ae)>, <(_b)(df)cb>, <(_f)cbc>

  Find local frequent patterns in <a>-projected database: <a>:2, <b>:4, <(_b)>:2, <c>:4, <d>:2, <f>:2

  Yields all the length-2 seq. pat. Having prefix <a>: <aa>, <ab>, <(ab)>, <ac>, <ad>, <af>

–  Further partition into 6 subsets

 Having prefix <aa>;

 …

 Having prefix <af>

–  <aa>-projected database: <(_bc)(ac)d(cf)> and <(_e)>

SID sequence

10 <a(abc)(ac)d(cf)>

20 <(ad)c(bc)(ae)>

30 <(ef)(ab)(df)cb>

40 <eg(af)cbc>

22

Completeness of PrefixSpan

SID sequence

10 <a(abc)(ac)d(cf)>

20 <(ad)c(bc)(ae)>

30 <(ef)(ab)(df)cb>

40 <eg(af)cbc>

SDB

Length-1 sequential patterns <a>, <b>, <c>, <d>, <e>, <f>

<a>-projected database <(abc)(ac)d(cf)> <(_d)c(bc)(ae)> <(_b)(df)cb> <(_f)cbc>

Length-2 sequential patterns <aa>, <ab>, <(ab)>, <ac>, <ad>, <af>

Having prefix <a>

Having prefix <aa>

<aa>-proj. db … <af>-proj. db

Having prefix <af>

<b>-projected database … Having prefix <b>

Having prefix <c>, …, <f>

… …

Page 10: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

23

PrefixSpan Algorithm

PrefixSpan(α, i, S|α)

1.  Scan S|α once, find the set of frequent items b such that

•  b can be assembled to the last element of α to form a sequential pattern; or

•  <b> can be appended to α to form a sequential pattern.

2.  For each frequent item b, appended it to α to form a sequential pattern α’, and output α’;

3.  For each α’, construct α’-projected database S|α’, and call PrefixSpan(α’, i+1,S|α’).

24

Performance on Data Set C10T8S8I8

Page 11: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

25

Performance on Data Set Gazelle

28

Extensions de la fouille de motifs séquentiels

  Objets temporels

–  Événements temporels datés ou ordonnés dans le temps (liés par les relation {<, =})

–  Événements à base d’intervalles datés ou ordonnés dans le temps (liés par relation d’Allen)

  Données temporelles –  Base de séquences

–  Séquence unique + fenêtres successives ou glissantes

  Motifs –  Séquence d’événements : ensemble d’itemsets ordonnés dans le temps

–  Séquence d’événements + caractérisation numérique ou catégorique des délais inter-événements

–  Séquence d’intervalles + relations d’Allen

–  Idem + caractérisation numérique de la durée des événements

–  Idem + caractérisation des délais entre (bornes des) intervalles

Page 12: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

29

Extensions de la fouille de motifs séquentiels

  Prise en compte explicite du temps –  Séquence d’événements ponctuels datés

S=<(a0, t0), (a1, t1), …, (an, tn)>

 Motifs série avec délais (IApriori, IPrefixSpan – Chen, Chiang, Ko 03 ; Hirate, Yamana 06) P=<b0, I1, b1, I2, …, , In, bn>

 Motifs séries-parallèles e.g. chroniques (Face – Dousson, Duong 99, Cram 09)

–  Séquence d’événements intervalles estampillés S=<(a0, t0, t’0), (a1, t1, t’1), …, (an, tn, t’n)>

 Encodage des séquence d’intervalles en séquence d’événements ponctuels et méthode classique adaptée (IApriori, TPrefixSpan, Ti-Hprefixspan - Chen et al. 06, 07, 09)

 Relations d’Allen (Kam 01, Papapetrou et al 05, Patel et 08)

 Événements persistants – épisodes généralisés (Laxman 07)

 Motifs à base d’intervalles avec durée numérique (Guyet, Quiniou 08, 10)

30

Chen, Chiang, Ko 2003

 Discovering time-interval sequential patterns in sequence databases (Expert systems with applications)

 But : caractériser les délais entre items d’un motif séquentiel

 Motivations : nombreuses applications pouvant utiliser de telles informations (business, e-commerce, police, médical, etc.)

 Contributions : insertion de pseudo items représentant les délais

Page 13: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

31

Chen, Chiang, Ko 2003

  Séquences : S=<(a0, t0), (a1, t1), …, (an, tn)>

  Délais obtenus par discrétisation du temps : TI={I0, I1, …, In}

I0={0}, I1=]0, T1], I2=] T1, T2], …, Ir-1=] Tr-2, Tr-1], Ir-1=]Tr-1,∞]

  Motifs : time interval sequences P=<b0, &1, b1, &2, …, , &m, bm>, bi : E={Events}, &2 : TI

  Inclusion: P est contenu dans S s’il existe un mapping ordonné 1 < j1 < … < jm entre les indices de P et ceux de S tel que b1=aj1, b2=aj2, … bm=ajm tji-tji-1 in Ii-1 pour 1 < i < m

  Support : nombre de séquences de DB contenant le motif

32

Chen, Chiang, Ko 2003

  Algorithmes : –  IApriori : extension de GSP

 Génération de candidats : jointure de motifs de longueur k-1 + association de tous les délais possibles (ensemble TI) pour former un motif de longueur k

 Modification de l’arbre des candidats prenant en compte les délais

–  IPrefixSpan :

 Définitions de projection, préfixe, suffixe

 Tenir compte du délai entre un événement fréquent de S|α et le préfixe α

 Combinatoire augmentée

  Évaluations –  Comparaison avec GSP et PrefixSpan

–  Datasets synthétiques

–  GSP < Iapriori < PrefixSpan ≈ IPrefixSpan

Page 14: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

33

Hirate, Yamana 2006

  Generalized sequential pattern mining with item intervals (Journal of computers)

  But : pouvoir exprimer des contraintes sur les délais entre événements lors du processus de fouille

  Motivation : pouvoir distinguer entre A <1jour B et A <1an B

  Contributions: –  Deux mesures de délais : nombre d’items (séquences

génomiques), intervalle de temps (séquences temporelles)

–  Séquences étendues par insertion de pseudo items (basés sur une fonction de discrétisation des intervalles) représentant les délais

–  Quatre types de contraintes item-intervalle

34

Hirate, Yamana 2006

  Séquences : interval extended sequence S=<(t1,1, X1), (t1,2, X2), …, (t1,m, Xm)> ti,j est l’intervalle (temporel ou indiciel) entre les items Xi et Xj

  Interval itemization function : permet de changer la granularité temporelle. Utilisée par test d’occurrence et test de sous-séquence : S1=<(t1,1, X1), (t1,2, X2), …, (t1,m, Xm)> est incluse dans S1=<(t’1,1, X’1), (t’1,2, X’2), …, (t’1,m, X’m) , …, (t’1,n, X’n)> ssi Xi ⊆ X’i et I(t1,i)=I(t1,j)

  Contraintes sur les intervalles (délais) : –  min_interval (anti-mon), max_interval, (anti-mon)

min_whole_interval (mon), max_whole_interval (anti-mon)

Page 15: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

35

Hirate, Yamana 2006

  Algorithme : extension de PrefixSpan –  Définitions de préfixe, suffixe, inclusion

–  Redéfinition de l’opération de projection sur des interval extended sequences

–  Adaptation pour l’utilisation des contraintes  Anti-monotones : test au moment de la projection

 Monotones : test après extraction

  Evaluation –  Dataset réel : tremblement de terre au Japon (dataset dense)

–  Comparaison  Qualité des motifs extraits : pouvoir prédictif

 Nombre de motifs extraits : évite une extraction exponentielle avec des supports faibles

 Effet des contraintes assez faible

 Temps d’exécution : nettement meilleur que PrefixSpan pour des supports faibles

36

Dousson, Duong 1999

 Discovering chronicles with numerical time constraints from alarm logs for monitoring dynamic systems, in IJCAI’99

  But :

  Motivations : –  Applications en monitoring de réseaux de télécoms

–  Temps important pour surveiller la propagation des alarmes

  Contributions : –  Extension du travail de Mannila, Toivonen (95)

épisodes séries ou parallèles -> chroniques

–  Caractérisation numérique du délai entre événements

–  algorithme Apriori-like utilisant CRS : FACE

Page 16: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

37

Dousson, Duong 1999

  Séquences (logs) : S=<(a0, t0), (a1, t1), …, (an, tn)>

  Motifs : modèles de chronique chronique : (C ⊂ A , T), T={ai [tij-, tij+] aj | (ai ,aj) ∈ CxC}

  Instance de chronique : ensemble d’événements d’une séquence satisfaisant toutes les contraintes temporelles de la chronique

  Sous-chronique : C’ est une sous-chronique de C si de toute instance de C’ on peut extraire une instance de C

  Fréquence d’une chronique : nombre d’instances de la chronique reconnues dans la séquence

  Chronique fréquente : de fréquence supérieure à un seuil de fréquence minimal

  Anti-monotonie : une chronique est fréquente si toutes ses sous-chroniques sont fréquentes

38

Dousson, Duong 1999

 Algorithme de type Apriori : extraction par niveau d’itemsets fréquents avec répétition puis intégration de contraintes temporelles –  Génération de candidats sans contrainte :

 Ck = Ck-1 U {C1}

 Test de fréquence minimale des sous-chroniques (sans contraintes)

–  Génération des chroniques avec contrainte  Encadrement des délais observés pour les instances de chronique de taille 2

 Propagation des contraintes pour obtenir le graphe temporel complet minimal

–  Calcul de la fréquence par CRS puis élagage

Page 17: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

39

Dousson, Duong 1999

 Évaluation –  Données réseau télécommunications : motifs de

propagation d’alarmes  Log de 2900 evts de 36 types différents (20h)

 Log ATM, 1 mois, 3800 types d’evts

–  Pas de comparaison avec d’autres approches

40

Cram, Cordier, Mille 2009

  An interactive algorithm for the complete discovery of chronicles. Rapport LIRIS.

  But : extraction interactive de motifs temporels

  Motivations : –  Améliorer les méthodes d’extraction souvent incomplètes car pas

de connaissances sur la pertinence des informations : intégrer l’utilisateur dans la boucle d’extraction de connaissances

–  Extraire des chroniques présentant des ensembles d’événements identiques mais des ensembles de contraintes différents

  Contributions : –  Hiérarchie de contraintes temporelles

–  Génération de candidats par 2 types d’opération : adjonction d’événement et raffinement de contrainte

Page 18: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

41

Cram, Cordier, Mille 2009

  Base de contraintes : à chaque couple d’événements est associé un graphe acyclique orienté définissant une hiérarchie de contraintes

  Opérateurs pour la génération de candidats : –  add_ε : ajoute un événement de type ε à une chronique

–  str_εiεj : remplace une contrainte temporelle par une contrainte directement plus stricte (successeur dans la base de contraintes)

42

Cram, Cordier, Mille 2009

 Algorithme HDA de type Apriori (FACE)

Page 19: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

43

Cram, Cordier, Mille 2009

 Élaboration de la base de contraintes –  Rechercher les occurrences fréquentes de couples

d’événements et extraire les délais

–  Extraire les contraintes en déplaçant des fenêtres de de plus en plus grandes sur la liste des délais triés

–  [ -1, 1, 3, 5 ]

 Évaluation –  Complexité importante (exponentielle en théorie)

–  S’adresse à de petites base de séquences

44

Kam, Fu 2000

  Discovering temporal patterns for interval-based events (DAWAK 2000)

  But : prendre en compte des événements à base d’intervalles, les utiliser pour contraindre la fouille de motifs temporels

  Motivations : événements ponctuels ne permettent pas la représentation de relations temporelles telles que overlaps, begins, during, …

  Contributions: –  Motifs avec relations temporelles sur intervalles

–  Algorithme adapté à la recherche de tels motifs

Page 20: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

45

Kam, Fu 2000

  Séquence : S=<(a0, ts0, te0), (a1, ts1, te1), …, (an, tsn, ten)> ordonnée par les dates de fin (!!!)

  Relations entre intervalles temporels –  Exprimés par relations d’Allen reconstruites à partir des relations

sur les bornes des intervalles

46

Kam, Fu 2000

  Motif temporel –  Un type d’événement seul est un motif temporel atomique

–  si X et Y sont des motifs temporels alors (X rel Y) est un motif temporel composite (rel : relation d’Allen)

–  Représentation par relations temporelles n-aires  Représentation ambigüe

 Ex.

 (((a overlaps b) before c) overlaps d) ((a overlaps b) before (c during d))

  Inclusion d’un motif temporel

  Contraintes : max_whole_pattern

  Support : % de séquences contenant le motif

a

b

d

c

Page 21: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

47

Kam, Fu 2000

  Algorithme : adaptation d’Apriori –  Format vertical de la base de séquences

–  Génération de candidats à partir de Lk-1 et L1 + relations temporelles

–  Calcul du support et élagage

  Évaluation –  Dataset synthétique

–  Étude des performances en variant  Support

 Taille de la fenêtre max

 Nb de séquences

 Nb d’événements par séquence

 Pas de comparaison avec d’autres méthodes

48

Chen, Wu 2006 - Wu, Chen 2007

  Mining temporal patterns from sequence database of interval-based events (FSKD)

  Mining non-ambiguous temporal patterns for interval-based events (IEEE trans. on knowledge and data engin.)

  But : étendre les algorithmes de fouille de motifs séquentiels aux événements à base d’intervalles

  Motivations : pallier les défauts des représentations à base de points

  Contributions: –  Transformation d’une séquence d’événements à base

d’intervalles en une séquence d’événements à base de points à partir des bornes des intervalles (évite l’utilisation des relations d’Allen) + contrainte de co-occurrence des deux bornes d’un même intervalle dans un motif

Page 22: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

49

Chen, Wu 2006 - Wu, Chen 2007

  Séquence : S=<(a0, t+0, t-0), (a1, t+1, t-1), …, (an, t+n, t-n)>

  Relations temporelles sur bornes d’intervalle : <, =

  Arrangement d’événements ponctuels ≈ traduction intervalles points

–  u placé devant v si  time(u) < time(v)

 u est début d’intervalle, v une fin d’intervalle

 u précède v dans l’ordre lexicographique

  Séquence temporelle : arrangement + relations temporelles entre événements successifs (b+<a+=c+<a-<b-<c-)

(b+<a+=c+<d+<a-<b-<d-<c-)

50

Chen, Wu 2006 - Wu, Chen 2007

  Inclusion : –  Opérateur small : calcule la relation temporelle entre deux points (application de

la transitivité)

rel(a+, b-) = small((<,<,=,<)) = <

P = (p1 1 p2 … r-1 pr) est contenue dans TS = (s1 ✪1 s2 … ✪n-1 sn) s’il existe un mapping ordonné w des indices de P dans ceux de TS tel que

pi = sw(i) et i = small((✪w(i), …✪w(i+1)-1))

si l’une des bornes de l’intervalle est incluse l’autre l’est aussi

  Support : % de séquences contenant le motif

Page 23: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

51

Chen, Wu 2006 - Wu, Chen 2007

 Algorithmes : –  T-Apriori (basé sur GSP)

 Candidats : c={pattern, {positions}}

 Génération de k-candidats : jointure de (k-1)-motifs ayant le même (k-2)-préfixe + jointure de leurs positions

 Test support : parcours des ensembles de positions

–  T-PrefixSpan (basé sur PrefixSpan;-)  Adaptation de l’opération de projection : préfixes, suffixes

 Génération de candidats plus complexe : projection jusqu’à la dernière borne inférieure du motif base de la projection (préfixe), insertion de la borne supérieure dans le suffixe des séquences projetées

52

Chen, Wu 2006 - Wu, Chen 2007

 Évaluation –  Pas d’évaluation de T-Apriori ! (Chen, Wu 2006)

–  T-PrefixSpan  Datasets synthétiques

 Dataset réel : données boursières

 Évaluation des motifs extraits par mesure de leur capacité de prédiction

 Comparaison avec PrefixSpan :

– Moins performant que PrefixSpan en temps d’exécution – Qualité des résultats meilleure pour T-PrefixSpan

Page 24: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

53

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

  Discovering frequent arrangement of temporal intervals (IEEE ICDM)

  Mining frequent arrangements of temporal intervals (Knowledge and Information Systems)

  But : découverte d’arrangements d’intervalles temporels fréquents

  Motivations : –  Événements instantanés souvent insuffisants

 Traduction en événements ponctuels introduit une combinatoire supplémentaire

 Perte de la relation liant début et fin d’intervalle

 Post-traitement nécessaire pour revenir aux intervalles

–  Nombreuses applications

  Contributions: –  Définition formelle du problème et utilisation des relations d’Allen

–  Contraintes : fouille de motifs et extraction de règles

–  Deux algorithmes efficaces (levelwise) + un algorithme (aka PrefixSpan)

54

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

 Pbs des relations d’Allen en cas de bruit

Page 25: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

55

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

  Séquence : S=<(a0, t0s, t0e), (a1, t1s, t1e), …, (an, tns, tne)>

  Relations temporelles : –  Relations d’Allen + matching flexible des bornes (si proches)

 Meets(A,B) : A.te = B.ts ± ε

 Matches(A,B) :A.ts = B.ts ± ε, A.te = B.te ± ε

 Overlaps(A,B) : A.ts < B.ts, A.te > B.ts, A.te < B.te, B.ts - A.ts>ε, B.te - A.te>ε

 Contains(A,B) : A.te < B.te, A.te > B.ts, B.ts - A.ts>ε, A.te - B.te>ε

 Left-Contains(A,B) : A.ts = B.ts ± ε, A.te > B.ts, A.te - B.te>ε

 Right-Contains(A,B) : A.te < B.te, A.te = B.te ± ε, B.ts - A.ts>ε

 Follows(A,B) : A.te < B.ts, B.ts - A.te>ε

–  Relation n-aire (n>2) : conjonction de relations binaires pour lever les ambiguïtés

–  Événements instantanés modélisés par intervalles à bornes égales

56

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

 Relations temporelles :

Page 26: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

57

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

  Arrangement (motif) : A={E, R}, E ensemble de k événements, R ensemble des relations temporelles d’Allen entre tout couple d’événements de E : R={r(ei,ej)|r ∈ Rel, i<j≤k}

  Inclusion : l’arrangement A={E, R} est inclus dans la séquence S si tous les événements de A sont dans S et satisfont les relations de R

  Support : nombre de séquences contenant le motif

  Règles d’association séquentielle : Ai ⇒λ,Rij Aj ; Ai, Aj arrangements, Rij relation temporelle entre les événements (intervalles) de Ai et ceux de Aj

λ mesure d’intérêt : confiance, lift, etc.

  Contraintes temporelles : –  Gap : entre intervalles liés par relation follow

–  Overlap : pourcentage de chevauchement

–  Contain : pourcentage d’inclusion

–  Durée : max-whole

58

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

 Algorithmes : –  BFS basé sur SPADE : levelwise, BD en format vertical

–  H-DFS basé sur SPADE : parcours des deux premiers niveaux en largeur d’abord, parcours des autres en profondeur d’abord

–  Basé sur PrefixSpan mais en s’appuyant sur les intervalles (au contraire de Wu et Chen)

Page 27: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

59

The Arrangement Enumeration Tree

Let

LEVEL 3

LEVEL 2

LEVEL 1

Intermediate

Intermediate

60

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

 Algorithme BFS : –  Basé sur SPADE : levelwise, BD en format vertical

 Génération des niveaux 1 et 2

 Élagage supplémentaire initial : recherche des paires d’événements apparaissant dans minsup transactions au moins

 Génération des candidats (arrangements) au niveau k : jointure niveau k-1 et niveau 1

 Génération des nœuds intermédiaires au niveau k (relations temporelles)

 IdLists en format bitmap pour accélérer le calcul du support (opérations booléennes)

 Vérification de la satisfaction des contraintes (anti-monotones) en même temps que vérification du support minimal

Page 28: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

61

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

 Algorithme DFS : –  Basé sur algo de Tsoukatos et Gunopoulos 2001

 Génération des candidats (arrangements) en suivant une stratégie profondeur d’abord

 Ajoute tous les sous-arrangements d’un arrangement fréquent à liste des arrangements fréquents

 Avantage : atteint les arrangements fréquents maximaux rapidement

 Inconvénient : nombreux scans de la base de données

 Algorithme Hybrid DFS (H-DFS) : –  BFS pour deux premiers niveaux

–  DFS ensuite

62

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

 Algorithme Prefix-Based : –  Définitions de préfixe, suffixe et opération de projection

–  ATTENTION : il faut effectuer les projections selon TOUTES les occurrences d’un préfixe (pas seulement la projection selon la première)

–  Augmente fortement la combinatoire

Page 29: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

63

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

 Évaluation –  Datasets synthétiques et réels (american sign language,

données réseau)

–  Comparaison des trois algos avec SPAM (exécuté sur débuts et fins d’intervalles + post-processing pour construire les arrangements)

–  Résultats

 BFS meilleur que SPAM pour de grandes BD et des supports faibles

 Hybrid-DFS meilleur que SPAM et BFS

 Pour des faibles supports Hybrid-DFS est deux fois plus rapide que BFS

 Dans tous les cas l’algorithme Prefix-based est le plus mauvais

64

Papapetrou, Kollios, Sclaroff, Gunopoulos 05, 09

Données ASL Données réseau

Page 30: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

65

Patel, Hsu, Lee 2008

  Mining relationships among interval-based events for classification (SIGMOD’08)

  But : fouille de relations temporelles complexes sur des événements à base d’intervalles

  Motivations : –  Insuffisance de la simple notion de succession

–  Nécessité de représenter des événements qui durent (intervalles)

  Contributions: –  Représentation « sans perte » de relations temporelles n-aires (n

> 2)

–  Algorithme de fouille d’intervalles : IEMiner

–  Classifieur utilisant des motifs temporels à base d’intervalles

66

Patel, Hsu, Lee 2008

  Séquences : S=<(a0, t0s, t0e), (a1, t1s, t1e), …, (an, tns, tne)>

  Liste d’événements : –  Ensemble d’événements où chaque événement a une relation

temporelle (Allen) avec tous les autres

  Motif : –  Événement simple : (a1, t1s, t1e)

–  Événement composite : E = (E1 R E2) avec E.start = min{E1.start, E2.start}, E.end= max{E1.end, E2.end}

  Support : –  BD : séquences issues d’un découpage d’une séquence unique en

fenêtres de taille fixe

–  Support : nombre de séquences incluant le motif

Page 31: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

67

Patel, Hsu, Lee 2008

  Motif : représentation canonique « sans perte » –  Canonique : événements ordonnés par instants de début, puis

par instants de fin, puis par ordre alphabétique (représentation incomplète)

–  Sans perte : structure [c,f,m,o,s] associant à la relation temporelle le nombre d’inclusion (c), de fins communes (f), de liaisons (m), de chevauchements (o), de débuts communs (s)

(A over[0,0,0,1,0] B) over[0,0,0,1,0] C) (A over[0,0,0,1,0] B) over[0,0,0,2,0] C) (A over[0,0,0,1,0] B) over[0,0,1,1,0] C)

68

Patel, Hsu, Lee 2008

  Algorithme IEMiner –  Type Apriori

–  Génération des k-candidats à partir d’un (k-1)-motif fréquent et d’un 2-motif dont le premier événement est identique à l’événement dominant (ayant la date de fin la plus tardive) du (k-1)-motif

–  Mise à jour de la liste des 2-motifs pouvant participer à la génération de candidats au niveau k+1 : doivent apparaître dans au moins k-1 k-motifs

–  Calcul du support : un scan unique basé sur la notion d’événements actifs et passif

–  Optimisation :  liste noire des séquences contenant moins de k événements : scan inutile

 Le nombre de séquences où le préfixe d’un (k-1)-motif participant à la génération de candidats de niveau k apparaît deux fois au moins doit être supérieur à minsup

Page 32: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

69

Patel, Hsu, Lee 2008

 Génération de candidats

70

Patel, Hsu, Lee 2008

 Évaluations : –  Comparaison des performances de IEMiner,

TPrefixSpan, H-DFS et GenPrefixSpan (PrefixSpan + contraintes gap) qui n’utilise que la relation before

–  Datasets synthétiques  Runtime : GenPrefixSpan <IEMiner <H-DFS <TPrefixSpan

–  Datasets réels  ASL : IEMiner ≈ GenPrefixSpan < H-DFS <TPrefixSpan

 Hepatitis : IEMiner <H-DFS < GenPrefixSpan <TPrefixSpan

Page 33: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

71

Patel, Hsu, Lee 2008

72

Laxman, Sastry, Unnikrishnan 2007

  Discovering frequent generalized episodes when event persist for different durations (IEEE Trans. on Knowledge and Data Engineering 2007)

  But : prendre en compte la durée des événements en fouille de données temporelles

  Motivations : –  Applications en diagnostic

–  Temps (durée des événements) important pour discriminer plusieurs pannes possibles

  Contributions : –  Épisodes généralisés

–  Algorithme pour la fouille de tels motifs

Page 34: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

73

Laxman, Sastry, Unnikrishnan 2007

  Séquences : S=<(a0, t0s, t0e), (a1, t1s, t1e), …, (an, tns, tne)>

  Épisodes généralisés : –  I={I1,I2, …, In} l’ensemble des durées possibles, intervalles

temporels disjoints (discrétisation)

–  α= (Vα, <α, gα, dα) : Vα ensemble de nœuds, <α ordre partiel sur Vα, gα: Vα➝ ε donne le type d’un nœud, dα: Vα➝ 2I donne la durée d’un nœud

 Si <α total : épisode série généralisé

 Si <α vide : épisode parallèle généralisé

  Inclusion d’un épisode généralisé α dans une séquence S –  Il existe un mapping hα : Vα➝ {1, …, n} tel que pour tout v, w ∈Vα

 Ehα(v)=gα(v) (même type)

 La durée de hα(v) ∈ b, l’une des durées spécifiées par dα

 Si v précède w dans le motif V alors leurs événements appariés sont dans le même ordre dans la séquence

74

Laxman, Sastry, Unnikrishnan 2007

  Sous-épisodes :

–  un épisode β est un sous-épisode de α, β≤ α, s’il existe un mapping ordonné, tel que le type des événements correspondants sont identiques et la durée des événements de β contient les durées des événements correspondants de α

–  Soit β≤ α. Si α inclus dans S alors β inclus dans S

  Support :

–  Nombre de fenêtres glissantes contenant le motif

–  Nombre d’occurrences minimales

–  Occurrences non chevauchantes

–  Occurrences non entrelacées b'1 b'3 b'2

b1 b3 b2

b'1 b'3 b'2

b1 b3 b2

Page 35: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

75

Laxman, Sastry, Unnikrishnan 2007

  Épisodes similaires : –  2 épisodes sont similaires s’ils associent le même ensemble

d’événements, ont la même fréquence, mais l’un autorise plus de durées que l’autre

  Épisodes principaux (aka itemsets clos) : –  un épisode est principal s’il n’y a pas d’épisode similaire

possédant moins d’intervalles de durée (pas de durée redondante)

  Algorithme (occurrences non chevauchantes) : levelwise –  Génération de candidats (niveau k)

 Jointure de deux (k-1)-motifs ayant même (k-2)-préfixe

 Vérification que tout motif obtenu en supprimant un nœud est principal

–  Calcul des fréquences d’un ensemble de motifs en une passe

–  Filtrage pour ne garder que les épisodes principaux

76

Laxman, Sastry, Unnikrishnan 2007

 Évaluation : –  Datasets synthétiques et réels (logs d’une chaîne de

montage GM)

–  But : démontrer la pertinence des épisodes généralisés (introduction de durées)

–  Montre la difficulté de choisir la bonne discrétisation du temps pour représenter les durées possibles

–  Pas de comparaison avec autres algorithmes

Page 36: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

77

Guyet, Quiniou 2008, 2010

  Mining temporal patterns with quantitative intervals, workshop at ICDM 08

  Extraction de motifs avec intervalles temporels, soumis à BDA 2010

  But : extraire des motifs temporels avec délais et durées numériques

  Motivations : –  Discriminer motifs séquentiels

–  Information temporelle importante pour la surveillance et le diagnostic

  Contributions : –  Approche basée sur la densité : clustering des occurrences de

motifs (sous-séquences) considérés comme des hypercubes dans un espace de dimension n=longueur du motif

78

Vautier EGC 2005

  Chronique intéressante : –  Fréquente –  Maximalement spécifique –  dense

x x x

x

x x

x x

x x

x x

x x x x x

x x x

x

x

x

x

x x

x x

Une CMF non dense

Une CMF dense

Page 37: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

79

Guyet, Quiniou 2008, 2010

 Hypercubes de dimension 2 : rectangles

80

Guyet, Quiniou 2008, 2010

  Séquence : S=<(s0, [l0, u0]), (s1, [l1, u1]), …, (sn, [ln, un])>

  Sous-séquence : sous-ensemble d’une séquence

  Signature symbolique : ensemble des types d’événement de la séquence

  Intervalle multidimensionnel : ensemble de n intervalles représentant les projections d’un hypercube de dimension n sur chacun des axes

  Similarité entre séquences temporelles : basée sur la distance entre hypercubes dans espace de dimension N

  Motif temporel : séquence temporelle représentative d’un ensemble de séquences temporelles

Page 38: Temporal pattern mining: beyond (simple) sequential patterns ......1 Data Mining Temporal pattern mining: beyond (simple) sequential patterns Fouille de motifs temporels : au-delà

81

Guyet, Quiniou 2008, 2010

  Algorithme QTempIntMiner –  Extraction des signatures symboliques fréquentes

 Apriori

 PrefixSpan

–  Identification des intervalles temporels par catégorisation d’intervalles multi-dimensionnel

 K-means

 Mélange de gaussiennes et algorithme EM

–  Entrelacement des deux étapes

  Évaluation –  Données synthétiques

–  Comparaison des résultats obtenus à partir de différentes distances et de méthodes de catégorisation

–  A faire : comparaison avec d’autres propositions

82

po

ints

inte

rval

les

BD

séq

uen

ces

Séq

uen

ce

un

iqu

e

Mo

tif

seq

. si

mp

le

Mo

tif

seq

+

dél

ais

Mo

tif

seq

. + r

el.

Alle

n

Mo

tif

seq

. +

Alle

n +

dél

ais

Mo

tif

seq

+

dél

ais

nu

m

Co

ntr

ain

tes

Alg

o.

Lev

elw

ise

Alg

o.

pro

ject

ion

Alg

o a

d h

oc

Dousson, Duong 99 * * * * Kam, Fu 00 * * * + * Chen, Chiang, Ko 03 * * * * * Masseglia 04

Papapetrou 05, 08 * * * * HDFS

Chen, Wu 06 * * * + * Wu, Chen 07 * * * + * * Yu, Hirate 06 * * * +++ * Laxman 07 * * * * * Patel, Hsu, Lee 08 * * * + * * Guyet, Quiniou 08, 10 * * * * * Cram 09 * * * * Chiu, Chen 09 * * * * *