Data Mining (Fouille de données)
Iskandar KESKES
[email protected]
Assistant en informatique de gestion à ISGG
Membre du laboratoire MIRACL
Membre du laboratoire IRIT
Université de Gabès
Institut supérieur de Gestion de Gabès
Cours data mining - Iskandar KESKES
Plan du Cours
1. Introduction au Data Mining
2. Processus ECD
3. Techniques de Data Mining
4. Découverte de règles d’association
5. Classification automatique
6. Arbres de décision
7. Réseaux de neurones
8. Manipulation d’outils logiciels de DataMining.
Cours data mining - Iskandar KESKES 2
2. Processus ECD
Cours data mining - Iskandar KESKES 3
Qu’est-ce que le processus ECD ?
Fayyad et al. (1996)
un processus non-trivial d’identification de structures
inconnues, valides et potentiellement exploitables dans les
bases de données
Zighed et al. (2001)
L’ECD est un processus qui fait intervenir des méthodes et
des outils issus de différents domaines en vue de
découvrir des connaissances utiles.
L’ECD vise à transformer les données en connaissances
Cours data mining - Iskandar KESKES 4
Qu’est-ce que le processus ECD ?
L’ECD est un processus qui met en oeuvre un ensemble de
techniques provenant :
des bases de données ; de l’analyse des données ;
de la statistique ; des techniques de visualisation
de l’intelligence artificielle ; des interfaces de communication
homme-machine.
Cours data mining - Iskandar KESKES 5
Qu’est-ce que le processus ECD ?
Les connaissances peuvent s’exprimer :
sous forme d’un concept général qui enrichit le champ
sémantique de l’usager ;
sous forme d’un rapport ou d’un graphique ;
comme un modèle mathématique ou logique pour la prise de
décision ;
comme modèle explicites pour alimenter un système à base
de connaissances ou un système expert.
Cours data mining - Iskandar KESKES 6
Qu’est-ce
Définition que
générale
le processus
de l’ECDECD ?
L’approche de l’ECD se veut la plus générale possible :
Elle ne privilégie pas une source particulière
d’informations
données localement stockées
données distribuées sur plusieurs sources
Elle ne privilégie pas une nature spécifique des
données
données structuréesen attributs-valeurs
des images, des séquences vidéo
Elle ne se limite pas à des outils d’analyse spécifiques
méthodes pour la préparation des données
méthodes pour l’analyse
méthodes la validation des connaissances
Cours data mining - Iskandar KESKES 7
Définition générale de l’ECD
L’Extraction de Connaissances à partir de
Données (ECD) est un processus complexe qui se
déroule suivant une série d’opérations:
Nous pouvons regrouper ces opérations en trois
étapes majeures.
1. la préparation des données,
2. la fouille de données à proprement parler qui est
l’étape centrale de l’ECD
3. et enfin la validation des modèles ainsi élaborés
Cours data mining - Iskandar KESKES 8
Processus de l’ECD
Cours data mining - Iskandar KESKES 9
Phase d’acquisition des données
Cours data mining - Iskandar KESKES 10
Phase d’acquisition des données
Préliminaires
Bien délimiter le problème de la fouille de données.
Ne pas se lancer dans l’ECD sans définir les objectifs.
Avoir une idée claire sur les moyens technologiques à
disposition.
Exemple : Comprendre pourquoi certains clients d’une
entreprise se sont tournés vers une entreprise concurrente ?
Toutes les données du système d’information de
l’entreprise ne sont certainement pas utiles dans leur
intégralité pour traiter ce problème particulier.
Télécharger tout le contenu du Web pour en extraire des
connaissances ! !
Cours data mining - Iskandar KESKES 11
Phase d’acquisition des données
Objectif
La phase d’acquisition vise à cibler l’espace des données qui va être
exploré.
« Le spécialiste du Data Mining agit à l’image du géologue qui définit
des zones de prospection en étant persuadé que certaines régions
seront probablement vite abandonnées car elles ne recèlent aucun
ou peu de minerais. »
Outils
Moteurs de requêtes des bases de données comme SQL.
Outils de requêtes spécifiques aux données non structurées
(données textuelles, images Web)
Moteurs de recherche d’informations par le contenu.
Cours data mining - Iskandar KESKES 12
Phase d’acquisition des données
Nettoyage des données
La phase d’acquisition sert généralement à nettoyer les
données qui sont rapatriées.
Laisser tomber un attribut peu ou mal renseigné.
Limiter le nombre d’enregistrements que l’on souhaite traiter.
Utilisation de filtres adaptés.
Utilisation des techniques d’échantillonnage.
Résultat
Un stock de données contenant potentiellement l’information
ou la connaissance recherchée.
Un échantillon de données tirées du monde réel.
Données relatives à des événements passés.
Cours data mining - Iskandar KESKES 13
Phase d’acquisition des données
Cours data mining - Iskandar KESKES 14
Phase d’acquisition des données
Les techniques de Data Mining ne traitent que des
tableaux de données numériques rangées sous forme
d’individus-variables.
Certaines méthodes sont plus contraignantes que
d’autres :
elles peuvent exiger des données binaires (premières
techniques de recherche de règles d’association)
elles peuvent exiger des données de types particuliers
(variables qualitatives, variables quantitatives)
effectuer une série de transformations pour obtenir des
données adaptées aux méthodes à utiliser.
Cours data mining - Iskandar KESKES 15
Phase d’acquisition des données
Les principales opérations de préparation sont :
La sélection de lignes et/ou colonnes
Le traitement des données manquantes ou aberrantes
Les transformations d’attributs
Le traitement des données complexes
Cours data mining - Iskandar KESKES 16
Exemple: préparation des données
Cours data mining - Iskandar KESKES 17
Exemple: préparation des données
Nettoyage des données
Doublons, erreurs de saisie
un doublon donne plus d’importance à la donnée répétée
Une erreur de saisi peut à l’inverse cacher une répétition
Intégrité de domaine
Un contrôle sur les domaines de valeurs peut révéler des valeurs
aberrantes
Informations manquantes
Données avec des champs ne contenant aucune donnée
Parfois le manque d’information est une information
Les valeurs des autres champs peuvent être utiles
Cours data mining - Iskandar KESKES 18
Exemple: préparation des données
Nettoyage des données
Cours data mining - Iskandar KESKES 19
Exemple: préparation des données
Nettoyage des données
Cours data mining - Iskandar KESKES 20
Exemple: préparation des données
Enrichissement des données
But : enrichir nos données
Acheter ou produire d’autres bases
Ajout de nouveaux champs en conservant le même nombre
d’enregistrements
Faire des conversions si les données sont de formats différents
Effectuer une nouvelle étape de nettoyage de données
Les données ajoutées peuvent contenir des erreurs, des oublis,
etc.
Cours data mining - Iskandar KESKES 21
Exemple: préparation des données
Enrichissement des données
Cours data mining - Iskandar KESKES 22
Exemple: préparation des données
Codage et normalisation
Regroupement
Certains attributs prennent un très grand nombre de valeurs
discrètes possibles
Le regroupement en des sous-ensembles permet de réduire le
nombre de valeurs considérées
Région : Tunis, Sfax / Age : jeune, adulte, vieux
Changement de type
Simplifier les types de données afin de faciliter les comparaisons
et les calculs de distance, etc.
Date de naissance Age / Date d’abonnement Durée
Cours data mining - Iskandar KESKES 23
Exemple: préparation des données
Codage et normalisation
Attributs discrets
Les attributs discrets prennent leurs valeurs dans un ensemble
fini donné
Magazine : 5 valeurs possibles
Deux représentations possibles
Représentation verticale (comme déjà présenté)
Représentation horizontale (ou éclatée)
La représentation horizontale est plus adaptée à la fouille de
données
Somme (colonne sport) / nbre enregistrements = % de
clients de magazines sport
Cours data mining - Iskandar KESKES 24
Exemple: préparation des données
Codage et normalisation
Cours data mining - Iskandar KESKES 25
Exemple: préparation des données
Codage et normalisation
Uniformisation d’échelle
Les données sont réparties sur des échelles différentes
Echelle des dizaines, des centaines, des milliers, etc.
De telles valeurs perturbent les calculs et les comparaisons
entre données
Il faut uniformiser les échelles des données
Dans notre exemple
Diviser les revenus par 100, les âges par 10 pour être
uniformes avec les durées d’abonnements
Cours data mining - Iskandar KESKES 26
Exemple: préparation des données
Codage et normalisation
Cours data mining - Iskandar KESKES 27
Exemple: préparation des données
Sélection de variables
Les données issues de le phase
d’acquisition ne sont pas
nécessairement toutes exploitables
par des techniques de Data Mining.
La recherche des variables
pertinentes parmi un ensemble de
variables est le point central d’un
processus de data mining,
c’est elle qui va conditionner la qualité
des modèles établis.
La sélection des variables non ou
faiblement pertinentes peut réduire la
compréhension et les performances
de reconnaissance d’un modèle.
Cours data mining - Iskandar KESKES 28
Phase de fouille de données
Cours data mining - Iskandar KESKES 29
Phase de fouille de données
Cette phase est au coeur du processus ECD.
Les méthodes de Data Mining permettent de découvrir ce que
contiennent les données préparées comme informations ou
modèles utiles.
Trois catégories de méthodes :
Les méthodes de visualisation et de description ;
Les méthodes de classification et de structuration ;
Les méthodes d’explication et de prédiction.
Certaines méthodes sont mieux adaptées à des données
numériques continues alors que d’autres sont plus
généralement dédiées aux traitements de tableaux de données
qualitatives.
Les méthodes de Data Mining sont, le plus souvent,
complémentaires.
Cours data mining - Iskandar KESKES 30
Phase de validation et de mise en forme
Cours data mining - Iskandar KESKES 31
Phase de validation et de mise en forme
Les modèles extraits ne peuvent être utilisés
directement en toute fiabilité.
Il faut les évaluer, les soumettre à l’épreuve de la réalité et
apprécier leur justesse.
Estimer le taux d’erreur du modèle.
En apprentissage supervisé, le taux d’erreur est
généralement calculé à partir de la matrice de
confusion.
La matrice de confusion donne le pourcentage
d’affectation dans les différentes classes en fonction
des classes d’origine
Cours data mining - Iskandar KESKES 32
Phase de validation et de mise en forme
Critères de comparaison de classifieurs :
1. Taux de précision : capacité à prédire correctement
2. Temps de calcul : temps nécessaire pour apprendre et tester f^
3. Volume de données : efficacité en présence de données de
grande taille
Taux d’erreur :
Soit la matrice de Confusion suivante:
A B
A 888 12
B 5 995
Cours data mining - Iskandar KESKES 33
Phase de validation et de mise en forme
Taux d'erreur global
permet de savoir comment va agir un classifieur sur l’ensemble des
données n A. A n B.B
globale 1
card (M )
où card(M) est le nombre total d’individu
Taux d'erreur à priori
c’est la probabilité qu’un individu appartenant à la classe k ne soit pas
affecté à la classe k.
Il s’agit en effet de calculer le taux d’erreur relatif à chaque classe
pour notre exemple et pour la classe A, le taux d’erreur à priori est
donné par l’équation suivante :
n A,k
à priori k A
n
k
A,k
Cours data mining - Iskandar KESKES 34
Phase de validation et de mise en forme
Taux d'erreur à posteriori
c’est la probabilité qu’un individu affecté à la classe k
appartienne effectivement à la classe k.
pour notre exemple et pour la classe A, le taux d’erreur a
posteriori est :
n k .A
à posteriori k A
k
n k .A
Remarque:
le taux d’erreur à priori est le complément du critère
classique du taux de rappel
Le taux d’erreur à posteriori est le complément du critère
classique du taux de précision
Cours data mining - Iskandar KESKES 35
Récapitulation
Les données
Des bits, des symboles, des nombres, des objets que nous
collectons journalièrement
Les informations
Des données sans redondances, réduites au minimum
nécessaire pour caractériser les données
Les connaissances
La connaissance est intégrée dans l’information, elle inclut
des faits et des relations entre ces faits
Elles relient les informations entre-elles
Cours data mining - Iskandar KESKES 36
Exemple: des données aux connaissances
Cours data mining - Iskandar KESKES 37
Logiciels d’ECD / Data Mining
Logiciels commerciaux :
SPAD (Decisia)
SAS Enterprise Miner • Simplicité du pilotage
• Techniques variées
SPSS Clementine
• Déploiement
STATISTICA Data Miner
• Outils de “reporting”
IBM Intelligent Miner
Logiciels universitaires :
TANAGRA
• Spécifiques à certaines
SIPINA techniques
WEKA • Techniques référencées -
ORANGE publiées
• Outils de validation
Cours data mining - Iskandar KESKES 38