Méthodes de la Recherche Opérationnelle pour l analyse de données Julien Darlay G-SCOP 27 janvier 2011 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 1 / 20
Plan Analyse de données Définitions Liens avec l optimisation Principale différence Analyse Combinatoire de Données Définitions et concepts Schéma d apprentissage Modèles d optimisation Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 2 / 20
Analyse de données Extraire à partir d un large volume de données, des connaissances originales par des méthodes semi-automatiques. Applications : Identifier des pathologies (sarcoidose, connectivite...) Prédire le temps avant la prochaine panne Partitionner des observations en groupes homogènes Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 3 / 20
Analyse de données Un problème d optimisation Données : Un ensemble d observations Ω Des attributs décrivant l observation X X Une valeur à prédire c(x ) C Id class dyspnea surgery pain antec. age 1 neg 0 1 0 0 76 2 neg 0 1 0 1 45 3 neg 1 1 0 0 44 4 neg 1 0 1 0 52 5 pos 1 0 1 0 61 6 pos 1 1 1 1 75 7 pos 1 0 1 1 54 8 pos 0 1 1 1 80 9 pos 1 1 0 1 48 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 4 / 20
Analyse de données Un problème d optimisation Objectif : Trouver une fonction h : X C Parmi un ensemble d hypothèses H Minimisant une fonction d erreur l(h, X ) min l(h, X )dx h H X X Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 5 / 20
Analyse de données Exemple 1 0.8 0.6 0.4 X = (x 1, x 2 ) C = {+, x} H = {x 1 + ax 2 + b = 0} 0.2 0 0 0.2 0.4 0.6 0.8 1 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 6 / 20
Analyse de données Exemple 1 0.8 0.6 0.4 X = (x 1, x 2 ) C = {+, x} H = {x 1 + ax 2 + b = 0} 0.2 0 0 0.2 0.4 0.6 0.8 1 h(x ) γ si c(x ) = x h(y ) γ si c(y ) = + Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 6 / 20
Analyse de données Exemple 1 0.8 0.6 0.4 X = (x 1, x 2 ) C = {+, x} H = {x 1 + ax 2 + b = 0} 0.2 0 0 0.2 0.4 0.6 0.8 1 h(x ) + e X γ si c(x ) = x h(y ) e Y γ si c(y ) = + e 0 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 6 / 20
Analyse de données Exemple 1 0.8 0.6 0.4 X = (x 1, x 2 ) C = {+, x} H = {x 1 + ax 2 + b = 0} 0.2 0 0 0.2 0.4 0.6 0.8 1 min a,b,e i Ω e i s.c. h(x ) + e X γ 0 si c(x ) = x h(y ) e Y + γ 0 si c(y ) = + e 0 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 6 / 20
Analyse de données Surapprentissage Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 7 / 20
Analyse de données Surapprentissage 2 solutions : Utiliser des bornes théoriques [Vapnik, 95] Utiliser des données externes Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 7 / 20
Analyse de données Surapprentissage Utiliser des données externes Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 8 / 20
Analyse de données Surapprentissage Utiliser des données externes Collecter de nouvelles données Couteux Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 8 / 20
Analyse de données Surapprentissage Utiliser des données externes Collecter de nouvelles données Couteux N utiliser qu une partie de la base Dépend de la partition Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 8 / 20
Analyse de données Surapprentissage Utiliser des données externes Collecter de nouvelles données Couteux N utiliser qu une partie de la base Dépend de la partition Utiliser la validation croisée Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 8 / 20
Analyse de données Quelques méthodes classiques Support Vector Machine Réseaux de neurones Probabilité bayesienne Arbre de décision Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 9 / 20
Analyse de données Quelques méthodes classiques Support Vector Machine Réseaux de neurones Probabilité bayesienne Arbre de décision Analyse combinatoire de données Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 9 / 20
Analyse Combinatoire de Données Logical Analysis of Data [Crama, Hammer, Ibaraki, 88] Repose sur des techniques d optimisation combinatoire Extension de fonctions booléennes partiellement définies Cadre d apprentissage particulier C = {0, 1} X {0, 1} m H : fonctions booléennes Hypothèses facilement interprétables Qualité prouvée sur de nombreuses applications Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 10 / 20
Analyse Combinatoire de Données Les différentes étapes 1 Binarisation des attributs 2 Sélection d un support 3 Génération de motifs 4 Construction d un modèle Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 11 / 20
Analyse Combinatoire de Données Binarisation Transformer les attributs en attributs binaires Binaires (Homme, Femme) = Homme Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 12 / 20
Analyse Combinatoire de Données Binarisation Transformer les attributs en attributs binaires Binaires (Homme, Femme) = Homme Catégories (Rouge, Vert, Bleu) = Rouge, = Vert, = Bleu Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 12 / 20
Analyse Combinatoire de Données Binarisation Transformer les attributs en attributs binaires Binaires (Homme, Femme) = Homme Catégories (Rouge, Vert, Bleu) = Rouge, = Vert, = Bleu Ordonnés (Faible, Moyen, Fort) Moyen, Fort Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 12 / 20
Analyse Combinatoire de Données Binarisation Transformer les attributs en attributs binaires Binaires (Homme, Femme) = Homme Catégories (Rouge, Vert, Bleu) = Rouge, = Vert, = Bleu Ordonnés (Faible, Moyen, Fort) Moyen, Fort Numériques (1, 2.5, 15, 20) < 1.75, < 8.75, < 17.5 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 12 / 20
Analyse Combinatoire de Données Binarisation Transformer les attributs en attributs binaires Binaires (Homme, Femme) = Homme Catégories (Rouge, Vert, Bleu) = Rouge, = Vert, = Bleu Ordonnés (Faible, Moyen, Fort) Moyen, Fort Numériques (1, 2.5, 15, 20) < 1.75, < 8.75, < 17.5 Génération d un grand nombre d attributs binaires Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 12 / 20
Analyse Combinatoire de Données Sélection d un support Objectif Trouver un sous ensemble minimal d attributs Séparant les observations de classes différentes Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 13 / 20
Analyse Combinatoire de Données Sélection d un support Objectif Trouver un sous ensemble minimal d attributs Séparant les observations de classes différentes Modélisation en problème de set-cover [Hammer et al., 88] min z i z i s.c. i 1 (X i Y i )z i 1 X Ω +, Y Ω z {0, 1} m Résolution en PLNE, ou par approche gloutonne Id class dyspnea surgery pain antec. age > 65 1 neg 0 1 0 0 1 2 neg 0 1 0 1 0 5 pos 0 0 1 0 1 6 pos 1 1 0 1 1 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 13 / 20
Analyse Combinatoire de Données Sélection d un support Objectif Trouver un sous ensemble minimal d attributs Séparant les observations de classes différentes Modélisation en problème de set-cover [Hammer et al., 88] min z i z i s.c. i 1 (X i Y i )z i 1 X Ω +, Y Ω z {0, 1} m Résolution en PLNE, ou par approche gloutonne Id class dyspnea surgery pain antec. age > 65 1 neg 0 1 0 0 1 2 neg 0 1 0 1 0 5 pos 0 0 1 0 1 6 pos 1 1 0 1 1 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 13 / 20
Analyse Combinatoire de Données Motifs Un motif est une conjonction de conditions sur les attributs dyspnea = 1 & pain = 1 Associé à une classe pos class dysp. pain neg 0 0 neg 0 0 neg 1 0 neg 1 1 pos 1 1 pos 1 1 pos 1 1 pos 0 1 pos 1 0 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 14 / 20
Analyse Combinatoire de Données Motifs Un motif est une conjonction de conditions sur les attributs dyspnea = 1 & pain = 1 Associé à une classe pos Couverture observations vérifiant le motif class dysp. pain neg 0 0 neg 0 0 neg 1 0 neg 1 1 pos 1 1 pos 1 1 pos 1 1 pos 0 1 pos 1 0 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 14 / 20
Analyse Combinatoire de Données Motifs Un motif est une conjonction de conditions sur les attributs dyspnea = 1 & pain = 1 Associé à une classe pos Couverture observations vérifiant le motif Homogénéité proportion d obs. de la bonne classe dans la couverture h = 3 4 class dysp. pain neg 0 0 neg 0 0 neg 1 0 neg 1 1 pos 1 1 pos 1 1 pos 1 1 pos 0 1 pos 1 0 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 14 / 20
Analyse Combinatoire de Données Motifs Un motif est une conjonction de conditions sur les attributs dyspnea = 1 & pain = 1 Associé à une classe pos Couverture observations vérifiant le motif Homogénéité proportion d obs. de la bonne classe dans la couverture h = 3 4 Prévalence proportion d obs. de la bonne classe couvertes p = 3 5 class dysp. pain neg 0 0 neg 0 0 neg 1 0 neg 1 1 pos 1 1 pos 1 1 pos 1 1 pos 0 1 pos 1 0 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 14 / 20
Analyse Combinatoire de Données Motifs Un motif est une conjonction de conditions sur les attributs dyspnea = 1 & pain = 1 Associé à une classe pos Couverture observations vérifiant le motif Homogénéité proportion d obs. de la bonne classe dans la couverture h = 3 4 Prévalence proportion d obs. de la bonne classe couvertes p = 3 5 Degré nombre de conditions dans le motif d = 2 class dysp. pain neg 0 0 neg 0 0 neg 1 0 neg 1 1 pos 1 1 pos 1 1 pos 1 1 pos 0 1 pos 1 0 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 14 / 20
Analyse Combinatoire de Données Motifs Un motif est une conjonction de conditions sur les attributs dyspnea = 1 & pain = 1 Associé à une classe pos Couverture observations vérifiant le motif Homogénéité proportion d obs. de la bonne classe dans la couverture h = 3 4 Prévalence proportion d obs. de la bonne classe couvertes p = 3 5 Degré nombre de conditions dans le motif d = 2 Générer des motifs en respectant des conditions sur h, p, d class dysp. pain neg 0 0 neg 0 0 neg 1 0 neg 1 1 pos 1 1 pos 1 1 pos 1 1 pos 0 1 pos 1 0 Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 14 / 20
Analyse Combinatoire de Données Génération de motifs Différentes approches classiques Exhaustive, en pratique d 3 Glouton [Boros et al., 00] top-down ou bottom-up PLNE successifs [Ryoo et al., 08] [Boros, D. 10] Algorithme aléatoire avec garantie de qualité Fonctions booléennes duales Réduction de la complexité : une sélection aléatoire des observations Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 15 / 20
Analyse Combinatoire de Données Sélection d un modèle Modèle Sous ensemble minimal de motifs Permettant d expliquer toutes les observations Modélisation en problème de set-cover [Hammer et al., 88] min z i z i s.c. i cov(m i, X )z i 1 z {0, 1} M X Ω Résolution en PLNE ou par approche gloutonne Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 16 / 20
Analyse Combinatoire de Données Discriminant Traiter une nouvelle observation O = cov(p, O) P M + N M cov(n, O) Attribution de la classe en fonction de > 0 classe Pos < 0 classe Neg Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 17 / 20
Analyse Combinatoire de Données Discriminant Traiter une nouvelle observation O = cov(p, O) P M + N M cov(n, O) Attribution de la classe en fonction de > 0 classe Pos < 0 classe Neg Approche par génération de colonnes [Hansen, 09] Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 17 / 20
Applications médicales Improved screening for growth hormone deficiency using logical analysis of data [Lemaire et al. 09] Final height and gonad function after total body irradiation during childhood [Couto-Silva et al. 06] High-resolution computed tomography to differentiate chronic diffuse interstitial lung diseases with predominant ground-glass pattern using logical analysis of data [Grivaud Martin S. et al. 10] Logical Analysis of Computed Tomography Data to Differentiate Entities of Idiopathic Interstitial Pneumonias [Brauner et al. 07] Logical analysis of survival data : prognostic survival models by detecting high-degree interactions in right-censored data [Kronek et al. 08] Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 18 / 20
Conclusion Analyse de données Un problème d optimisation particulier Utilisant des techniques de RO Source de problèmes en RO et en optimisation combinatoire Analyse combinatoire de données Fonctions booléennes Modèles d optimisation classiques Sorties facilement interprétables Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 19 / 20
Perspectives Application médicale Algorithmes de génération de motifs Utiliser les bornes théoriques sur l erreur [Anthony, 11] Utilisation de l analyse de données en RO Julien Darlay (G-SCOP) Méthodes de RO pour l analyse de données 27 janvier 2011 20 / 20