Extraction de Connaissances à partir des Données MASTER 2 SRO G. Simon
Plan Généralités sur l ECD Le pré-traitement des données La fouille de données Optimiser la fouille Visualisation Les systèmes d ECD
Généralités sur l ECD L ECD dans l entreprise - Etude de cas La discipline ECD Architecture type d un système d ECD La fouille de données Typologie des applications
Le cercle de l'ecd Identifier opportunités Données Extraire Connaissances Evaluer Actions Agir
Etude de cas : Un fournisseur Télécom Tester un nouveau produit sur la clientèle Un marché très étroit Trouver le meilleur ciblage D'après l'expérience : 2% à 5% répondent positivement Pour 500 achats, il faudrait contacter 16 à 25000 prospects au hasard
Etude de cas : Résultats 450 Prospects répondants courrier ciblé courrier de masse taille de campagne 2000 10000 14000
Etude de cas : Appliquer l'ecd Apprentissage supervisé pour définir 2 classes de clients susceptibles d acheter ou pas La base de données a été construite à partir des réponses à un produit similaire Les données caractéristiques : Les appels détaillés Les données marketing Des données démographiques Les minutes d'utilisation La sphère d'influence L'indicateur de vagabondage
Etude de cas : Résultats chiffrés Campagne Test : 2 séries de courriers Un groupe au hasard : 3% de réponses Une sélection faite sur le modèle : 15% de réponses Extension : Réintégration des résultats pour définir le marché global à l'aide de la campagne test
Conclusions Les résultats de la démarche ECD ne sont pas toujours "chiffrables" La démarche doit s'intégrer dans la vie et les cycles de management de l'entreprise Sans cesse de nouvelles applications Une étude préalable permet d'appréhender rapidement les résultats à espérer
Généralités sur l ECD L ECD dans l entreprise - étude de cas La discipline ECD Architecture type d un système d ECD La fouille de données Typologie des applications
La définition de référence de l'ecd «L'ECD est le processus non-trivial d'identification de structures inconnues, valides et potentiellement exploitables dans les bases de données» Fayyad, 1996
Domaines d'étude de l'ecd Extraction de Connaissances à partir des Données (Knowledge Discovery in Databases) Fouille de Données (Data Mining)
Résultat : les connaissances Utilité modifient le comportement de l'agent qui les possèdent inconnues auparavant Transmissibilité vers les humains : compréhensibilité vers d'autres systèmes fondés sur les connaissances relative indépendance par rapport à l'agent qui les a produites
Résultat : les connaissances (2) Généralité "Jean Dupont a acheté une moto" est une donnée "Les célibataires masculins en dessous de la quarantaine achètent sensiblement plus de motos que la moyenne" est une connaissance
Support : les données Disponibilité ont été collectées avant l'ecd et pour d'autres raisons bruit, valeurs manquantes, etc. Grande quantité relative, dans le cas des phénomènes très complexes Complexité structure bases de données gérées par des SGBD
Méthode : l extraction Réalisée généralement par un agent automatique qui "apprend" les régularités des données les techniques d'apprentissage automatique adaptées à l'ecd portent le nom de Fouille de Données (Data Mining) la FD est plus pragmatique que l'aa : le "tout automatique" est abandonné en faveur d'une étroite collaboration avec l'utilisateur humain (ex : techniques de visualisation) l'ecd ne se réduit pas à la FD (en amont : sélection, nettoyage des données, en aval : aide à la compréhension des connaissances découvertes)
Disciplines co-fondatrices de l'ecd Intelligence Artificielle (dans le sens large du terme) représentation des connaissances apprentissage automatique résolution de problèmes Statistiques, analyse de données Bases de données Visualisation
Généralités sur l ECD L ECD dans l entreprise - étude de cas Domaine d étude de l ECD Architecture type d un système d ECD La fouille de données Typologie des applications
Interaction avec l utilisateur Visualisation Sélection Présentation Apport Interactions SGBD Préparation Fouille de données
Le processus d'ecd (vision académique) Fouille de Données Interprétation et évaluation Sélection et pré-traitement p(x)=0.02 Connaissances Données Sources de données Données préparées Régularités et modèles («connaissances» informatiques)
Le processus d'ecd (vision industrielle) Compréhension du problème Compréhension des données Déploiement Données Préparation des données Fouille des données CRISP-DM Cross Industry Standard Process for Data Mining mai 1998 Evaluation
Généralités sur l ECD L ECD dans l entreprise - étude de cas Domaine d étude de l ECD Architecture type d un système d ECD La fouille de données Typologie des applications
Fouille de données (FD) En anglais : Data Mining la composante centrale du processus d ECD la plus automatisée en amont : sélection, mise en forme, nettoyage des données en aval : présentation des connaissances découvertes
Disciplines co-fondatrices de la FD Statistiques Apprentissage symbolique Algorithmes génétiques Fouille de données Réseaux de neurones Optimisation Résolution de problèmes
Les principales étapes de la FD Initialisation : construction d une (ou de plusieurs) hypothèse(s) initiale(s) Recherche d une (ou de plusieurs) hypothèse(s) améliorée(s) Post-traitement de la (des) hypothèse(s) obtenue(s) Hypothèse = modèle expliquant les données
Questions fondamentales Quel type de connaissances recherche-t-on? Comment représenter ces connaissances? Comment évaluer ces connaissances? Comment rechercher ces connaissances?
Représentation des connaissances Rôle formaliser pour manipuler efficacement sur machine assurer la communication entre utilisateur et FD Problématique : degré d expressivité du formalisme ni trop recherche complexe risque de sur-spécialisation ni trop peu prise en compte de l ensemble des besoins de l utilisateur ne pas limiter l espace des connaissances à découvrir
Les principaux formalismes Symboliques (logiques) arbres de décision règles programmes logiques Numériques modèles statistiques réseaux de neurones Mixtes : réseaux bayésiens
Les arbres de décision Le client est-il susceptible d acheter une moto? M Sexe F Age < 40 Non oui non Oui Non
Le neurone artificiel e 1 w 1 Neurone e 2 w 2 w m Σ ρ ρ p w e = i= 1 w i e i σ( ρ ρ 1 w e) = + 1 ρ ρ e w e s e p
Les réseaux multi-couches X 1 Y 1 X 2 Y 2 X 3 X n Entrées Couche(s) cachée(s) Sorties Y m
Les cartes de Kohonen Voisinage carré de dimension 1 : x 1 x 2 x n connexion récurrente connexion adaptative
Les réseaux bayésiens Fumeur Mineur Cancer Emphysème Rayons X Dyspnée P(E F,M) = 0.9 P(E F, M) = 0.3 P(E F,M) = 0.5 P(E F, M) = 0.1
Evaluation des connaissances Rôle guider l algorithme de FD fournir un degré de confiance pour les connaissances découvertes Problématique données souvent affectées par des erreurs ou incohérences (bruit) existence de régularités fortuites dans les données d apprentissage nécessité de tester les connaissances sur des données distinctes
Généralités sur l ECD L ECD et l entreprise - étude de cas Domaine d étude de l ECD Architecture type d un système d ECD La fouille de données Typologie des applications
Applications de l'ecd Domaines d'application de l'ecd Principales catégories d'applications Exemples de résultats recherchés
Domaines d'application de l'ecd Activités commerciales : grande distribution, vente par correspondance, banques, assurances segmentation de la clientèle détermination du profil du consommateur analyse du "panier de la ménagère" mise au point des stratégies de rétention de la clientèle prédiction des ventes détection des fraudes identification des clients à risque
Domaines d'application de l'ecd Activités financières recherche des corrélations "cachées" entre les indicateurs financiers prédiction de l'évolution de ces indicateurs Activités de gestion des ressources humaines prévision du plan de carrière aide au recrutement
Domaines d'application de l'ecd (2) Activités industrielles détection et diagnostic des pannes et des défauts réglage des équipements
Domaines d'application de l'ecd (3) Activités scientifiques diagnostic médical étude du génome analyses chimiques et pharmaceutiques exploitation des données astronomiques reconnaissance de la parole
L'approche scientifique de l'ecd Mettre en évidence des groupes d'applications avec des besoins communs Rechercher des solutions génériques pour chacun de ces groupes Adapter, éventuellement, ces solutions génériques aux particularités de chaque application Critère de regroupement : la nature des connaissances recherchées
Les principales catégories d'applications Les tâches supervisées le but principal est d'apprendre à prédire certaines valeurs à partir d'autres valeurs Les tâches non-supervisées le but principal est de décrire les relations qui existent au sein des données
Tâches supervisées discrimination "Les clients susceptibles de quitter votre compagnie téléphonique pour une autre sont ceux qui totalisent des appels à l'étranger en valeur de plus de 1.000F/mois et qui ont fait déjà plus de trois réclamations." régression "Le nombre de sinistres déclarés par un conducteur auto assuré chez vous est inversement proportionnel à l'ancienneté de son permis, avec des coefficients de proportionnalité différents selon le sexe"
Tâches non-supervisées clustering (classification non-supervisée) "Dans votre chaîne de magasins de sport, il existe deux groupes distincts de magasins selon l'évolution de leur chiffre d'affaires pendant l'hiver" découverte d'associations "Parmi les achats des différents produits que vous proposez, il existe les associations suivantes : vos clients qui achètent de la bière achètent aussi des chips dans 80% des cas,..."
Tâches non-supervisées (2) découverte de relations numériques "Parmi les différents paramètres qui caractérisent ce type d'acier, il existe les relations suivantes : la dureté est inversement proportionnelle au taux de carbone,..." découverte de relations causales "Le fait de fumer est une des causes directes du cancer du poumon. La toux est un de ses effets directs."
Plan Généralités sur l ECD Le pré-traitement des données La fouille de données Optimiser la fouille Visualisation Les systèmes d ECD
Représentation et pré-traitement des données Les exemples Les attributs Le codage des attributs La réduction des dimensions Autres pré-traitements
Les exemples La plupart des méthodes de fouille de données travaillent sur des ensembles d'exemples, caractérisés par les mêmes attributs (variables, champs, etc.) Attributs Température Humidité Sensation Exemples 35 30 75 99 agréable lourd
Les attributs Caractérisent les différents aspects (traits, facettes, paramètres) des exemples Extrêmement hétérogènes Pour un traitement informatique on doit les répartir dans des types qui partagent : le même encodage les mêmes opérations inter- et intra-type Certains types «usuels» pour l'ecd
Les types d attributs Atomiques nominaux : valeurs identifiées par des noms, sans autre relation entre elles que l'exclusion réciproque numériques : valeurs identifiées par des nombres discrets (entiers Z) continus (réels R) binaires : 2 valeurs qui peuvent être vues comme : nominales (vrai/faux) numériques (0/1)
Les types d attributs (suite) hiérarchiques : relation d'ordre partiel couleur chaude froide Structurés jaune rouge vert bleu multimédia (textes, images, sons, films), séquences d'événements, etc. applications en TextMining et WebMining
Le codage Une méthode de FD n est pas capable de traiter tous ces types simultanément La plupart : binaires, nominaux et / ou numériques Certaines méthodes imposent des restrictions sur la distribution des valeurs des attributs numériques nécessité de réaliser des codages Attention : perte d'information!
Le codage : binarisation Effet : nominal binaire Méthode : attribut nominal à n valeurs n attributs binaires Perte d'information : l'exclusion mutuelle des valeurs de l'attribut initial Application : découverte d'associations, réseaux neuronaux
Le codage : normalisation Effet : restriction de la plage de variation d'un attribut numérique Méthodes : linéaire : XN centrage-réduction : Perte d'information : l'échelle Application : clustering = ( X min( X )) ( X ) min( X ) ( max ) XN = [ 0, 1] ( X E( X )) σ( X ) ( ), σ( XN ) E XN = 0 = 1
Le codage : discrétisation Effet : continu discret Méthodes : intervalles d'égale largeur intervalles d'égale fréquence Perte d'information : diminution de la précision si les valeurs discrètes ainsi obtenues sont traitées comme nominales : perte de la relation d'ordre
Le codage : discrétisation (suite) Application : découverte d'associations, certains arbres de décision et réseaux bayésiens La qualité de la discrétisation est très dépendante des objectifs de la FD certaines méthodes de FD réalisent elles-mêmes cette opération ex: discrétisation locale et supervisée au cours de l'induction d'arbres de décision
Le codage des attributs structurés Effet : attribut structuré plusieurs attributs atomiques Méthodes intervention des experts (étiquetage) extraction automatique de paramètres (peut s'appuyer à son tour sur la FD) Exemples : texte pré-traitement lexical pour extraire des termes pertinents construction du vecteur de fréquence des termes pertinents son fréquence fondamentale + formants
Représentation et pré-traitement des données Les exemples Les attributs Le codage des attributs La réduction des dimensions Autres pré-traitements
La réduction des dimensions Problème : BD de quelques centaines de millions d'exemples avec quelques centaines d'attributs la plupart des méthodes de FD sont incapables de les traiter directement Solutions : réduire le nombre d exemples réduire le nombre d attributs
Réduction du nombre d'exemples : Technique d Echantillonnage tirage aléatoire d'un nombre prédéfini d'exemples dans l'ensemble d'exemples original si la taille de l'échantillon n'est pas appropriée à la granularité du phénomène étudié, certaines régularités seront omises par la FD le mode de tirage peut être uniforme ou surpondérer certaines populations
Réduction du nombre d'attributs Nécessaire pour les méthodes de FD très sensibles aux attributs non-pertinents (KPPV) ou à la redondance des attributs (classificateur «naïf» de Bayes) Deux approches principales la sélection/pondération des attributs les plus pertinents l'extraction d'un nombre réduit d'attributs synthétiques à partir des attributs originaux
Extraction d'attributs Concentrer (la plus grande partie de) l'information apportée par les attributs originaux dans un petit nombre d'attributs dérivés combinaisons linéaires, logiques, etc. e.g. les axes factoriels issus de l'analyse en composantes principales Inconvénient : diminution de la compréhensibilité des modèles obtenus
Attributs dérivés Adapter les exemples aux biais de représentation des méthodes de FD utilisées e.g. combinaisons linéaires d'attributs afin de permettre aux arbres de décision de découvrir des frontières obliques entre les classes Par expertise intuitif : e.g. dérivation de durées, évolutions par visualisation
Représentation et pré-traitement des données Les exemples Les attributs Le codage des attributs La réduction des dimensions Autres pré-traitements
Autres pré-traitements Détection et élimination des exemples aberrants par visualisation par limitation aux valeurs «plausibles» des attributs (ex : écart à la moyenne inférieur à trois écarts-types) Traitement des valeurs manquantes élimination des exemples correspondants remplacement par des valeurs inférées à partir des autres exemples (e.g. la moyenne, apprentissage) certaines méthodes de FD traitent elles-mêmes les valeurs manquantes
Plan Généralités sur l ECD Le pré-traitement des données La fouille de données Optimiser la fouille Visualisation Les systèmes d ECD
La fouille de données L Apprentissage Automatique (AA) Fouille de données supervisée Fouille de données non supervisée
La fouille de données : rappels Dépend de la représentation des connaissances Repose sur l Apprentissage automatique chercher un modèle qui «explique» au mieux les données Nécessite l évaluation des connaissances obtenues
Apprentissage automatique (AA) On dit qu'un programme informatique apprend de l'expérience E, par rapport à un ensemble de tâches T et à une mesure de performance P, si ses performances dans l'accomplissement des tâches de T, telles qu'elles sont mesurées par P, s'améliorent avec l'expérience E» Autrement dit : un programme apprend s il profite d'expériences passées pour s'améliorer
Typologie de l'aa apprentissage analytique résultats certains obtenus par déduction apprentissage empirique résultats incertains obtenus par induction
Rappel : le raisonnement déductif Va du général vers le particulier en préservant la vérité Exemple Hypothèse 1 : Humain(X) Mortel(X) Hypothèse 2 : Humain(Socrate) Déduction : Mortel(Socrate) Limite : ne permet pas de générer de nouvelles connaissances Raisonnement et apprentissage humains fondés sur l INDUCTION
L induction : exemple Observation 1 : Clyde est gris Observation 2 : Clyde est un éléphant Induction : Tous les éléphants sont gris Et si Clyde avait été albinos?
L induction : caractéristiques Raisonnement du particulier vers le général Importance du nombre de cas observés (exemples) la probabilité que les connaissances induites soient fondées augmente avec ce nombre MAIS attention au sur-apprentissage! Importance du choix des cas observés cas particuliers, bruit Raisonnement logiquement incorrect indispensable à la généralisation et donc à l apprentissage
Exemple d'inférence y Quelle est la relation entre x et y? x
Déduction : rejet des mauvaises hypothèses y La déduction nous permet de rejeter une infinité d'hypothèses : celles qui sont en désaccord avec les exemples x
Déduction : impossibilité de discerner y Mais il reste encore une infinité d'autres hypothèses entre lesquelles la déduction ne peut pas discerner! x
Inférence intuitive biaisée y Et pourtant la meilleure solution nous paraît évidente : la plus «simple» des hypothèses en accord avec les exemples x
Le biais d'induction Dans la plupart des cas la seule adéquation aux exemples (critère imposé par la déduction) ne suffit pas pour choisir entre les hypothèses possibles Tout autre critère de sélection ou de préférence que l'adéquation aux exemples s'appelle biais d'induction Le biais d'induction peut être plus ou moins explicite dans un algorithme d'apprentissage - mais il existe toujours! (e.g. réseau de neurones à structure figée) Le biais d'induction le plus utilisé : le rasoir d'ockham «Toutes choses égales par ailleurs, préfère l'hypothèse la plus simple»
Généralisation du rasoir d'ockham y Ce biais est si fort qu'il nous pousse parfois à négliger certaines imperfections des hypothèses, pourvu qu'elles soient simples (on peut penser dans ce cas que les imperfections sont causées plutôt par le bruit de mesure que par une relation plus complexe entre x et y) x
Les algorithmes de l ASA : principe Recherchent l hypothèse expliquant au mieux les exemples Dépendent du formalisme de représentation de l hypothèse S appuient sur une fonction d évaluation de la qualité de l hypothèse Commencent par une hypothèse initiale soit très générale soit très spécifique Utilisent une procédure de recherche heuristique
Les algorithmes de l ASA : pseudo-code Initialisation : une hypothèse initiale Recherche d une hypothèse améliorée : tant que non (condition d arrêt) choix des meilleures transformations de l hypothèse courante pour améliorer la fonction d évaluation Obtention des hypothèses améliorées Retour de la «meilleure» hypothèse obtenue Choix : effectué par une méthode heuristique
Types d apprentissages Apprentissage supervisé l'utilisateur indique un attribut particulier que l'agent devra apprendre à prédire à partir des autres attributs Apprentissage non-supervisé, sans guidage, où tous les attributs sont traités de la même manière inventer de nouveaux concepts (partitions «naturelles» des exemples), e.g. les K-means, cartes auto-organisatrices découvrir des relations entre les attributs, e.g. recherche d associations, réseaux bayésiens
La fouille de données L Apprentissage Automatique (AA) Fouille de données supervisée Fouille de données non supervisée
Fouille de données supervisée Les exemples expériences passées, énoncés de problèmes déjà résolus accompagnés de leurs solutions Le but : apprendre à résoudre des problèmes du même type La solution est représentée comme un attribut particulier (éventuellement structuré), que l'agent doit apprendre à prédire à partir des autres attributs de l exemple on l appelle généralement la classe
Fouille de données supervisée (2) Soit X 1, X 2,, X n les attributs prédictifs et Y l'attribut à prédire On peut exprimer la relation entre Y et X 1, X 2,, X n de manière déterministe Y = f(x 1, X 2,, X n ) de manière probabiliste P(Y X 1, X 2,, X n ) Selon le type de Y on parlera de : discrimination (Y est nominal : la classe) régression (Y est numérique)
Modèles de représentation des connaissances et apprentissage Symbolique Arbres de décision Règles transformation d arbre en règles induction de règles à partir d exemples Connexionniste réseaux de neurones multi-couches à rétro-propagation du gradient «Paresseux» (l'induction est retardée) K plus proches voisins Raisonnement à partir de cas
Induction d arbres de décision Méthode d inférence inductive la plus répandue Approximation de fonctions à valeurs discrètes (discrimination) attribut classe à n valeurs possibles prédire les différentes valeurs de la classe en fonction des valeurs des attributs Robuste au bruit Fonctionne avec des valeurs manquantes
Induction d'arbres de décision (IAD) CART (Breiman & all, Classification and regression trees, Wadsworth International Group, Belmont, 1984) ID3 (Quinlan, Induction of decision trees, Machine Learning, 1(1), 1986) C4.5 (Quinlan, C4.5: Programs for machine learning, Morgan Kaufmann, 1993) C5 (Quinlan, commercial - non-publié)
C4.5 : origine Algorithme d induction d arbres de décision Auteur : John Ross Quinlan (1993) Successeur de l algorithme ID3 Version commerciale : C5.0 Le plus connu et le plus utilisé Prise en compte du bruit et des valeurs manquantes Très efficace sur de gros volumes de données
Arbres de décision : rappel fondés sur une logique propositionnelle les nœuds non-terminaux = tests sur les valeurs d'un attribut les branches partant d'un nœud = les résultats possibles du test les feuilles = les valeurs de classe
Arbres de décision : les tests sur les attributs nominaux par défaut : une branche par valeur possible en option : regroupement de plusieurs valeurs par branche sur les attributs numériques (discrets ou continus) test d inégalité par rapport à un seuil seuil calculé automatiquement par C4.5 2 sous-arbres créés en fonction de ce seuil
Arbres de décision : inférences Objectif : classer un nouvel exemple oui M Age < 40 non Sexe F Non Anne a 40 ans Yves a 62 ans Jacques a 30 ans Kevin a 3 ans Oui Non Qui achète une moto?
Stratégie de recherche de C4.5 : généralités hypothèse (ASA) = arbre de décision recherche du «meilleur arbre» expliquant au mieux les exemples ayant un fort pouvoir prédictif le plus simple : principe du «rasoir d Occam» fonction d évaluation de la qualité des tests de l arbre stratégie de construction de l arbre : «diviser pour régner» : récursive, en profondeur d abord stratégie de recherche gloutonne : par escalade
Algorithme C4.5 (1) Données : l ensemble d apprentissage (EA) et la description des classes et attributs Résultat : un arbre de décision et son taux d erreur prédit (mauvais classement sur EA) Algorithme Créer le nœud racine Construire_arbre(EA,racine) erreur_prédite = élaguer_arbre(racine)
Algorithme C4.5 (2) Procédure construire_arbre(e,nœud) si tous les exemples de E appartiennent à une même classe C alors étiqueter nœud avec C sinon si E est vide alors étiqueter nœud avec la classe majoritaire du père de nœud sinon chercher le meilleur test X pour nœud (gain informationnel) si aucun test acceptable alors étiqueter nœud avec la classe majoritaire de E sinon pour chaque branche i de X soit E i l ensemble d exemples correspondant à cette branche créer noeud i ; construire_arbre(e i,noeud i )
C4.5 : Fonction d évaluation (1) Gain Informationnel Fondement théorique : théorie de l information la quantité d information portée par un message de probabilité p est -log 2 (p) en bits. p = 1 : aucune information apportée p = 0 : information potentiellement infinie Notations S = le nombre d exemples dans S freq(c i,s) = le nombre d exemples de S appartenant à la classe C i
C4.5 : Fonction d évaluation (2) Gain Informationnel Objectif : évaluer la qualité d un test X de n branches séparant un ensemble d exemples E en n sous ensembles E 1,, E n (appelés partitions) X doit être le plus discriminant possible peut-être réalisé en cherchant à créer les partitions les plus «pures» Principe : mesurer la quantité d information nécessaire pour classer les exemples de E avant et après l ajout du test X Mesure : la différence avant/après (le gain) On note k le nombre de classes différentes dans E
C4.5 : Fonction d évaluation (3) Principe calculatoire Probabilité de la classe C i : Quantité d info portée pour transmettre qu un exemple appartient à C i : p( Ci) = log2 Pour n importe quelle classe C i de E: k = freq(ci,e) info(e) - E log i= 1 freq( Ci, E) E freq(ci,e) E 2 freq(ci,e) E n Ei Après l ajout du test X : infox( E ) = info( Ei) i= 1 E Qualité de X : gain(x) = info(e) - info x (E)
Algorithmique de l'évaluation des tests Tests sur les attributs nominaux par défaut : une branche par valeur (évaluation triviale) en option : regroupement de valeurs (évaluation coûteuse ) Tests sur les attributs numériques : inégalités tri des exemples selon les valeurs de l'attribut considéré seuils exigibles : (x k +x k+1 )/2 astuce : ne tester que les seuils entre 2 exemples de classes différentes
Exemple Quinlan (2) Choix du test racine : D : [9+,5-] info(d)=0,940 Humidité D 1 : [3+,4-] info(d 1 )=0,985 Forte gain(humidité) Normale D 2 : [6+,1-] info(d 2 )=0,592 = 0,940-(7/14) 0,985-(7/14) 0,592 = 0,151
Exemple Quinlan (3) D : [9+,5-] info(d)=0,940 Vent Faible Fort... D 1 : [6+,2-] info(d 1 )=0,811 gain(vent) D 2 : [3+,3-] info(d 2 )=1,000 = 0,940-(8/14) 0,811-(6/14) 1.000 = 0,048
Exemple Quinlan (4) Meilleur test : {1,2,...,14} [9+,5-] Ciel {1,2,8,9,11} [2+,3-] Ensoleillé Couvert Pluvieux {3,7,12,13} [4+,0-]? Oui {4,5,6,10,14} [3+,2-] gain(humidité)=0,970-(3/5) 0,000-(2/5) 0,000=0,970 gain(température)=0,970-(2/5) 0,000-(2/5) 1,000-(1/5) 0,000=0,570 Humidité gain(vent)= 0,970 -(2/5) 1,000-(3/5) 0,918=0,019...
Exemple Quinlan (5) Au final : Ciel [9+,5-] Ensoleillé Couvert Pluvieux [2+,3-] [4+,0-] [3+,2-] Humidité Oui Vent Normale [2+,0-] Forte [0+,3-] Faible [3+,0-] Fort [0+,2-] Oui Non Oui Non
Le rapport de gain de C4.5 Le gain informationnel favorise d'une manière injustifiée les tests avec un grand nombre de branches L'information potentielle générée par un test est : split_info On définit alors : ( ) i i X log E 2 i C4.5 choisit le test qui maximise gain_ratio parmi les tests avec un gain supérieur à la moyenne E E = E ( T ) gain _ ratio = gain split_info ( T ) ( T )
Valeurs manquantes : problème Il est possible que des valeurs de certains attributs manquent pour certains exemples non-pertinentes, omissions à la saisie, etc. Problèmes : comment apprendre à partir d'exemples avec des valeurs manquantes? une fois l'apprentissage effectué, comment classer des exemples avec des valeurs manquantes?
Valeurs manquantes : solutions élimination des exemples avec des valeurs manquantes remplacement des valeurs manquantes par des valeurs inférées à partir des autres exemples (ex: la moyenne) modification de l'algorithme d'apprentissage afin de prendre en compte les exemples incomplets C4.5 : Modification de la fonction d'évaluation en tenant compte dans le calcul du gain de P(A), A étant l attribut du test
Bruit : problème Présence de valeurs incorrectes pour les attributs ou la classe de certains exemples Difficile à déceler (à la différence des valeurs manquantes) Effet sur l'apprentissage : les algorithmes essaient de modéliser les exemples aberrants au même titre que les exemples corrects (surspécialisation) en conséquence, les résultats de l'apprentissage ont un faible pouvoir prédictif
Bruit : exemple Expérience fictive : prédire l'état d'ébullition de l'eau à partir de la température et de la capacité de la casserole Une mesure erronée C 0,5 X X O X X X X O O O X O O O 100 O O T < 0,5 Oui < 100 C T 0,5 Non 100 Oui
Bruit : solutions pour l IAD Pour combattre l'influence néfaste du bruit sur l'iad, il faut éliminer les branches de l'arbre qui correspondent aux exemples aberrants : élagage 2 grandes familles d'approches pré-élagage : arrêter la ramification de l'arbre, au cours de la recherche, au moment où on considère que l'impureté des classes peut être imputée au bruit post-élagage : induction d'un arbre de décision complet suivie d'une étape de post-traitement destinée à éliminer les branches causées par le bruit
Modèles de représentation des connaissances et apprentissage Symbolique Arbres de décision Règles transformation d arbre en règles induction de règles à partir d exemples Connexionniste réseaux de neurones multi-couches à rétro-propagation du gradient «Paresseux» (l'induction est retardée) K plus proches voisins
Problème de la complexité des AD Concept à découvrir : Si (A et B) ou (C et D) Alors Oui Sinon Non A AD équivalent : B C Oui C D Non D Non Oui Non Oui Non
Problème de la complexité des AD (2) Certains concepts simples ont une représentation par AD complexe peu compréhensible fragmentation importante des exemples : tests peu fiables aux niveaux bas de l'ad Solution possible : représenter les hypothèses directement sous forme de règles transformation des arbres de décision en règles induction de règles directement à partir des exemples
Transformation des AD en règles L'algorithme le plus connu : C4.5rules (Quinlan, C4.5: Programs for machine learning, Morgan Kaufmann, 1993) 5 étapes production des règles correspondant à chaque feuille simplification des conditions de chacune des règles regroupement des règles par classe et simplification de chaque paquet de règles (critère MDL) ordonnancement des paquets de règles et choix de la règle par défaut (classe majoritaire pour les exemples non-couverts) simplification de l'ensemble des règles réduire les erreurs sur l ensemble d apprentissage
Transformation des AD en règles (2) Production des règles correspondant à chaque feuille la prémisse d'une règle est constituée par la conjonction des tests figurant sur le chemin qui relie la feuille à la racine Simplification des conditions de chacune des règles certaines conditions sont superflues ou causées par le bruit élimination de ces conditions afin de diminuer (ou ne pas augmenter) le taux d'erreur de la règle
Modèles de représentation des connaissances et apprentissage Symbolique Arbres de décision Règles transformation d arbre en règles induction de règles à partir d exemples Connexionniste réseaux de neurones multi-couches à rétro-propagation du gradient «Paresseux» (l'induction est retardée) K plus proches voisins
Induction de règles à partir des exemples La transformation des AD en règles est un processus relativement complexe Autre solution : l'induction de règles directement à partir des exemples, sans passer par les AD une à une : «séparer pour régner» toutes en même temps : avec des AG, par exemple programmation logique inductive (PLI) passage au premier ordre
Induction de règles par la méthode «séparer pour régner» Les algorithmes les plus connus AQ15 (Michalski & all., The multi-purpose incremental learning system AQ15 and its testing application to three medical domains, 5-th National Conference on AI, Morgan-Kaufmann, 1986) CN2 (Clark & Niblett, The CN2 induction algorithm, Machine Learning, 3(4), Kluwer Academic Publishers, 1989)
Algorithme «séparer pour régner» pour l'induction de règles ordonnées exemples les exemples d'apprentissage ; règles {} répète prémisse conjonction de conditions qui couvrent un ensemble d'exemples le plus homogène possible d.p.d.v de la classe (recherche heuristique) classe la classe majoritaire parmi les exemples couverts par prémisse règles règles {Si prémisse Alors classe} enlève de exemples les exemples couverts par prémisse jusqu'à ce que prémisse = 'vrai' retourne règles
Discussion L'algorithme produit des règles ordonnées Si... Alors... Sinon Si... Alors Sinon... à l'exploitation, la première règle dont la prémisse est vraie est appliquée pas de conflit à résoudre Critère d'arrêt tous les exemples sont couverts : risque de sur-spécialisation compromis entre la complexité du paquet de règles et sa précision (critère MDL)
Modèle de représentation des connaissances Symbolique Arbres de décision Règles Connexionniste réseaux de neurones multi-couches à rétro-propagation du gradient «Paresseux» (l'induction est retardée) le raisonnement à partir des cas
Réseaux de neurones Apprentissage de fonctions à valeurs réelles ou discrètes Robuste aux bruits et aux erreurs Fonctionnement complexe obtenu par l'interconnexion d'unités de traitement très simples connexionnisme L'apprentissage peut être long Approximateur de fonctions type «boite noire», i.e. perte de lisibilité par rapport à d'autres approximateurs comme les arbres de décisions ou les règles
Le plus simple : le perceptron Objectif : associer des configurations en entrée à des réponses particulières Architecture : couche d entrée : répercute les entrées (0 ou 1) couche de sortie : fournit les réponses (0 ou 1) Principe : soumettre les données (avec réponse) en entrée ajustement des poids synaptiques répéter jusqu à ce que le réseau fournisse la réponse correcte Souvent : un neurone de sortie par valeur de classe
Perceptron : architecture x 1 w 1 Perceptron avec un neurone de sortie x 2 w 2 w m Σ ρ ρ p w x = i= 1 w i x i s S = 1 si w ρ x ρ > seuil -1 sinon x p (les sorties peuvent être différentes)
Application : Reconnaissance des Neurones d entrée chiffres de 0 à 9 nombre : 64 (matrice 8*8 pour représenter les chiffres) valeur en sortie 1 si la case correspondant au neurone est remplie dans la représentation graphique 0 sinon Neurones de sortie s i nombre : 10 objectif à atteindre par apprentissage valeur en sortie = 1 si le chiffre i est soumis en entrée valeur en sortie = 0 sinon Un neurone d entrée est connecté à tous les neurones de sortie
Perceptron: séparation linéaire des classes ET, OU,!ET,!OU mais pas OUX exemple du ET exemple du OU séparation linéaire séparation non linéaire (oux)
Règle d'apprentissage L'espace de recherche est caractérisé par le vecteur de poids à valeurs réelles pour chaque neurone de sortie Règle d'apprentissage d un neurone de sortie principe : minimiser l erreur commise par le neurone t = réponse attendue ; s = réponse du neurone η = taux d apprentissage (compris entre 0 et 1) w i = w i + w i w i = η (t-s) x i (règle de Windrow-Hoff) Convergence après multiples applications si les exemples sont linéairement séparables
Réseau multi-couches Le perceptron simple ne modélise que des fonctions linéaires (droites, hyper-plans) Le perceptron multi-couches : une couche cachée permet d approximer des fonctions linéaires par intervalle (solution pour le OUX) Un réseau multi-couches peut exprimer une variété très riche de fonctions non linéaires présence de plusieurs couches cachées unités de seuillage avec sortie non linéaire en fonction des entrées
Neurone artificiel avec fonction de seuillage sigmoïdale x 1 w 1 Neurone x 2 w 2 w m Σ ρ ρ p w x = i= 1 w i x i σ ρ ρ s 1 1+ e ( w x) = ρ w x ρ x p
Les réseaux multi-couches : architecture x 1 s 1 x 2 s 2 x 3 x n Entrées Couche(s) cachée(s) Sorties s m
Réseau multi-couches : principes Le réseau multi-couches calcule une fonction non-linéaire ρ ρ ρ des entrées et des poids : Principe : s = calculer la réponse du réseau (seuillage sigmoïdal) calculer le terme d erreur de chaque neurone de sortie rétro-propager ce terme d erreur jusqu à la couche d entrée rétro-propagation du gradient d erreur f ( x, w)
Ensemble de validation Descente de gradient sur l'ensemble d'apprentissage et monitoring de l'erreur sur l'ensemble de validation erreur ensemble de validation ensemble d'apprentissage nb. itérations
Modèles de représentation des connaissances et apprentissage Symbolique Arbres de décision Règles transformation d arbre en règles induction de règles à partir d exemples Connexionniste réseaux de neurones multi-couches à rétro-propagation du gradient «Paresseux» Raisonnement à partir de cas
Algorithmes d'apprentissage «paresseux» La plupart des algorithmes d'apprentissage supervisé : induction pour produire une représentation prédictive globale à partir des exemples d'apprentissage (lente, unique, peu de mémoire occupée) déduction pour réaliser des prédictions (rapide, répétée) Les algorithmes «paresseux» (lazy learning) : simple mémorisation des exemples d'apprentissage (rapide, unique, beaucoup de mémoire occupée) induction d'une représentation prédictive locale (a priori plus précise) pour chacune des prédictions réalisées (lente, répétée) permet d'apprendre des fonctions (réelles ou discrètes) très complexes mais bien décrites localement
La fouille de données L Apprentissage Automatique (AA) Fouille de données supervisée Fouille de données non supervisée
Fouille de données non supervisée Invention de nouveaux concepts (Clustering) les K-moyennes les cartes auto-organisatrices Découverte de relations entre les attributs Découverte d'associations Apprentissage de réseaux bayésiens
Clustering Catégorisation, partitionnement, segmentation Objectif : trouver des regroupements «naturels» (clusters) des exemples regrouper les exemples jugés similaires inventer un nouvel attribut C dont les valeurs c 1, c 2,, c k indiquent le cluster auquel un exemple appartient à la différence de la discrimination, les valeurs de C ne sont pas fournies avec les exemples d'apprentissage critère pour réaliser les regroupements : minimiser la similarité inter-cluster maximiser la similarité intra-cluster Exemple d'application : segmentation de la clientèle en groupes homogènes
La méthode des K-moyennes Cherche k partitions (clusters) des exemples, où k est un paramètre fourni par l'utilisateur S'applique uniquement à des données numériques Cherche à minimiser la distorsion (la somme des distances entre les exemples et les centres de gravités des clusters auxquels ils appartiennent) Un exemple est représenté par un vecteur
Algorithme des K-moyennes Répartir (aléatoirement) les exemples en k clusters : Répète Pour chaque cluster Calculer le centre de gravité du cluster : Vider le cluster : Pour chaque exemple i, 1 i k = { } Trouver le cluster I telle que Actualiser le cluster I : Jusqu'à condition d'arrêt c i c, c, 2, 1 Λ x ρ ρ ρ ρ ρ dist ( x, m I ) = mindist ( x, mi ) 1 i k ρ c c { x} I I ρ m i x c = ρ c i i ρ x c k
Discussion L'algorithme peut être arrêté quand les centres de gravité ne se déplacent plus significativement ou quand la distorsion descend sous un seuil donné Il est démontré que l'algorithme des K-moyennes converge vers un minimum local de la distorsion Très sensible aux partitions initiales (solution possible : exécutions répétées avec des initialisations différentes) Demande à l'utilisateur de deviner une bonne valeur pour le paramètre k
Méthodes de clustering hiérarchique Produisent une hiérarchie de clusters, représentée sous la forme d'un arbre Avantages : représente explicitement les relations entre les clusters permet à l'utilisateur de choisir a posteriori le niveau de détail qui l'intéresse Approches : agglomérative (ascendante) divisive (descendante : similaire à l'iad)
Clustering hiérarchique agglomératif Algorithme : créer un cluster par exemple d'apprentissage tant qu'il reste plus d'un cluster calculer la matrice des similarités entre les clusters combiner en un seul cluster les deux clusters les plus similaires Résultat : la trace des combinaisons de clusters forme un arbre binaire (hiérarchie de clusters)
Discussion Comment calculer la distance entre deux clusters? minimum, maximum ou moyenne des distances entre deux exemples appartenant à chacun des clusters Forte complexité : la première étape implique déjà le calcul des distances entre toutes les paires d'objets : O(N 2 ) Grand nombre de variantes
Fouille de données non supervisée Invention de nouveaux concepts (Clustering) les K-moyennes les cartes auto-organisatrices Découverte de relations entre les attributs Découverte d'associations Apprentissage de réseaux bayésiens
Cartes auto-organisatrices de Kohonen Approche connectionniste (RN) Principes : Transformation de l'espace n-dimensionnel des exemples en un espace bi-dimensionnel Préservation du voisinage : deux exemples qui sont similaires dans l'espace original seront également proches dans l'espace 2D Contrainte : représentation numérique Utile pour mettre en évidence l organisation d un espace de données (aspect graduel du voisinage)
Structure d une carte de Kohonen Voisinage carré de dimension 1 : x 1 x 2 x n connexion adaptative connexion récurrente
Principes de l'algorithme d apprentissage d une carte Chaque neurone se spécialise dans la reconnaissance d'un cluster d'exemples similaires Les neurones voisins dans le réseau représentent des clusters proches dans l'espace des exemples Après la présentation d'un exemple x ρ, le vecteur des poids du neurone le plus actif (le vainqueur), ρ ainsi que ceux de son voisinage est rapproché de x L'apprentissage est contrôlé par un paramètre η qui décroît au cours de l'apprentissage Le voisinage des neurones se rétrécit également au cours de l'apprentissage
Algorithme d apprentissage d une carte de Kohonen tant que la condition d'arrêt n'est pas remplie ρ présenter un exemple x au réseau ρ ρ calculer les sorties des neurones : f ( w, x) pour le neurone i rechercher le neurone de sortie maximale i * adapter les poids des neurones k de la carte selon la règle : ρ w k ρ w k i ρ ρ + ηtv ( k, i*, t)( x wk ) avec V(k,i *,t) = 1 si k est au voisinage de i * à l instant t
Fouille de données non supervisée Invention de nouveaux concepts (Clustering) les K-moyennes les cartes auto-organisatrices Découverte de relations entre les attributs Découverte d'associations Apprentissage de réseaux bayésiens
Découverte d'associations Données : ensemble d'exemples décrits par des attributs binaires Connaissances recherchées : p i= 1 règles d'association P C suffisamment représentatives i et précises (P i = var. propositionelle, C = var. conclusion) le symbole de l'implication logique est utilisé abusivement
Le problème Difficulté ni le nombre de prémisses ni la conclusion ne sont fixés d'avance espace de recherche immense (exponentiel par rapport au nombre d'attributs) Solution analyser la structure de l'espace de recherche pour élaguer certaines voies de recherche
Notations et définitions : fréquence notation ensembliste pour les conjonctions : { } 1, 2, Λ, p p i= 1 P = P P P P e = un exemple, A(e) = «A est vrai dans e» fréquence d'un ensemble d'attributs Q fréq ( Q ) = ( e ), { e} { e A A Q } i
Représentativité et support support d'une règle d'association estimation de la probabilité d'avoir simultanément vraies les prémisses et la conclusion de la règle ie. support une règle R est suffisamment représentative si support ( R) σ l'utilisateur ( P C ) = fréq ( P C ) où σ est un paramètre fourni par
Précision et confiance confiance d'une règle d'association estimation de la probabilité d'avoir la conclusion vraie quand les prémisses sont vraies ie. confiance une règle R est suffisamment précise si confiance( R) γ l'utilisateur ( P C) = fréq fréq ( P C) ( P) où γ est un paramètre fourni par
Principe de la découverte d'associations Propriété tous les sous-ensembles d attributs d'un ensemble fréquent (fréquence σ) sont également fréquents Algorithme Etape 1 : recherche incrémentale de tous les ensembles fréquents Etape 2 : génération des règles d'association à partir des ensembles fréquents découverts à l'étape 1
Algorithme de découverte d'associations : étape 1 Etape 1 : Recherche des ensembles fréquents C := l'ensemble de tous les singletons d attributs (*candidats*) F := {} (*ensembles fréquents*) i := 1 (*taille des candidats*) tant que C {} F' := les ensembles fréquents de C (par rapport au support) F := F F' C := ensembles d'attributs de taille i+1 tels que tous leurs sous-ensembles de taille i soient fréquents (C est l ensemble de toutes les unions de taille i+1 d éléments de F) i := i+1
Algorithme de découverte d'associations : étape 2 Etape 2 : Génération de règles F := les ensembles fréquents trouvés à l'étape précédente pour chaque ensemble fréquent E F pour chaque attribut A E si confiance(e\{a} A) γ alors E\{A} A est une règle d'association
Discussion Complexité algorithmique avec certaines astuces algorithmiques on peut arriver à une complexité linéaire par rapport à la taille des données on peut explorer dans un temps raisonnable des ensembles de quelques dizaines de millions d'exemples Problème : milliers de règles découvertes estimation statistique de la confiance dans les règles découvertes estimation de l'intérêt des règles découvertes
Fouille de données non supervisée Invention de nouveaux concepts (Clustering) les K-moyennes les cartes auto-organisatrices Découverte de relations entre les attributs Découverte d'associations Apprentissage de réseaux bayésiens
Introduction ASA largement orienté symbolique compréhensibilité bruit, valeurs manquantes? Statistiques descriptives et Analyse de Données quasi-exclusivement numérique imposent des hypothèses très fortes (gaussienne ) difficulté d inteprétation des résultats techniques éprouvées
Apport des réseaux bayésiens Hybridation entre la compréhensibilité des résultats des méthodes symboliques les fondements probabilistes rigoureux des méthodes statistiques la structure en réseau de composants simples des approches connexionistes Les réseaux bayésiens représentent toutes les relations entres les attributs décrivant les exemples
Rôle Qu est ce qu un réseau bayésien? Représente les Distributions de Probabilités Jointes P(X1,,Xn) Exploite les relations d indépendance conditionnelle pour réduire la quantité d information nécessaire simplifier les inférences Définition : graphe orienté sans cycle orienté dont les nœuds sont étiquetés par les variables du domaine les nœuds sont reliés entre eux par des axes orientés chaque nœud contient une table de probas conditionnelles { U1, U 2 U n} P ( X parents( X )) où parents( X ) =,...,
Exemple : contexte Système de sécurité doté d une alarme fonctionne correctement pour les cambriolages se déclenche parfois à tort pour des tremblements de terre mineurs John et Mary se proposent d appeler quand ils entendent l alarme mais John confond parfois la sonnerie du téléphone avec l alarme Mary n entend pas toujours l alarme
Exemple : réseau bayésien obtenu C P( C ) = 0, 001 T ( ) P T = 0, 002 C = cambriolage T = Tremblement de terre A = alarme J = Appel de John M = Appel de Mary A ( ) = ( T) = ( C T) = ( ) P A C, T 0, 95 P A C, 0, 94 P A, 0, 29 P A C, T = 0, 001 J ( ) ( A) P J A P J = 0, 9 = 0, 05 M ( ) ( A) P M A P M = 0, 7 = 0, 01
Construction de RB Algorithme : Choix d'un ordre sur les variables Pour i de 1 à n : création du nœud correspondant à la variable X i recherche d'un ensemble minimal de variables Pa i, parmi les variables déjà traitées, tels que la variable X i est indépendante des variables {X i-1, X i-2,, X 1 }\Pa i si on connaît les variables Pa i création d arcs orientés entre les variables Pa i et la variable X i création de la TPC correspondant à la variable X i La complexité du réseau obtenu est très dépendante de l'ordre des variables Dans la pratique, on s'appuie sur les relations de causalité directe entre les variables
Inférence à partir des RB Problème général : cf inférence probabiliste Avantages par rapport aux arbres de décision : rôle des variables non figé à l avance inférences possibles «dans tous les sens» Inférences s appuient sur les tables de probabilités des nœuds les indépendances conditionnelles (structure du réseau) l axiomatique probabiliste Existence d algorithmes mais complexité importante dans l absolu
«Diagnostique» Types d inférences des effets vers la cause : chaînage arrière exemple : P(C J)? Causale des causes vers les effets : chaînage avant exemple : P(J C)? Inter-causale entre les causes et un effet connu exemple : P(C A T)? Mixte : combine un ou plusieurs des types précédents exemple : P(A J T)? (diagnostique + causale)
Plan Généralités sur l ECD Le pré-traitement des données La fouille de données Optimiser la fouille Visualisation Les systèmes d ECD
Optimiser la fouille Evaluation des résultats de la fouille Gestion des accès aux bases de données
Evaluation des résultats de la FD L'évaluation ultime est réalisée par l'utilisateur, sur la base de critères souvent subjectifs : intérêt, nouveauté, facilité de compréhension ECD : efforts de formalisation de ces critères, afin de les rendre objectifs et d'automatiser leur évaluation Deux grands groupes de critères : concernant la forme des résultats produits concernant les performances de ces résultats
Evaluation de la forme Critère d'ockham : «Toutes choses égales par ailleurs, on préfère l'explication la plus simple» Avantages des explications simples: plus faciles à comprendre risque de sur-spécialisation réduit Mesures syntaxiques de complexité («simplicité») nombre de nœuds des arbres de décision nombre de règles, etc.
Evaluation des performances Selon le type de méthode de FD : taux d'erreur pour la discrimination distorsion pour le clustering, etc. L'évaluation de ces critères sur l'ensemble d'apprentissage donne des estimations trop optimistes Meilleures estimations obtenues sur des exemples qui n'ont pas servi à la FD
Le schéma classique Apprentissage-Test découpage de l'ensemble d'exemples disponibles en deux sous-ensembles (d'apprentissage et de test) selon un pourcentage quelconque (80 % - 20 %) application de la méthode de FD sur l'ensemble d'apprentissage estimation des performances sur l'ensemble de test inconvénient : les estimations obtenues peuvent varier beaucoup en fonction du découpage particulier utilisé
Apprentissages-tests répétés répétition de la procédure précédente plusieurs fois (50), sur des découpages différents de l'ensemble d'exemples calcul de la moyenne et de l'écart-type des estimations obtenues pour les différents découpages la moyenne constitue un bon estimateur des performances sur de nouveaux exemples l'écart-type indique la stabilité des résultats
Variante : Validation croisée subdivision de l'ensemble des exemples disponibles (D) en v sous-ensembles de tailles égales pour chacun de ces sous-ensembles D i : fouille sur D\D i estimation des performances sur D i
Cas particulier : la discrimination Hypothèse : on obtient 5 % d'erreur (selon une des méthodes d'estimation précédentes) Question : est-ce un bon ou mauvais résultat? Dépend de la nature des données traitées Exemple 1 : répartiton homogène des valeurs de classe résultat correct Exemple 2 : une des valeurs de classes (les fraudes) n'est représentée que dans moins de 5 % des exemples? un tel résultat peut être obtenu en prédisant toujours la non-fraude il y a des fortes chances que le résultat obtenu n'ait aucune utilité!
La matrice de confusion prédite vraie Classe 1 Classe 2 Classe 3 Classe 1 Classe 2 98 1 1 0 100 0 Classe 3 40 40 20
Autres critères d évaluation pour la discrimination Taux de détection : le pourcentage d'une certaine classe qui est correctement détecté nb. positifs bien classés / nb. réel de positifs Fiabilité : la confiance qu'on peut avoir dans la prédiction d'une certaine classe nb. positifs bien classés / nb. d exemples classés comme positifs Coût : quand les différentes erreurs n ont pas la même gravité coût total : somme des taux d'erreurs pondérés par leur coût
Comparaison des algorithmes de FD Il n'y a pas de meilleur algorithme en général affirmation surprenante mais prouvée théoriquement Par contre, un algorithme peut surpasser un autre sur une certaine tâche ou un certain type de tâches besoin de méthodes fiables de comparaison
Méthode pratique de comparaison Comparaison sur la même tâche Plusieurs apprentissages / tests sur les mêmes découpages des exemples Résultats soumis au test de Student pour échantillons appariés
Test de Student (pour échantillons appariés) Test statistique qui fournit la probabilité p que les moyennes des performances soient identiques Implémentation disponible dans la plupart des librairies scientifiques (ex : Numerical Recipes) On considère qu'un algorithme est supérieur à un autre si p est inférieur à un certain seuil (0,05)
Optimiser la fouille Evaluation des résultats de la fouille Gestion des accès aux bases de données
Accès aux BDD Les entrepôts de données La Qualité des données Fouille de données et SGBD - Couplage
L'ECD dans son contexte industriel Technologies souvent associées à l'ecd dans la constellation de l'informatique décisionnelle les entrepôts de données (Data Warehouse) le traitement analytique en ligne (OLAP) Ces technologies sont nées et ont évolué d'une manière relativement indépendante par rapport à l'ecd une certaine redondance d'objectifs, de moyens et de terminologie (limites floues) confusions fréquentes ont reçu assez peu d'attention de la part de la communauté scientifique de l'ecd
Relation ECD - Entrepôts de Données D'où viennent les données utilisées par l'ecd? Première réponse : les omniprésents SGBD sur lesquels s'appuient les applications de l'entreprise Difficultés les BD opérationnelles reflètent la situation instantanée au moment de la consultation les données sont éparpillées entre les différents départements et applications la gestion de ces données est censée faciliter les transactions et non pas l'analyse Deuxième réponse : l'entrepôt de données
Entrepôt de données (Data Warehouse) BD opérationnelle concerne une application données actuelles détails change continuellement Entrepôt de données concerne un sujet d'analyse données actuelles + données historiques détails + résumés relativement stable
Mise en place : collecte des données identifier les sources internes à l'entreprise : non-informatisées (papier) fichiers séquentiels BD relationnelles, orientées-objets, etc. éventuellement, faire appel à des sources externes (acheter des données) définir le modèle de données de l'entrepôt en fonction des objectifs d'analyse extraire les données nécessaires à partir des différentes sources et les intégrer à l'entrepôt
Mise en place : nettoyage des données identification et correction des valeurs inconsistantes, manquantes, incomplètes, redondantes ou incorrectes si possible, les données sont nettoyées à la source, avant d'être chargées dans l'entrepôt planification d'opérations périodiques de vérification et nettoyage des données
Accès aux BDD Les entrepôts de données La Qualité des données Fouille de données et SGBD - Couplage
Trois facteurs critiques Les données doivent être disponibles Elles n ont pas forcément été recueillies pour Les données doivent être de bonne qualité Les données doivent concerner la question posée
Typologie des erreurs (1) Données incomplètes Enregistrements manquants valeurs manquantes champs manquants Données incorrectes erreur de saisie erreur de calcul duplication
Typologie des erreurs (2) Données incompréhensibles encodage non-classique (soucie d économie des espaces disques) Données inconsistantes usage du même code pour des choses différentes saisie inconsistante des noms et des adresses usage de différentes règles de calcul usage inconsistant des valeurs nulles, vides, espaces, zéros, etc.
Accès aux BDD Les entrepôts de données La Qualités des données Fouille de données et SGBD - Couplage
Couplage faible SGBD - FD : principe SGBD Fichier (format spécifique pour la FD ) Fouille de données La plupart des «Algorithmes d Apprentissage» ou des outils statistiques actuels. Un format s est imposé comme «standard» : C 4.5 Fichier ASCII avec le même nom et des extensions différentes
Exemple de fichiers.names = des informations sur les attributs et la classe Oui, Non. classe (programmation d un match de foot) Ciel : Ensoleillé, Couvert, Pluvieux. attribut nominal Température : continu attribut numérique Humidité : continu Vent : Vrai, Faux..data = contient les exemples d apprentissage. Ensoleillé, 25, 60, Faux, Oui Pluvieux, 15,90, Oui, Non
Couplage faible SGBD - FD : bilan PROBLEMES complètement à la charge de l utilisateur duplication des données une seule table nécessité d une jointure universelle (Volume!) ces fichiers ne sont pas prévus pour un accès aléatoire nécessité d un chargement intégral en mémoire Recherche d une meilleure intégration avec le SGBD
Couplage intermédiaire SGBD - FD (mi-faible) offert par la plupart des produits commerciaux d ECD consiste en une interface vers le SGBD permet de charger directement les exemples à partir des BD originales via une requête SQL avantage : élimine au moins la tâche de conversion pour l utilisateur inconvénient : la totalité de la base réside en mémoire
Couplage fort SGBD - FD : principes les données restent sur le disque, à la charge du SGBD chaque accès aux données au cours de la fouille est converti en une requête vers le SGBD et profite ainsi du mécanisme d'optimisation des requêtes du SGBD pour être efficace, cette solution demande la conception d'algorithmes de FD adaptés au langage de requêtes du SGBD (généralement SQL) comme l'algèbre relationnelle la logique du 1 er ordre, des algorithmes qui effectuent la recherche directement dans l'espace des requêtes ont déjà été proposés (PLI)
Plan Généralités sur l ECD Le pré-traitement des données La fouille de données Optimiser la fouille Visualisation Les systèmes d ECD
Visualisation des données Méthode alternative et complémentaire à la FD automatique (discrimination, clustering) au pré-traitement automatique (détection des valeurs aberrantes, génération d'attributs dérivés) Fondée sur le domaine plus ancien de la visualisation scientifique Méthodes les plus répandues projections 2D ou 3D coordonnées parallèles, icônes, etc. spécifiques au domaine d'application
Projections 2D ou 3D XmdvTool Mineset
Coordonnées parallèles Les valeurs des attributs sont indiquées sur des axes parallèles Les valeurs appartenant à un même exemple sont reliés par des segments Les «faisceaux» de «trajectoires» indiquent des clusters XmdvTool
Visualisation à base d'icônes Les valeurs des différents attributs sont représentés par des caractéristiques facilement reconnaissables des figures (longueurs des segments, angles, etc.) La plus originale : à base de visages humains XmdvTool
Visualisation spécifique au domaine d'application (ici : cartographie) Mineset
Plan Généralités sur l ECD Le pré-traitement des données La fouille de données Optimiser la fouille Visualisation Les systèmes d ECD
Les systèmes d'ecd (étude de Gartner Group 96) 1 MF 150 KF Simples Méthodes de FD Complexes Predict Alice Scenario 4Thought Knowledge Seeker MineSet Decision Series Clementine Datamind SPSS SAS Intelligent Miner 5 KF PC Utilisateur Compétences requises Expert Gros serveurs
Clementine de ISL (UK) + Un des premiers + Interface utilisateur innovante, fondée sur la programmation visuelle en flux de données + les différents outils représentés comme des icônes interconnectables + un processus d'ecd = programme visuel réutilisable Outils de visualisation moins impressionnants que dans d'autres systèmes pas de 3D
Outils ( Clementine v. 4) accès aux données fichiers ASCII (format simple), SGBD pré-traitement exemples : échantillonnage, filtrage, etc. attributs : dérivation, suppression, etc. fouille des données supervisée : régression linéaire, arbres de décision, backprop non-supervisée : associations, Kohonen visualisation / aide à l'interprétation des données : projections 2D, histogrammes etc. des résultats de la FD : arbres, associations
MineSet de Silicon Graphics + Chapeauté par des chercheurs confirmés (R.Kohavi) + Moteur de FD basé sur une bibliothèque de classes C++ développée à l'université de Stanford(MLC++) + Visualisation (SGI!) ± beaucoup (trop?) de 3D + concepts innovants (ex: survol des arbres de décision avec effet d'horizon pour réduire la complexité) Choix limité de méthodes de FD peu documentées + plus de méthodes annoncées pour les nouvelles versions
Outils ( MineSet v. 1.2) accès aux données fichiers ASCII (format plus complexe), SGBD pré-traitement exemples : agrégation attributs : dérivation, suppression, etc. fouille des données supervisée : arbres de décision, Naive Bayes non-supervisée : associations visualisation / aide à l'interpétation des données : projections 3D, cartes des résultats de la FD : arbres, associations, Naive Bayes