Fouille de redescriptions Une introduction

publicité
Fouille de redescriptions
Une introduction
Esther Galbrun
[email protected]
Chargée de recherche (CR2)
Inria Nancy – Grand Est
Équipe projet Orpailleur
Esther Galbrun
2/25
Introduction
Fouille de données classique
Esther Galbrun
3/25
Introduction
Dec
in
pT
...
Lap
...
Élan
Cha
t
Bele
tt
Glo e
uton
Fouille de données classique
31UFP2
.
.
.
32VLK1
.
.
.
33WXR1
.
.
.
35TLN3
.
.
.
Esther Galbrun
3/25
Introduction
Fouille de données classique
Dec
in
pT
Lap
Cha
t
Bele
tte
Chat ∧ Belette ∧ Lapin
31UFP2
.
.
.
32VLK1
.
.
.
33WXR1
.
.
.
35TLN3
.
.
.
Esther Galbrun
3/25
Introduction
ov
Dec
pT
ul
tN+
an
...
tJ+
tJ−
...
Lap
in
...
Élan
Cha
t
Bele
tt
Glo e
uton
Fouille de redescriptions
...
31UFP2
.
.
.
32VLK1
.
.
.
33WXR1
.
.
.
35TLN3
.
.
.
Esther Galbrun
4/25
Introduction
Fouille de redescriptions
Élan ∨ Mulot Alpestre
ep
tS∼
tJ+
ul
tN+
ov
Élan
Mulo
Alpet
stre
+
∼ ≤ 12.825]) ∧ [14.0 ≤ t + ≤ 24.4]
([−5.3 ≤ tNov
≤ 6.0] ∨ [12.811 ≤ tSep
Jul
31UFP2
.
.
.
32VLK1
.
.
.
33WXR1
.
.
.
35TLN3
.
.
.
Esther Galbrun
4/25
Introduction
Fouille de redescriptions
Élan ∨ Mulot Alpestre
ep
tS∼
tJ+
ul
tN+
ov
Élan
Mulo
Alpet
stre
+
∼ ≤ 12.825]) ∧ [14.0 ≤ t + ≤ 24.4]
([−5.3 ≤ tNov
≤ 6.0] ∨ [12.811 ≤ tSep
Jul
31UFP2
.
.
.
32VLK1
.
.
.
33WXR1
.
.
.
35TLN3
.
.
.
Esther Galbrun
4/25
Introduction
Fouille de redescriptions
ep
tS∼
tJ+
ul
tN+
ov
Élan
Mulo
Alpet
s
tre
Trouver différentes descriptions
caractérisant les mêmes objets …
31UFP2
.
.
.
32VLK1
.
.
.
33WXR1
.
.
.
35TLN3
.
.
.
Esther Galbrun
4/25
Introduction
Fouille de redescriptions
ep
tS∼
tJ+
ul
tN+
ov
Élan
Mulo
Alpet
s
tre
…trouver des objets ayant
différentes caractérisations communes.
31UFP2
.
.
.
32VLK1
.
.
.
33WXR1
.
.
.
35TLN3
.
.
.
Esther Galbrun
4/25
Comment trouver des redescriptions ?
Définition : Considérant une collection d’objets décrits par deux jeux
d’attributs différents, une redescription est une paire de requêtes (qL , qR )
caractérisant les mêmes ensembles d’objets.
Esther Galbrun
5/25
Comment trouver des redescriptions ?
Définition : Considérant une collection d’objets décrits par deux jeux
d’attributs différents, une redescription est une paire de requêtes (qL , qR )
caractérisant les mêmes ensembles d’objets.
Spécificité : Motifs transversaux à plusieurs jeux de données.
Esther Galbrun
5/25
Comment trouver des redescriptions ?
Définition : Considérant une collection d’objets décrits par deux jeux
d’attributs différents, une redescription est une paire de requêtes (qL , qR )
caractérisant les mêmes ensembles d’objets.
Données Deux matrices
Esther Galbrun
6/25
Comment trouver des redescriptions ?
Définition : Considérant une collection d’objets décrits par deux jeux
d’attributs différents, une redescription est une paire de requêtes (qL , qR )
caractérisant les mêmes ensembles d’objets.
Requêtes Formules logiques
E ∨ M
+
∼ ) ∧ t+
( tNov
∨ tSep
Jul
Esther Galbrun
6/25
Comment trouver des redescriptions ?
Définition : Considérant une collection d’objets décrits par deux jeux
d’attributs différents, une redescription est une paire de requêtes (qL , qR )
caractérisant les mêmes ensembles d’objets.
Justesse Coefficient de Jaccard
des supports
|supp(qL ) ∩ supp(qR )|
|supp(qL ) ∪ supp(qR )|
E1,1 =
E1,1 + E1,0 + E0,1 J(qL , qR ) =
Esther Galbrun
6/25
Comment trouver des redescriptions ?
Définition : Considérant une collection d’objets décrits par deux jeux
d’attributs différents, une redescription est une paire de requêtes (qL , qR )
caractérisant les mêmes ensembles d’objets.
Contraintes Support, justesse,
longueur des requêtes,
p-valeur, …
Esther Galbrun
6/25
Comment trouver des redescriptions ?
Définition : Considérant une collection d’objets décrits par deux jeux
d’attributs différents, une redescription est une paire de requêtes (qL , qR )
caractérisant les mêmes ensembles d’objets.
— Cas particuliers —
Requêtes conjonctives uniquement
Règles d’association
bi-directionnelles
Esther Galbrun
6/25
Comment trouver des redescriptions ?
Définition : Considérant une collection d’objets décrits par deux jeux
d’attributs différents, une redescription est une paire de requêtes (qL , qR )
caractérisant les mêmes ensembles d’objets.
— Cas particuliers —
Une requête donnée
Tâche de classification
Esther Galbrun
6/25
Comment trouver des redescriptions ?
Stratégies d’exploration
Esther Galbrun
7/25
Comment trouver des redescriptions ?
Stratégies d’exploration
Esther Galbrun
7/25
Comment trouver des redescriptions ?
Stratégies d’exploration
Turning CARTwheels : An Alternating
Algorithm for Mining Redescriptions.
N. Ramakrishnan, D. Kumar, B.
Mishra, M. Potts, et R. F. Helm.
In KDD, 2004.
Redescription Mining :
Algorithms and
Applications in Bioinformatics.
D. Kumar.
PhD Thesis, Virginia Tech, 2007.
Esther Galbrun
8/25
Comment trouver des redescriptions ?
Processus alternant
Quand une requête est donnée, la fouille de redescriptions
devient un problème de classification
Réutiliser des méthodes de classification pour construire
des redescriptions
Requiert des requêtes interprétables :
arbres de classification et de régression trees (CART)
Classification avec des arbres en alternant entre les côtés
Esther Galbrun
9/25
Comment trouver des redescriptions ?
Arbres de décision (CART)
Arbres de décision : structure représentant une succession de
tests et les décisions de classification
yes
y =0
vb = 1
Feuille décision
(classe/valeur)
Autre noeud test sur la valeur
d’un attribut
yes
no
y =1
yes
y =1
va ≥ 2
no
vc = 4
no
Esther Galbrun
y =0
10/25
Comment trouver des redescriptions ?
Arbres de décision (CART)
Construction itérative d’un arbre
1. Calculer l’entropie de la
séparation pour chaque
attribut
Esther Galbrun
11/25
Comment trouver des redescriptions ?
Arbres de décision (CART)
Construction itérative d’un arbre
va
Esther Galbrun
1. Calculer l’entropie de la
séparation pour chaque
attribut
2. Sélectioner le test d’entropie
minimale
3. Ajouter un nouveau noeud
pour ce test
4. Séparer les données selon le
résultat du test
11/25
Comment trouver des redescriptions ?
Arbres de décision (CART)
Construction itérative d’un arbre
vb
va
vc
Esther Galbrun
1. Calculer l’entropie de la
séparation pour chaque
attribut
2. Sélectioner le test d’entropie
minimale
3. Ajouter un nouveau noeud
pour ce test
4. Séparer les données selon le
résultat du test
5. Répéter sur chaque sous
ensemble séparément
11/25
Comment trouver des redescriptions ?
Arbres de décision (CART)
Construction itérative d’un arbre
vb
va
vc
Esther Galbrun
Interrompre si
Toutes les entités dans le
sous ensemble
appartiennent à la même
classe
Aucun test ne permet
d’amélioration
La profondeur maximum est
atteinte
11/25
Comment trouver des redescriptions ?
Arbres de décision (CART)
Construction itérative d’un arbre
vb
va
vc
Interrompre si
Toutes les entités dans le
sous ensemble
appartiennent à la même
classe
Aucun test ne permet
d’amélioration
La profondeur maximum est
atteinte
Ajouter des feuilles avec la classe
majoritaire comme décision
Esther Galbrun
11/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Esther Galbrun
12/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Commencer avec un vecteur cible
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Construire un arbre sur les variables de gauche
va
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Construire un arbre sur les variables de gauche
vb
va
vc
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Construire un arbre sur les variables de gauche
vd
vb
ve
va
vf
vc
vg
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Re-étiqueter les entités dans les feuilles de l’arbre
vd
vb
ve
va
vf
vc
vg
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Re-étiqueter les entités dans les feuilles de l’arbre
vd
vb
ve
va
vf
vc
vg
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Utiliser ces nouvelles étiquettes comme vecteur cible
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Construire un arbre sur les variables de droite
ul
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Construire un arbre sur les variables de droite
um
ul
un
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Construire un arbre sur les variables de droite
uo
um
up
ul
uq
un
ur
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Re-étiqueter les entités dans les feuilles de l’arbre
uo
um
up
ul
uq
un
ur
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Re-étiqueter les entités dans les feuilles de l’arbre
uo
um
up
ul
uq
un
ur
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Continuer d’alterner...
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Continuer d’alterner...
vd
vb
ve
va
vf
vc
vg
Esther Galbrun
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Obtenir une paire d’arbres en correspondance au niveau
des feuilles
vd
uo
vb
um
ve
up
va
ul
vf
uq
vc
un
vg
Esther Galbrun
ur
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Sélectionner les branches menant aux classes positives
vd
uo
vb
um
ve
up
va
ul
vf
uq
vc
un
vg
Esther Galbrun
ur
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Calculer le support
vd
uo
vb
um
ve
up
va
ul
vf
uq
vc
un
vg
Esther Galbrun
ur
13/25
Comment trouver des redescriptions ?
L’algorithme CARTwheels
Calculer le support
vd
uo
vb
um
ve
up
va
ul
vf
uq
vc
un
vg
Esther Galbrun
ur
13/25
Comment trouver des redescriptions ?
Stratégies d’exploration
Redescription Mining :
Structure, Theory and Algorithms.
L. Parida et N. Ramakrishnan.
In AAAI, 2005.
Redescription Mining : Algorithms and
Applications in Bioinformatics.
M. J. Zaki et N. Ramakrishnan.
In KDD, 2005.
Finding Subgroups Having Several
Descriptions :
Algorithms for Redescription Mining.
A. Gallo, P. Miettinen, et H. Mannila.
In SDM, 2008.
Esther Galbrun
14/25
Comment trouver des redescriptions ?
Stratégies d’exploration
Finding Subgroups Having Several
Descriptions :
Algorithms for Redescription Mining.
A. Gallo, P. Miettinen, et H. Mannila.
In SDM, 2008.
From Black and White to Full Color :
Extending Redescription Mining
Outside the Boolean World
avec P. Miettinen,
In Statistical Analysis and Data
Mining, 2012.
Esther Galbrun
15/25
Comment trouver des redescriptions ?
Algorithme glouton
Initialiser avec des paires de variables
Essayer d’étendre la requête de chaque côté
avec chaque variable disponible
en utilisant les opérateurs ∨ et ∧
Interrompre si :
La longueur maximale de requête est atteinte
Aucune amélioration de justesse n’est possible
Une redescription déjà obtenue est construite
Une autre contrainte (support, p-valeur) est violée
Esther Galbrun
16/25
Comment trouver des redescriptions ?
Algorithme glouton
Xp
ABCDE
Esther Galbrun
ABCD
17/25
Comment trouver des redescriptions ?
Algorithme glouton
Paire initiale
ABCDE
Xp
ABCD
A
A
Esther Galbrun
17/25
Comment trouver des redescriptions ?
Algorithme glouton
Essai d’extension d’un côté Xp
ABCDE
ABCD
A ? ?
A
Esther Galbrun
17/25
Comment trouver des redescriptions ?
Algorithme glouton
Essai d’extension avec ∧ B à gauche Xp
A B? C D E
ABCD
A ∧ B
A
Esther Galbrun
17/25
Comment trouver des redescriptions ?
Algorithme glouton
Essai d’extension avec ∨ B à gauche Xp
A B? C D E
ABCD
A ∨ B
A
Esther Galbrun
17/25
Comment trouver des redescriptions ?
Algorithme glouton
…après quelques itérationsXp
ABCDE
ABCD
A ∧ E
(A ∧ D) ∨ B
4
1+4+1
= 0.66
J(qL , qR ) =
Esther Galbrun
17/25
Comment trouver des redescriptions ?
Stratégies d’exploration
Esther Galbrun
18/25
Comment trouver des redescriptions ?
Séléctionner les résultats
Sélection sans paramètres, basée sur le principe de longueur
de description minimale (MDL).
A
D
I
DE
G
BJ
BF
B
D
DK
AL
J
Esther Galbrun
+
A:
B:
C:
.
.
.
19/25
Comment trouver des redescriptions ?
Visualisation interactive
Fouille interactive avec l’interface Siren.
http://siren.gforge.inria.fr/
Esther Galbrun
20/25
Comment trouver des redescriptions ?
Visualisation interactive
Fouille interactive avec l’interface Siren.
http://siren.gforge.inria.fr/
Esther Galbrun
20/25
Comment trouver des redescriptions ?
Visualisation interactive
Fouille interactive avec l’interface Siren.
http://siren.gforge.inria.fr/
Esther Galbrun
20/25
Comment trouver des redescriptions ?
Visualisation interactive
Fouille interactive avec l’interface Siren.
http://siren.gforge.inria.fr/
Esther Galbrun
20/25
Comment trouver des redescriptions ?
Visualisation interactive
Fouille interactive avec l’interface Siren.
http://siren.gforge.inria.fr/
Esther Galbrun
20/25
Exemples
Redescriptions dans divers domaines
Bibliographie de la recherche informatique
Les chercheurs avec des publications multiples dans les
conférences SoCG et CCCG collaborent souvent avec
M. Overmars ou E. D. Demaine.
Esther Galbrun
21/25
Exemples
Redescriptions dans divers domaines
Profiles de candidats politiques
Les candidats aux élections parlementaires finlandaises de
2011 de moins de soixante ans accordent peu d’importance
aux questions des indices de retraite.
Esther Galbrun
21/25
Exemples
Redescriptions dans divers domaines
Niches bio-climatiques
Esther Galbrun
21/25
Exemples
Niches bio-climatiques
Données : Zones géographiques d’Europe (2575 objets)
Présence/absence d’espèces mammifères
(194 espèces)
Charactéristiques météorologiques
(48 variables de température et
précipitation)
Question : Trouver une requête en terme de profile climatique
qui décrive les zones habitées par un groupe
d’espèces (et vice versa).
Esther Galbrun
22/25
Exemples
Niches bio-climatiques
Élan
max ≤ 0.40] ∧ [12.20 ≤ t max ≤ 24.60]∧
([−9.80 ≤ tFeb
Jul
avg
avg
≤ 238.78]
[56.852 ≤ pAug
≤ 136.46]) ∨ [183.27 ≤ pSep
J = 0.811 E1,1 = 580
Esther Galbrun
23/25
Exemples
Niches bio-climatiques
Élan
max ≤ 0.40] ∧ [12.20 ≤ t max ≤ 24.60]∧
([−9.80 ≤ tFeb
Jul
avg
avg
[56.852 ≤ pAug
≤ 136.46]) ∨ [183.27 ≤ pSep
≤ 238.78]
Esther Galbrun
23/25
Exemples
Niches bio-climatiques
Mulot ∧ Murin de Natterer ∧ Musaraigne pygmée
max ≤ 14.50] ∧ [17.30 ≤ t max ≤ 25.20]∧
([3.20 ≤ tMar
Aug
max ≤ 22.80]) ∨ [19.60 ≤ t avg ≤ 19.956]
[14.90 ≤ tSep
Jul
J = 0.621 E1,1 = 677
Esther Galbrun
24/25
Conclusion
Conclusion
La fouille de redescriptions est un outil d’exploration de
données flexible et puissant, applicable à divers domaines.
Esther Galbrun
25/25
Conclusion
Conclusion
La fouille de redescriptions est un outil d’exploration de
données flexible et puissant, applicable à divers domaines.
Contact : [email protected]
Page Web : https://members.loria.fr/EGalbrun/web/
Tutoriel : http://siren.mpi-inf.mpg.de/tutorial/main/
Page Web de Siren : http://siren.gforge.inria.fr/main/
Esther Galbrun
25/25
Téléchargement