temporal pattern mining: beyond (simple) sequential patterns ......1 data mining temporal pattern...

Post on 21-Jul-2020

3 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

–  …

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

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

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)

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

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

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

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>

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>

… …

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

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

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

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

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)

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

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

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

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)

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

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

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

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

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

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

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 :

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)

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

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

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

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

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

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

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

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

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

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

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

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 * * * * *

top related