data mining - accueilaugusto/enseignement/icm/gis1/up3-2...le data mining est l’ensemble des...
TRANSCRIPT
Data Mining
V. Augusto
1/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Data Mining
Vincent Augusto
Ecole Nationale Superieure des Mines de Saint-Etienne
2012-2013
Data Mining
V. Augusto
2/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
3/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Definition generale
Le data mining est l’ensemble des algorithmes etmethodes :
• destines a l’exploration et a l’analyse,
• pour de grandes bases de donnees informatiques,
• sans a priori.
Le data mining permet la detection dans les donnees :
• de regles, d’associations, de tendances inconnues, destructures particulieres,
• restituant l’information utile,
• tout en reduisant la quantite de donnees.
⇒ pour l’aide a la decision.
Data Mining
V. Augusto
4/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Objectif
On ne veut plus seulement savoir :≪ Combien de clients ont achete tel produit pendant telleperiode ? ≫
Mais :
• ≪ Quel est le profil des clients ? ≫
• ≪ Quels autres produits les interesseront ? ≫
• ≪ Quand seront-ils interesses ? ≫
Data Mining
V. Augusto
5/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Des statistiques...
Statistiques :
• Quelques centaines d’individus.
• Quelques variables recueillies avec un protocole special(echantillonnage, plan d’experience).
• Hypotheses fortes (a priori) sur les lois statistiques suivies.
Analyse de donnees :
• Quelques milliers d’individus.
• Plusieurs dizaines de variables.
• Construction de tableaux Individus × Variables.
• Importance de la representation visuelle.
Data Mining
V. Augusto
6/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
... au data mining.
Contexte actuel :
• Quelques millions d’individus.
• Quelques centaines de variables.
• De nombreux types de variables (numeriques ousymboliques).
• Donnees recueillies souvent avant l’etude et a d’autres fins.
• Mise en œuvre de calculs rapides.
Nouvel objectif :
• On ne cherche pas toujours l’optimum mathematique.
• On recherche le modele le plus facile a apprehender parun utilisateur non statisticien.
Data Mining
V. Augusto
7/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Domaines d’application
Domaines concernes :
• Customer Relationship Management (CRM).
• Detection de fraude (CB, telephone mobile).
• Text Mining (etude de mails de reclamation, extraction etclassification de connaissance dans les textes).
• Web Mining (personnalisation de sites web en fonction deshabitudes et du contenu examine).
• Aide au diagnostic medical.Exemple : en fonction de points communs detectes avecles symptomes d’autres patients connus, le systeme peutcategoriser de nouveaux patients au vu de leurs analysesmedicales en risque estime (probabilite) de developper telleou telle maladie.
Data Mining
V. Augusto
8/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Domaines d’application
Domaines pluridisciplinaires :
• Analyse de donnees, statistiques, probabilites.
• Bases de donnees.
• Intelligence artificielle :• systemes experts ;• apprentissage automatique ;• logique.
• Sciences cognitives :• neurosciences ;• psychologie experimentale ;• philosophie...
Data Mining
V. Augusto
9/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
10/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Decouverte des connaissances
Data Mining
V. Augusto
11/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Decouverte des connaissances
Exemple de base de donnees :
Un ensemble de supermarches localises dans differentes villes,en France et a l’etranger.
Caracteristiques :
• Chaque supermarche possede sa propre base.
• Informations sur les clients :Customer(c id, c name, c addr, c job, ...)
• Informations sur les produits/articles en vente :Item(i id, i name, i category, ...)
• Informations sur les achats/transactions realisees (pourchaque transaction, les articles sont stockes un par un) :Transaction(t id, c id, i id, t date, ...)
Data Mining
V. Augusto
12/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
13/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Nettoyage des donnees
Objectif :
Supprimer les donnees bruitees ou non pertinentes.
Questions :
• Que faire si certaines donnees sont manquantes ?• Certains clients n’ont pas donne leur adresse.
• Toutes les donnees sont-elles fiables (problemesd’inconsistance) ?
• Un meme article appartient a differentes categories (dansdes magasins differents).
• Le prix d’un meme article est tres superieur a la normaledans un magasin donne.
• Que faire si certaines donnees sont numeriques dans le casou la technique d’extraction ne peut manipuler que desdonnees symboliques ?
Data Mining
V. Augusto
14/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Donnees manquantes
Solutions :
• Ne pas tenir compte des tuples contenant des donneesmanquantes (valeurs nulles).
• Remplir manuellement les champs non remplis.
• Utiliser les valeurs connues :• Remplacer un salaire manquant par le salaire median des
clients.• Predire les valeurs manquantes, en le deduisant d’autres
parametres (salaire a partir de l’age et de la profession).
Data Mining
V. Augusto
15/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Donnees bruitees
Plusieurs solutions : lissage, segmentation, regression lineaire.
Techniques de lissage (data smoothing) :
1 Trier les differentes valeurs de l’attribut considere.{4, 8, 15, 21, 21, 24, 25, 28, 34}
2 Partitionner l’ensemble resultat.{{4, 8, 15}, {21, 21, 24}, {25, 28, 34}}
3 Remplacer les valeurs initiales par de nouvelles valeurs enfonction du partitionnement realise :
• par la valeur moyenne des regroupements realises{9, 22, 29}
• par les min et max des regroupements realises.{{4, 4, 15}, {21, 21, 24}, {25, 25, 34}}
Implique une perte de precision ou d’information.
Data Mining
V. Augusto
16/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Donnees bruitees
Techniques de segmentation (clustering) :
• Les valeurs similaires sont placees dans une meme classe.
• On ne tient pas compte des valeurs isolees (dans uneclasse comportant trop peu d’elements).
Techniques de regression lineaire :
• Hypothese : un attribut Y depend lineairement d’unattribut X .
• Annees d’experience X et salaire Y.
• Trouver les coefficients a et b tels que Y = aX + b.
• Remplacer les valeurs de Y par celles predites.
Data Mining
V. Augusto
17/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Donnees bruitees : regression
lineaire
Donnees de depart :
Un ensemble de couples (Xi ,Yi ).
Determination des coefficients :
• Soient X et Y les valeurs moyennes des attributs X et Y .
• a =cov(x , y)
V (x).
• b = Y − aX .
Data Mining
V. Augusto
18/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Donnees inconsistantes
Donnees inconsistantes dans une base de donnees :
• Contraintes d’integrites ou dependances fonctionnelles nonrespectees.
• Exemples :• La contrainte I ID→I CATEGORY n’est pas respectee au
moment de l’integration des donnees.• Unicite de cles non respectee.
Data Mining
V. Augusto
19/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
20/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Integration des donnees
Objectif :
Regrouper les donnees provenant de differentes sources.→ Problematique typique lors de la construction d’entrepots dedonnees.
Exemple :
Un attribut nomme C ID dans la BD de Paris peut tres bien senommer CUST ID dans la BD de Londres.→ Utilisation de meta-donnees (XML) pour la mise encorrespondance.
Data Mining
V. Augusto
21/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
22/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Transformation des donnees
• Lissage de donnees : utilisation de techniques deregression.
• Normalisation des donnees : normaliser certainsattributs numeriques afin qu’ils varient entre 0 et 1.
• Pour ne pas privilegier les attributs ayant les plus grandsdomaines de variation (salaire/age).
• Agregation des donnees : operations OLAP (On-LineAnalytical Processing) permettant une analysemultidimensionnelle sur les BD volumineuses afin demettre en evidence une analyse particuliere des donnees.
• Calculer les niveaux de ventes realisees de tel produit parmois plutot que par jour.
• Generalisation des donnees : remplacer les donneesfinies par des donnees de plus haut niveau.
• Remplacer les adresses precises des clients par leur codepostal.
• Remplacer l’age des clients par ≪ jeune ≫, ≪ adulte ≫,≪ senior ≫.
Data Mining
V. Augusto
23/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Discretisation des connaissances
Repartition des valeurs des attributs :
A chaque etape, on cherche a decouper l’intervalle de variationdes donnees en K intervalles comportant le meme nombre devaleurs.On divise C AGE= [0, 100] en A1 = [0, 20] et A2 = [20, 100] si50 % des clients ont moins de 20 ans.
Entropie et classification a priori des donnees :
On cherche a caracteriser les individus achetant les differentstypes de lait (entier, demi-ecreme, ecreme).
Facilite a apprehender le decoupage obtenu :
On veut obtenir des intervalles du type [−12.5, 0] plutot que[−12.536, 0.0005].
Data Mining
V. Augusto
24/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Discretisation basee sur l’entropie
(1/2)
Entropie d’un ensemble de donnees S :
Definition :
• S est decoupe en k classes C1,. . .,Ck .
• Ent(S) =∑
pi . log(pi ) avec pi =|Ci ||S| .
Proprietes :
• Ent(S) est maximale (egale a 0) si les donnees sontreparties dans une seule et meme classe.
• Ent(S) est minimale si les donnees sont uniformementreparties dans toutes les classes.
Data Mining
V. Augusto
25/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Discretisation basee sur l’entropie
(2/2)
Methode :
• Decouper S = [a, b] en S1 = [a, c] et S2 = [c , b].
• Maximiser le gain d’informationI (S , c) = |S1|
|S| Ent(S1) +|S2||S| Ent(S2)− Ent(S).
• Arret du decoupage si le gain devient insuffisant, quel quesoit c .
Data Mining
V. Augusto
26/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Variation de l’entropie
Data Mining
V. Augusto
27/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
28/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Selection des donnees
Objectif :
Garder uniquement les donnees pertinentes pour l’etude arealiser.
Exemple :
• Doit-on s’interesser a toutes les categories de produits devente ?
• Doit-on s’interesser aux ventes realisees il y a plus d’unan ?
Data Mining
V. Augusto
29/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
30/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Reduction des donnees
Reduction en ligne par echantillonnage :
• Pour des raisons de performance.
• Du fait de la complexite importante des algorithmesd’extraction.
• Plusieurs methodes : echantillonnage aleatoire (avec ousans remise), echantillonnage par clustering/segmentation.
Reduction en colonne par suppression des attributsredondants :
• Cas triviaux (age et date de naissance).
• Via une analyse des correlation entre attributs :corrA,B = P(A∧B)
P(A).P(B) =P(B/A)P(B)
• Independance : corrA,B = 1 si P(B/A) = P(B).
• Correlation positive : corrA,B > 1 si P(B/A) > P(B).
Data Mining
V. Augusto
31/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Matrice de contingence
Exemple de matrice de contingence :
Avec pain Sans pain Total
Avec beurre 4.000 3.500 7.500Sans beurre 2.000 500 2.500Total 6.000 4.000 10.000
Analyse de correlation :
• P(Beurre) = 7.50010.000 = 0.75 et P(Pain) = 0.6.
• P(Beurre ∧ Pain) = 4.00010.000 = 0.4.
• corrPain,Beurre = 0.40.75×0.6 = 0.89 < 1
→ Indique une correlation negative.
Data Mining
V. Augusto
32/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Qualite de la correlation
Coefficient de correlation :
rA,B =
∑
(Ai − A)(Bi − B)
σA.σB
avec σX =√
∑
(Xi − X )2.
Signification :
Plus rA,B s’eloigne de zero, meilleure est la correlation :
• rA,B = +1 : correlation positive parfaite.
• rA,B = −1 : correlation negative parfaite.
• rA,B = 0 : absence totale de correlation.
Data Mining
V. Augusto
33/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
34/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Extraction de connaissances
Data Mining
V. Augusto
35/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Extraction de connaissances (1/2)
Techniques descriptives :
• Visent a mettre en evidence des informations presentes,mais cachees dans les gros volumes de donnees.Cas de la segmentation de la clientele, de la recherched’association de produits sur les tickets de caisse.
• Permettent de reduire, de resumer et de synthetiser lesdonnees.
• Pas de variable ≪ cible ≫ a predire.
Exemples :
• Techniques de segmentation/clustering : nueesdynamiques, segmentation hierarchique, reseaux deneurones.
• Extraction de regles d’association.
Data Mining
V. Augusto
36/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Extraction de connaissances (2/2)
Techniques predictives :
• Visent a extrapoler de nouvelles informations a partir desinformations presentes.Cas general du scoring (impayes, attrition, credit).
• Permettent d’≪ expliquer ≫ les donnees.
• Il existe une variable ≪ cible ≫ a predire.
Exemples :
• Classification/discrimination (variable cible qualitative) :• analyse discriminante ;• arbres de classification ;• reseaux neuronaux multi-couches.
• Prediction (variable cible quantitative) :• regression lineaire (simple et multiple) ;• arbres de regression.
Data Mining
V. Augusto
37/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
38/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Post-traitement
• Presentation des connaissances.
• Visualisation des connaissances.
• Manipulation des connaissances.
Data Mining
V. Augusto
39/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Presentation des connaissances
Probleme :Comment representer/visualiser les connaissances extraites ?
Formules logiques :
• Age(X , ‘jeune‘), Revenu(X , ‘eleve‘) → class(X , ‘A‘)[1.402].
• Age(X , ‘jeune‘), Revenu(X , ‘bas‘) → class(X , ‘B ‘)[1.038].
• Age(X , ‘senior ‘) → class(X , ‘C ‘) [2.160].
Data Mining
V. Augusto
40/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Presentation des connaissances
Tableau :
Age Revenu Class Count
jeune eleve A 1.402
jeune bas B 1.038
senior eleve C 786
senior bas C 1.374
Arbre de decision :
Data Mining
V. Augusto
41/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
42/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Generalites
Les origines :
• Intelligence artificielle [Quinlan, 1983].
• Statistiques [Breiman, 1986].
Points forts :
• Applicables a la fois a des attributs numeriques etsymboliques.
• Intelligibilite de la procedure de decision.
• Rapidite de la decision.
• Invariance des resultats a toute transformation monotonedes donnees.
Probleme :Comment construire un arbre de decision a partir d’unensemble de donnees ?
Data Mining
V. Augusto
43/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Principe de construction
Donnees :
• Ensemble de K classes C1,C2, . . . ,CK .
• Ensemble d’objets decrits selon N + 1 attributs ouvariables :
• N variables descriptives (taille, couleurs, forme, etc.)• 1 variable de categorie : a quelle classe appartient un objet
donne (raisin, pomme, banane, etc.) ?
Principe de l’algorithme :
Partitionnement successif de l’ensemble de donnees.
Data Mining
V. Augusto
44/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Definition d’une partition (1/2)
Variable binaire X ∈ {1, 0}
X?
1 0
Variable quantitative X
X < α ?
1 0
Data Mining
V. Augusto
45/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Definition d’une partition (2/2)
Variable qualitative X
avec M modalites dans E = {e1, . . . , em}.
X ∈ E ′ ⊆ E ?
1 0
X ?
e1 e2 eM
Data Mining
V. Augusto
46/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Choix d’une partition
Principe :
Partitionner les donnees en sous-ensembles les plus≪ purs ≫ possibles, i.e. contenant des objets d’une seule classe.
Exemples de criteres d’impurete :
Soit un ensemble S partitionne en K classes C1, . . . ,CK . SoitPk = |Ck |
|S| .
• Taux d’items mal classes : T (S) = 1−maxk(Pk).
• Entropie : I (S) = −∑
k Pk log2 Pk .
• Critere de Gini : G (S) = 1−∑
k P2k .
Data Mining
V. Augusto
47/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Gain d’information (1/2)
Definition :∆I = I (S)− PLI (SL)− PR I (SR)
avec PL = |SL||S| et PR = |SR |
|S| . I est la fonction d’entropie.
Exemple :
S(20/30)
SL(15/5) SR(5/25)
• I (S) = −20/50 log2(20/50) − 30/50 log2(30/50) = 0, 971
• I (SL) = −15/20 log2(15/20) − 5/20 log2(5/20) = 0, 811
• I (SR) = −5/30 log2(5/30) − 25/30 log2(25/30) = 0, 65
∆I = 0, 971 − 20/50(0, 811) − 30/50(0, 65) = 0, 26
Data Mining
V. Augusto
48/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Gain d’information (2/2)
Cas d’une partition quelconque :
∆I = I (S)−∑
k Pk I (Sk)
dans le cas ou S est decoupe en S1, . . . ,SK , avec Pk = |Sk ||S| .
Probleme :Les variables avec un grand nombre de modalites induisent uneplus grande reduction de l’impurete.⇒ ≪ Gain ratio impurity ≫
∆IK =∆I
−∑
k Pk logPk
Data Mining
V. Augusto
49/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Algorithme de construction
Partionnement d’une feuille :
1 Pour chaque variable Xi , rechercher la partition optimaleP∗i = {S1, . . . ,SN}, i.e. la partition maximisant le gain
d’information.(Si Xi est quantitatif, chercher le seuil α maximisant legain d’information.)
2 Choisir parmi toutes les partition P∗i celle qui maximise le
gain d’information.
Arret :
• Lorsqu’une feuille contient uniquement des objets d’uneseule classe.
• Lorsque le gain en information est inferieur a un seuildonne.
Data Mining
V. Augusto
50/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Exemple 1 (1/3)
Data Mining
V. Augusto
51/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Exemple 1 (2/3)
Data Mining
V. Augusto
52/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Exemple 1 (3/3)
Arbre de decision final :
X < 1, 5 ?
Cercle
1
Y < 2, 5 ?
0
Carre
1
Cercle
0
Data Mining
V. Augusto
53/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Exemple 2 (1/6)
id age income student credit-rating class
1 <30 high no fair no2 <30 high no good no3 30-40 high no fair yes4 >40 medium no fair yes5 >40 low yes fair yes6 >40 low yes good no7 30-40 low yes good yes8 <30 medium no fair no9 <30 low yes fair yes10 >40 medium yes fair yes11 <30 medium yes good yes12 30-40 medium no good yes13 30-40 high yes fair yes14 >40 medium no good no
Data Mining
V. Augusto
54/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Exemple 2 (2/6)• Entropie de depart : I (S) = 0, 940.• Avec l’attribut age :
• age < 30 : I (SL) = 0, 971 et I (SR) = 0, 764 donc∆I = 0, 102.
• age < 40 : I (SL) = 0, 918 et I (SR) = 0, 971 donc∆I = 0, 003.
• Avec l’attribut income :• income = low : I (SL) = 0, 811 et I (SR ) = 0, 971 donc
∆I = 0, 015.• income = medium : I (SL) = 0, 918 et I (SR ) = 0, 954 donc
∆I = 0, 001.• income = high : I (SL) = 1, 0 et I (SR ) = 0, 881 donc
∆I = 0, 025.• Avec l’attribut student :
• student = yes : I (SL) = 0, 592 et I (SR ) = 0, 985 donc∆I = 0.152.
• Avec l’attribut credit − rating :• rating = fair : I (SL) = 0, 811 et I (SR) = 1, 0 donc
∆I = 0, 048.
Data Mining
V. Augusto
55/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Exemple 2 (3/6)
student = yesid age income student credit-rating class
5 >40 low yes fair yes6 >40 low yes good no7 30-40 low yes good yes9 <30 low yes fair yes10 >40 medium yes fair yes11 <30 medium yes good yes13 30-40 high yes fair yes
1 <30 high no fair no2 <30 high no good no3 30-40 high no fair yes4 >40 medium no fair yes8 <30 medium no fair no12 30-40 medium no good yes14 >40 medium no good no
Data Mining
V. Augusto
56/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Exemple 2 (4/6)
• Entropie de depart (student = no) : I (S) = 0, 985.
• Avec l’attribut age :• age < 30 : I (SL) = 0 et I (SR ) = 0, 811 donc ∆I = 0,522.• age < 40 : I (SL) = 0, 811 et I (SR) = 1, 0 donc
∆I = 0, 006.
• Avec l’attribut income :• income = medium : I (SL) = 1, 0 et I (SR ) = 0, 918 donc
∆I = 0, 020.• income = high : I (SL) = 1, 0 et I (SR ) = 0, 918 donc
∆I = 0, 020.
• Avec l’attribut credit − rating :• rating = fair : I (SL) = 1, 0 et I (SR) = 0, 918 donc
∆I = 0, 020.
Data Mining
V. Augusto
57/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Exemple 2 (5/6)
age < 30id age income student credit-rating class
5 >40 low yes fair yes6 >40 low yes good no7 30-40 low yes good yes9 <30 low yes fair yes10 >40 medium yes fair yes11 <30 medium yes good yes13 30-40 high yes fair yes
1 <30 high no fair no2 <30 high no good no8 <30 medium no fair no
3 30-40 high no fair yes4 >40 medium no fair yes12 30-40 medium no good yes14 >40 medium no good no
Data Mining
V. Augusto
58/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Exemple 2 (6/6)
Arbre de decision final :
student ?
Yes
1
age < 30 ?
0
No
1
Yes
0
Data Mining
V. Augusto
59/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Regles d’arret
Exemples de regles d’arret :
• Nombre d’elements dans une feuille inferieur a un seuil.
• Taux de bien classes dans une feuille superieur a un seuil(exemple : maxk(Pk) > 95%).
• Gain d’information inferieur a un seuil (exemple : ∆I < β).
Autre approche : test du χ2
Test de l’independance entre :
• la partition obtenue par maximisation du gaind’information ;
• la partition qui serait obtenue sous l’hypothesed’independance.
Data Mining
V. Augusto
60/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Pour aller plus loin...
Elagage de l’arbre :
• Laisser l’arbre pousser jusqu’a l’obtention de feuillespratiquement pures, puis couper des branches poursimplifier l’arbre.
• Methode : rechercher le sous-arbre minimisant la fonctionde cout-capacite. [Breiman, Olshen et Stone, 1984]
Data Mining
V. Augusto
61/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Pour aller plus loin...
Bagging :
• Amelioration de la stabilite de la methode de classification.
Data Mining
V. Augusto
62/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Conclusion
Avantages :
• Applicables a des variables quantitatives ou qualitatives.
• Intelligibilite de la procedure de classification (avec unetraduction possible sous forme de regles).
• Rapidite du processus de classification (apres constructionde l’arbre).
• Invariance a toute transformation monotone des donnees.
• Selectionne automatiquement les variables les plusimportantes.
Problemes :
• Performance sur de grands volumes de donnees ?
• Choix des variables : arbres multi-varies potentiellementplus performant, mais au detriment de l’intelligibilite dessolutions proposees.
Data Mining
V. Augusto
63/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
1 Introduction
2 Traitement des donneesNettoyage des donneesIntegration des donneesTransformation des donneesSelection des donneesReduction des donnees
3 Extraction de connaissances
4 Post-traitement
5 Exemple de representation : Arbres de decision
6 Perspectives
Data Mining
V. Augusto
64/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Problemes et perspectives
Probleme de performance :
Les volumes de donnees a traiter peuvent etre tres importants.
Solutions :
• Calcul parallele et/ou distribue : utilisation de grilles decalcul.
• Techniques incrementales :• utilisation de resultats anterieurs pour l’optimisation des
calculs de nouvelles requetes d’extraction ;• stockage efficace des resultats de requetes d’extraction.
Data Mining
V. Augusto
65/65
Introduction
Traitementdes donnees
Nettoyage desdonnees
Integration desdonnees
Transformationdes donnees
Selection desdonnees
Reduction desdonnees
Extraction deconnaissances
Post-traitement
Exemple derepresentation :Arbres dedecision
Perspectives
Problemes et perspectives
Traitement de donnees de differents types :
• Feuilles de calcul MS Excel.
• Bases de donnees transactionnelles.
• Bases de donnees relationnelles.
• Structures complexes : donnees spatiales, temporelles, etc.
→ Probleme de l’heterogeneite des donnees.
Besoin de langages de requetes d’extraction :
• SQL ne permet pas de mesurer des notions floues(tendances).
• Introduction de nouveaux langages : MSQL, MINE-RULE,DMQL...
• Syntaxes proches de SQL.• Pas de theorie generale et/ou d’algebre.