Escolar Documentos
Profissional Documentos
Cultura Documentos
OP AC
Quest-ce que le DM ?
Processus inductif, itratif et interactif de dcouverte dans les BD larges de modles de donnes valides, nouveaux, utiles et comprhensibles. Itratif : ncessite plusieurs passes Interactif : lutilisateur est dans la boucle du processus Valides : valables dans le futur Nouveaux : non prvisibles Utiles : permettent lutilisateur de prendre des dcisions Comprhensibles : prsentation simple
Toutes les voitures ont 4 roues La Peugeot 206 a 4 roues ==> La Peugeot 206 est une voiture
Dduction : Raisonnement qui conclut partir de prmisses et dhypothses la vrit dune proposition en usant des rgles dinfrence
Toutes les voitures ont 4 roues La Peugeot 206 est une voiture ==> La Peugeot 206 a 4 roues
La clio a 4 roues, La Peugeot 106 a 4 roues, La BMW M3 a 4 roues, La Mercedes 190 a 4 roues ==> Toutes les voitures ont 4 roues
Motivations (1)
Masse importante de donnes (millions de milliards dinstances) : elle double tous les 20 mois. BD trs larges - Very Large Databases (VLDB) Donnes multi-dimensionnelles (milliers dattributs) BD denses Inexploitables par les mthodes danalyse classiques Collecte de masses importantes de donnes (Gbytes/heure) Donnes satellitaires, gnomiques (micro-arrays, ), simulations scientifiques, etc. Besoin de traitement en temps rel de ces donnes
Motivations (2)
Amliorer la productivit
Forte pression due la concurrence du march Brivet du cycle de vie des produits Besoin de prendre des dcisions stratgiques efficaces Exploiter le vcu (donnes historiques) pour prdire le futur et anticiper le march individualisation des consommateurs (d-massification).
de supporter de gros volumes de donnes dexcuter le processus intensif dexploration htrognit des supports de stockage
Motivations (3)
Storage Storage
F ile E dit
500 400 300 200 100 0
L oc ate
V iew
H elp
E D C B A
Network Traffic
Mount 431 7437 1950 79% / 02 631963 47358 Help 93% /us
Storage Storage
Storage Storage
Storage Storage
Internet
Storage Storage
Data Warehouse
Donnes dapprentissage
Sources de donnes
Modles, Patterns
Comprendre lapplication
Supprimer le bruit : donnes superflues, marginales, donnes manquantes, etc. Effectuer une slection dattributs, rduire la dimension du problme, etc. Choisir le bon algorithme
Analyser la connaissance (intrt) Vrifier sa validit (sur le reste de la base de donnes) Ritrer le processus si ncessaire
La mettre la disposition des dcideurs Lchanger avec dautres applications (systme expert, ) etc.
Prise de dcisions
Prsentation des connaissances
Utilisateur(s)
Dcideur(s)
Techniques de visualisation
Data Mining
Analyste(s) de donnes
(OLAP, ...)
Sources de donnes
Objectifs
Limiter lintervention de lutilisateur Reprsentation simple de la connaissance Visualisation sous forme exploitable
Communauts impliques
Intelligence artificielle et apprentissage Bases de donnes Analyse de donnes (statistiques) Visualisation Recherche oprationnelle et optimisation Informatique parallle et distribue Etc.
Data mining : Exploratoire, Data-driven modeling Statistiques : Confirmatoire, User-driven modeling Distribution d une seule variable : moyenne, mdiane, variance, cart-type, Explorer les relation entre variables : coefficient de corrlation, Dcouverte de la cause des relations entre de nombreuses variables est assez complexe. test du X2, ... Rseaux baysiens (probabilits conditionnelles)
* *
Domaines dapplication
Prise de dcision base sur de nouvelles connaissances Ex., impact sur le marketing Le rle et limportance du KDD et DM est de plus en plus important Mais le DM nest pas seulement dans le marketing...
Marketing
BDD Marketing
Data Warehousing
Domaines dapplication
Marketing direct : population cibler (ge, sexe, profession, habitation, rgion, ) pour un publipostage. Gestion et analyse des marchs : Ex. Grande distribution : profils des consommateurs, modle d achat, effet des priodes de solde ou de publicit, panier de la mnagre Dtection de fraudes : Tlcommunications, ... Gestion de stocks : quand commander un produit, quelle quantit demander, Analyse financire : maximiser l investissement de portefeuilles d actions.
Domaines dapplication
Gestion et analyse de risque : Assurances, Banques (crdit accord ou non) Compagnies ariennes Bioinformatique et Gnome : ADN mining, Mdecine et pharmacie : Diagnostic : dcouvrir d aprs les symptomes du patient sa maladie Choix du mdicament le plus appropri pour gurir une maladie donn Web mining, text mining, etc.
Exemple 1 - Marketing
Vous tes gestionnaire marketing dun oprateur de tlcommunications mobiles :
Les clients recoivent un tlphone gratuit (valeur 150) avec un contrat dun an ; vous payer une commission de vente de 250 par contrat Problme : Taux de renouvellement ( la fin du contrat) est de 25% Donner un nouveau tlphone toute personne ayant expirer son contrat cote cher. Faire revenir un client aprs avoir quitter est difficile et coteux.
Exemple 1 - Marketing
Trois mois avant lexpiration du contrat, prdire les clients qui vont quitter :
Si vous voulez les garder, offrir un nouveau tlphone.
Exemple 2 - Assurances
Oh,oui! oui! Oh, Jaimema ma Jaime Ferrari! Ferrari! Vous tes un agent dassurance et vous devez dfinir un paiement mensuel adapt un jeune de 18 ans qui a achet une Ferrari. Quest ce quil faut faire ?
Exemple 2 - Assurances
Analyser les clients de la donnes de tous les compagnie.
Si la probabilit davoir un accident est suprieure la moyenne, initialiser la mensualit suivant les risques.
compagnies tlphoniques
Analyser les patterns qui drivent du comportement attendu (destinataire, dure, etc.)
Exemple 4 - Web
Les logs des accs Web sont analyss pour
Dcouvrir les prfrences des utilisateurs Amliorer lorganisation du site Web
De manire similaire
Lanalyse de tous les types dinformations sur les logs Adaptation de linterface utilisateur/service
Format, Type ?
Donnes dapprentissage
Technique ?
Tche ?
Modles, Patterns
Type de reprsentation ?
Les donnes
Valeurs des champs des enregistrements des tables de lentropot (base de donnes) Types :
Donnes discrtes : donnes binaires (sexe, ), donnes numratives (couleur, ), numratives ordonnes (rponses 1:trs satisfait, 2:satisfait, ). Donnes continues : donnes entires ou relles (ge, salaire, ) Dates Donnes textuelles Pages/liens web, Multimdia,
Classification
Elle permet de prdire si une instance de donne est membre dun groupe ou dune classe prdfinie. Classes
Groupes dinstances avec des profils particuliers Apprentissage supervis : classes connues lavance Applications : marketing direct (profils des consommateurs), grande distribution (classement des clients), mdecine (malades/non malades), etc. Exemple : les acheteurs de voitures de sport sont de jeunes citadins ayant un revenu important
Clustering (Segmentation)
Clusters : groupes dinstances ayant les mmes caractristiques Apprentissage non supervis (classes inconnues) Pb : interprtation des clusters identifis Applications : Economie (segmentation de marchs), mdecine (localisation de tumeurs dans le cerveau), etc.
Rgles dassociation
Corrlations (ou relations) entre attributs (mthode non supervise) Applications : grande distribution, gestion des stocks, web (pages visites), etc. Exemple BD commerciale : panier de la mnagre Articles figurant dans le mme ticket de caisse Ex : achat de riz + vin blanc ==> achat de poisson Achats bires et couches-culottes (USA, Week-end)
Recherche de squences
Recherche de squences
Liaisons entre vnements sur une priode de temps Extension des rgles dassociation
Prise en compte du temps (srie temporelle) Achat Tlvision ==> Achat Magntoscope dici 5 ans
Applications : marketing direct (anticipation des commandes), bioinformatique (squences dADN), bourse (prdiction des valeurs des actions) BD commerciale (ventes par correspondance) Commandes de clients Ex : 60% des consommateurs qui commandent la bire Mort subite commandent de laspro juste aprs Squences dAND : ACGTC est suivie par GTCA aprs un gap de 9, avec une probabilit de 30%
Exemple
Q
Dtection de dviation
Applications
Dtection de fraudes (transactions avec une carte bancaire inhabituelle en telemarketing) Problme dinterprtation : bruit ou exception (donc connaissance intressante)
Caractristiques
Illustration
Point isol
Techniques utilises
K-moyennes, A-priori, K-NN Rseaux de neurones Algorithmes gntiques Chanes de Markov caches Arbres de dcision Rseaux bayesiens Soft computing : ensembles flous
Rsum - Introduction
Data mining : dcouverte automatique de modles intressants partir densemble de donnes de grande taille KDD (knowledge data discovery) est un processus :
Pr-traitement (Pre-processing) Data mining Post-traitement (Post-processing)
Base de donnes (relationelle, oriente objet, spatiale, WWW, ) Connaissances (classification, clustering, association, ) Techniques (apprentissage, statistiques, optimisation, ) Applications (gnomique, tlcom, banque, assurance, distribution, )
WEKA 3.2
Waikato Environment for Knowledge Analysis
http://www.cs.waikato.ac.nz/ml/weka/ http://www.lifl.fr/~jourdan
WEKA
Logiciel gratuit disponible sur le web :
WEKA
Interface en ligne de commande Explorer (interface graphique)
Filtre Apprentissage (clustering, classification, ...) Slection dattributs Visualisateur de donnes et de rsultats
Test dune mthode spcifique sur un ensemble de donnes avec des critres varis pour la comparaison de rsultats
WEKA
En entre : fichiers, base de donnes, Url En sortie : affichage des rsultats, sortie des rsultats dans des fichiers, visualisation graphique
Exemple de visualisation aprs une classification : une couleur reprsente une classe
Weka - Explorer
Les fonctions disponibles : Filtre et Preprocess sur les donnes Classification Clustering Rgles dassociation Slection dattributs Visualisateur
Plan du cours
Clustering
Plan
Clustering (Segmentation)
Clustering - Plan
Problmatique du clustering Applications Similarit et types de donnes Mthodes de clustering Mthodes de partitionnement Mthodes hirarchiques Mthodes par voisinage dense Application relle en gnomique Rsum
Sommaire
Problmatique
Soient N instances de donnes k attributs, Trouver un partitionnement en c clusters (groupes) ayant un sens (Similitude) Affectation automatique de labels aux clusters c peut tre donn, ou dcouvert Plus difficile que la classification car les classes ne sont pas connues lavance (non supervis) Attributs
Objectifs du clustering
Minimiser Minimiser les les distances distances intra-cluster intra-cluster Maximiser Maximiser les les distances distances inter-clusters inter-clusters
Exemples dapplications
Marketing : segmentation du march en dcouvrant des groupes de clients distincts partir de bases de donees dachats. Environnement : identification des zones terrestres similaires (en termes dutilisation) dans une base de donnes dobservation de la terre. Assurance: identification de groupes dassurs distincts associs un nombre important de dclarations. Planification de villes : identification de groupes dhabitations suivant le type dhabitation, valeur, localisation gographique, Mdecine : Localisation de tumeurs dans le cerveau
Nuage de points du cerveau fournis par le neurologue Identification des points dfinissant une tumeur
Mesure de la similarit
Il ny a pas de dfinition unique de la similarit entre objets Diffrentes mesures de distances d(x,y) La dfinition de la similarit entre objets dpend de : Le type des donnes considres Le type de similarit recherche
Choix de la distance
1. d ( x , y ) 0 2. d ( x , y ) = 0 iff x = y 3. d ( x , y ) = d ( y , x ) 4. d ( x , z ) d ( x , y ) + d ( y , z )
Dfinir une distance sur chacun des champs Champs numriques : d(x,y) = |x-y|, d(x,y)= |x-y|/dmax (distance normalise). Exemple : Age, taille, poids,
Combiner les distances : Soient x=(x1,,xn) et y=(y1, ,yn) Exemples numriques : Distance euclidienne :
d(x, y)=
2 ( ) i i x y
xy
i=1 i
i=1 n
d(x, y)=
y x i i i =1
Choix de la distance
Champs discrets :
Donnes binaires : d(0,0)=d(1,1)=0, d(0,1)=d(1,0)=1 Donne numratives : distance nulle si les valeurs sont gales et 1 sinon. Donne numratives ordonnes : idem. On peut dfinir une distance utilisant la relation dordre.
1 1 0 a
0 b
sum a +b c+d p
c d sum a + c b + d
Coefficient de correspondance simple (similarit invariante, si la variable binaire est symtrique) : b+c d (i, j ) = a+b+c+d Coefficient de Jaccard (similarit non invariante, si la variable binaire est asymtrique): b+c d (i, j ) = a+b+c
8 attributs, avec Sexe un attribut symtrique, et Les attributs restants sont asymtriques (test VIH, )
p m d (i, j ) = p
Base de donnes Cancer du sein http://www1.ics.uci.edu/~mlearn/MLSummary.html #instances = 286 (Institut Oncologie, Yugoslavie) # attributs = 10
Classe : no-recurence-events, recurrence-events Age : 10-19, 20-29, 30-39, 40-49, , 90-99 Menopause : Lt40, Ge40, premeno Taille de la tumeur : 0-4, 5-9, 10-14, , 55-59 Inv-nodes : 0-2, 3-5, 6-8, , 36-39 (ganglions lymphatiques) Node-caps : Oui, Non Deg-malig : 1, 2, 3 (Dgr de malignit) Sein : Gauche, Droit Breast-quad : left-up, left-low, right-up, right-low, central Irradiation : Oui, Non
Base de donnes Diabte : Diagnostic (OMS) http://www1.ics.uci.edu/~mlearn/MLSummary.html #instances = 768 (Arizona, USA) # attributs = 8
Nombre de grossesses Concentration du taux de glucose dans le plasma Pression sanguine diastolique (mm Hg) Epaisseur de la graisse du triceps (mm) Taux dinsuline aprs 2 heures (repas) (mu U/ml) Indice de masse corporelle (poids en kg / (taille en m)^2) Fonction Diabete pedigree Age (ans) Classe (Positif ou Ngatif)
Mthodes de Clustering
Mthode de partitionnement (Kmoyennes) Mthodes hirarchiques (par agglomration) Mthode par voisinage dense
Caractristiques
Entre : un chantillon de m enregistrements x1, , xm 1. Choisir k centres initiaux c1, , ck 2. Rpartir chacun des m enregistrements dans le groupe i dont le centre ci est le plus proche. 3. Si aucun lment ne change de groupe alors arrt et sortir les groupes 4. Calculer les nouveaux centres : pour tout i, ci est la moyenne des lments du groupe i. Aller en 2.
Illustration (1)
Centres initiaux
Illustration (2)
Nouveaux centres
Illustration (3)
Centres finaux
k=2 (2 groupes)
points
K-moyennes : Avantages
Relativement extensible dans le traitement densembles de taille importante Relativement efficace : O(t.k.n), o n reprsente # objets, k # clusters, et t # iterations. Normalement, k, t << n. Produit gnralement un optimum local ; un optimum global peut tre obtenu en utilisant dautres techniques telles que : algorithmes gntiques,
K-moyennes : Inconvnients
Applicable seulement dans le cas o la moyenne des objets est dfinie Besoin de spcifier k, le nombre de clusters, a priori Incapable de traiter les donnes bruites (noisy). Non adapt pour dcouvrir des clusters avec structures non-convexes, et des clusters de tailles diffrentes Les points isols sont mal grs (doivent-ils appartenir obligatoirement un cluster ?) - probabiliste
K-moyennes : Variantes
Slection des centres initiaux Calcul des similarits Calcul des centres (K-medoids : [Kaufman & Rousseeuw87] ) GMM : Variantes de K-moyennes bases sur les probabilits K-modes : donnes catgorielles [Huang98] K-prototype : donnes mixtes (numriques et catgorielles)
Mthodes hirarchiques
Une mthode hirarchique : construit une hirarchie de clusters, non seulement une partition unique des objets. Le nombre de clusters k nest pas exig comme donne Utilise une matrice de distances comme critre de clustering Une condition de terminaison peut tre utilise (ex. Nombre de clusters)
Mthodes hirarchiques
Entre : un chantillon de m enregistrements x1, , xm 1. On commence avec m clusters (cluster = 1 enregistrement) 2. Grouper les deux clusters les plus proches . 3. Sarrter lorsque tous les enregistrements sont membres dun seul groupe 4. Aller en 2.
a b c d e
ab abcde cde de
Arbre de clusters
Rsultat : Graphe hirarchique qui peut tre coup un niveau de dissimilarit pour former une partition. La hirarchie de clusters est reprsente comme un arbre de clusters, appel dendrogramme Les feuilles de larbre reprsentent les objets Les noeuds intermdiaires de larbre reprsentent les clusters
Distance entre les centres des clusters (Centroid Method) Distance minimale entre toutes les paires de donnes des 2 clusters (Single Link Method)
d (i, j ) = min xCi , yCj { d ( x, y) }
Distance maximale entre toutes les paires de donnes des 2 clusters (Complete Link Method)
d (i, j ) = max xCi , yCj { d ( x, y ) }
Dist=15.3
e*=4
P Q S R
Points noirs sont denses ; les autres ne sont pas denses Pour montrer que P et S appartiennent au mme cluster, il suffit de montrer que P et R appartiennent au mme cluster. Pour le montrer pour P et R, il suffit de le montrer pour P et Q
Deux clusters sont trouvs Deux points sont des bruits Trois points sont des bordures
Le contexte
Gnopole de Lille : Aspect gntique des maladies multifactorielles Collaboration avec lI.B.L. (Institut de Biologie de Lille) laboratoire des maladies multifactorielles (UPRES-A 8090) : diabte, obsit Gnration de gros volumes de donnes : outil daide linterprtation des rsultats
Etudes de lIBL
Etudes de type familial (parents, enfants) Prlvement dADN Analyse de liaison : co-transmission dun gne Comparaison de gnes entre paires dindividus dune mme famille
Objectif :
Problme pos
Trs grand nombre de donnes gnres
(~ 1 000 points de comparaison, 200 familles)
Contexte
Hypothses de travail : un cas particulier de Data Mining les donnes fournies par lIBL contiennent de nombreux attributs existence de donnes manquantes ou incertaines contexte d apprentissage non supervis Objectif : connatre les classes d attributs provoquant la maladie connatre les corrlations entre les attributs
Mthodologie adopte
Ralisation : dune slection d attributs : Rduire le nombre d attributs pour amliorer la classification dun clustering Slection d attributs Classes Clustering m attributs
N attributs
N>>m
K-moyennes
Sans slection d attributs : 400 attributs pour 200 objets,
temps de calcul > 7500 min. (>125 h.), rsultats inexploitables
C E1
Rsultats
Rsultats obtenus sur le workshop GAW11 de 1998 Exemple d ensembles d attributs slectionns (Support trouv > 0.65) : 81 85, 402 407, 224 229 (Locus C) , 308 313, 190 195, 374 379 (Locus B) Exemple de clustering E1 C
Classe 1
E2
B
Classe 2
Conclusion
Bilan
Comprhension et modlisation d un problme complexe Slection d attributs : slection de locus impliqus dans la maladie Clustering : les ensembles finaux sont trouvs lorsqu il y a peu d erreurs dans le choix des attributs slectionns
Rfrences
M. R. Anderberg. Cluster Analysis for Applications. Academic Press, 1973. P. Arabie, L. J. Hubert, and G. De Soete. Clustering and Classification. World Scientific, 1996 A. K. Jain and R. C. Dubes. Algorithms for Clustering Data. Prentice Hall, 1988 L. Kaufman and P. J. Rousseeuw. Finding Groups in Data: an Introduction to Cluster Analysis. John Wiley & Sons, 1990.
Classification
Sommaire
Dfinition Validation dune classification (accuracy) K-NN (plus proches voisins) Arbres de dcision Rseaux de neurones Autres mthodes de classification Etude de cas rel : Protomique Rsum
Sommaire
Classification
Elle permet de prdire si un lment est membre dun groupe ou d une catgorie donn.
Classes
Identification de groupes avec des profils particuliers Possibilit de dcider de lappartenance dune entit une classe
Caractristiques
Apprentissage supervis : classes connues lavance Pb : qualit de la classification (taux derreur) Ex : tablir un diagnostic (si erreur !!!)
Classification - Applications
Accord de crdit Applications Marketing cibl Diagnostic mdical Analyse de leffet dun traitement Dtection de fraudes fiscales etc.
processus 2 tapes
Construction du modle
Chaque instance est suppose appartenir une classe prdfinie Etape 1 La classe dune instance est dtermine par lattribut classe Lensemble des instances dapprentissage est utilis dans la construction du modle Le modle est reprsent par des rgles de classification, arbres de dcision, formules mathmatiques, ...
Utilisation du modle
Classification de nouvelles instances ou instances inconnues Etape 2 Estimer le taux derreur du modle la classe connue dune instance test est compare avec le rsultat du modle Taux derreur = pourcentage de tests incorrectement classs par le modle
Partitionnement : apprentissage et test (ensemble de donnes important) Utiliser 2 ensembles indpendents, e.g., ensemble dapprentissage (2/3), ensemble test (1/3) Apprentissage Dt Validation D\Dt
D1 D2 D3 D4 D1 D2 D3 D4 D1 D2 D3 D4 D1 D2 D3 D4 D1 D2 D3 D4
Algorithmes Classification
Rang Anne Assistant Prof 3 Assistant Prof 7 Professor 2 Associate Prof 7 Assistant Prof 6 Associate Prof 3
Titulaire non Modle oui oui oui Si Rang = Professor non Ou Anne > 6 non Alors Titulaire = Oui
Titulaire ?
Titulaire ? ?
Oui Oui
Mthodes de Classification
Mthode K-NN (plus proche voisin) Arbres de dcision Rseaux de neurones Classification baysienne Caractristiques
Mthode ddie la classification (k-NN : nearest neighbor). Mthode de raisonnement partir de cas : prendre des dcisions en recherchant un ou des cas similaires dj rsolus. Pas dtape d apprentissage : construction d un modle partir dun chantillon d apprentissage (rseaux de neurones, arbres de dcision, ). Modle = chantillon dapprentissage + fonction de distance + fonction de choix de la classe en fonction des classes des voisins les plus proches.
Objectif : affecter une classe une nouvelle instance donne : un chantillon de m enregistrements classs (x, c(x)) entre : un enregistrement y 1. Dterminer les k plus proches enregistrements de y 2. combiner les classes de ces k exemples en une classe c sortie : la classe de y est c(y)=c
Solution simple : rechercher le cas le plus proche et prendre la mme dcision (Mthode 1-NN). Combinaison des k classes : Heuristique : k = nombre d attributs + 1 Vote majoritaire : prendre la classe majoritaire. Vote majoritaire pondr : chaque classe est pondre. Le poids de c(xi) est inversement proportionnel la distance d(y,xi). Confiance : Dfinir une confiance dans la classe attribue = rapport entre les votes gagnants et le total des votes.
Illustration
Voisinage
5 de la classe 3 de la classe
Pas dapprentissage : introduction de nouvelles donnes ne ncessite pas la reconstruction du modle. Clart des rsultats Tout type de donnes Nombre dattributs Temps de classification : Stocker le modle : Distance et nombre de voisins : dpend de la distance, du nombre de voisins et du mode de combinaison.
Arbres de dcision
Gnration darbres de dcision partir des donnes Arbre = Reprsentation graphique dune procdure de classification
Accord dun prt bancaire
MS : moyenne solde compte courant MS>5000 Non Oui Age>25 Oui Autres comptes Oui Non Non
Oui
Non
Oui
Un arbre de dcision est un arbre o : Noeud interne = un attribut Branche dun noeud = un test sur un attribut Feuilles = classe donne
Non
Ensemble dapprentissage
Jouer au tennis ?
Yes
Chaque noeud interne teste un attribut Chaque branche correspond une valeur de lattribut Chaque feuille reprsente une classe
Numrique
Enumratif
2) Age >= 27.5 and CarType = Sports High 3) Age >= 27.5 and CarType Sports High
High
High
Low
Attributs significatifs
Ristourne Oui Non Non Situation Clibat, Divorc Impt < 80K Non
Ristourne Situation Impt famille revenu Oui Non Non Oui Non Non Oui Non Non Non Clibat. Mari Clibat. Mari Divorc Mari Divorc Clibat. Mari Clibat. 125K 100K 70K 120K 95K 60K 220K 85K 75K 90K
Fraude Non Non Non Non Oui Non Non Oui Non Oui
Mari Non
Lattribut significatif un noeud est dtermin en se basant sur lindice Gini. Pour classer une instance : descendre dans larbre selon les rponses aux diffrents tests. Ex = (Ristourne=Non, Situation=Divorc, Impt=100K) Oui
humidity high N
normal P
une rgle est gnre pour chaque chemin de larbre (de la racine une feuille) Les paires attribut-valeur dun chemin forment une conjonction Le noeud terminal reprsente la classe prdite Les rgles sont gnralement plus faciles comprendre que les arbres
2) Ristourne = Non et Situation in {Clibat., Divorc} et Impt < 80K Non 3) Ristourne = Non et Situation in {Clibat., Divorc} et Impt >= 80K Oui 4) Ristourne = Non et Situation in {Mari} Non
(Outlook=Sunny) (Humidity=High) Then PlayTennis=No (Outlook=Sunny) (Humidity=Normal) Then PlayTennis=Yes (Outlook=Overcast) Then PlayTennis=Yes (Outlook=Rain) (Wind=Strong) Then PlayTennis=No (Outlook=Rain) (Wind=Weak) Then PlayTennis=Yes
Algorithmes de classification
Construction de larbre
Au dpart, toutes les instances dapprentissage sont la racine de larbre Slectionner un attribut et choisir un test de sparation (split) sur lattribut, qui spare le mieux les instances. La slection des attributs est base sur une heuristique ou une mesure statistique. Partitionner les instances entre les noeuds fils suivant la satisfaction des tests logiques
Algorithmes de classification
Traiter chaque noeud fils de faon rcursive Rpter jusqu ce que tous les noeuds soient des terminaux. Un noeud courant est terminal si :
Il ny a plus dattributs disponibles Le noeud est pur, i.e. toutes les instances appartiennent une seule classe, Le noeud est presque pur, i.e. la majorit des instances appartiennent une seule classe (Ex : 95%) Nombre minimun dinstances par branche (Ex : algorithme C5 vite la croissance de larbre, k=2 par dfaut)
Algorithmes de classification
Elaguer larbre obtenu (pruning)
Supprimer les sous-arbres qui namliorent pas lerreur de la classification (accuracy) arbre ayant un meilleur pouvoir de gnralisation, mme si on augmente lerreur sur lensemble dapprentissage Eviter le problme de sur-spcialisation (overfitting), i.e., on a appris par coeur lensemble dapprentissage, mais on nest pas capable de gnraliser
Ensemble dapprentissage
Yes
No
No
Gain dInformation (ID3, C4.5) Indice Gini (CART) Table de contingence statistique 2 (CHAID) G-statistic
Gain dinformation
Slectionner lattribut avec le plus grand gain dinformation Soient P et N deux classes et S un ensemble dinstances avec p lments de P et n lments de N Linformation ncessaire pour dterminer si une instance prise au hasard fait partie de P ou N est (entropie) : p p n n I ( p, n) = log 2 log 2 p+n p+n p+n p+n
Entropie
S est lensemble dapprentissage p+ est la proportion dexemples positifs (P) p- est la proportion dexemples ngatifs (N) Entropie mesure limpuret de S Entropie(S) = -p+ log2 p+ - p- log2 p-
Gain dinformation
Soient les ensembles {S1, S2 , , Sv} formant une partition de lensemble S, en utilisant lattribut A Toute partition Si contient pi instances de P et ni instances de N Lentropie, Lentropie ou linformation ncessaire pour classifier les instances dans les sous-arbres Si est : p +n E ( A) = i i I ( pi , ni ) i =1 p + n Le gain dinformation par rapport au branchement sur A est Gain ( A ) = I ( p , n ) E ( A ) Choisir lattribut qui maximise le gain besoin dinformation minimal
Classe P : jouer_tennis = oui Classe N : jouer_tennis = non Information ncessaire pour classer un exemple donn est :
I ( p, n) = I (9,5) = 0.940
On a Alors
E (outlook ) =
De manire similaire
True
False
False
[21+, 5-]
[8+, 30-]
[11+, 2-]
Exemple dapprentissage
Day D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14 Outlook Sunny Sunny Overcast Rain Rain Rain Overcast Sunny Sunny Rain Sunny Overcast Overcast Rain Temp. Hot Hot Hot Mild Cool Cool Cool Mild Cold Mild Mild Mild Hot Mild Humidit y High High High High Normal Normal Normal High Normal Normal Normal High Normal High Wind Weak Strong Weak Weak Weak Strong Weak Weak Weak Strong Strong Strong Weak Strong Play Tennis No No Yes Yes Yes No Yes No Yes Yes Yes Yes Yes No
Algorithme ID3
[D1,D2,,D14] [9+,5-] Sunny Outlook Overcast Rain
Ssunny=[D1,D2,D8,D9,D11] [D3,D7,D12,D13] [D4,D5,D6,D10,D14] [2+,3-] [4+,0-] [3+,2-] ? Yes ? Gain(Ssunny , Humidity)=0.970-(3/5)0.0 2/5(0.0) = 0.970 Gain(Ssunny , Temp.)=0.970-(2/5)0.0 2/5(1.0)-(1/5)0.0 = 0.570 Gain(Ssunny , Wind)=0.970= -(2/5)1.0 3/5(0.918) = 0.019
Algorithme ID3
Outlook Sunny Humidity High No [D1,D2] Normal Yes [D8,D9,D11] Overcast Yes [D3,D7,D12,D13] Rain Wind Strong No [D6,D14] Weak Yes [D4,D5,D10]
Indice Gini
Utiliser lindice Gini pour un partitionnement pur
Gini ( S ) = 1 pi2
i =1 c
Gini ( S1 , S 2 ) =
n1 n Gini ( S1 ) + 2 Gini ( S 2 ) n n
Si S est pur (classe unique), Gini(S) = 0 Gini(S1,S2) = Gini pour une partition de S en deux sousensembles S1 et S2 selon un test donn. Trouver le branchement (split-point) qui minimise lindice Gini Ncessite seulement les distributions de classes
Revenu
Revenu
Gini(split) = 0.31
Gini(split) = 0.34
C1 C2 Gini
60 55 > 3 7 65 <= 0 1
70 72 > 3 6 <= 0 2
75 80 > 3 5 <= 0 3
85 87 > 3 4 <= 1 3
90 92 > 2 4 <= 2 3
95 97 > 1 4 <= 3 3
> 0 3
> 0 2
0.420
0.400
0.375
0.343
0.417
0.400
0.300
0.343
0.375
0.400
0.420
Rseaux de neurones
Rseau neuronal : simule le systme nerveux biologique Un rseau de neurones est compos de plusieurs neurones interconnects. Un poids est associ chaque arc. A chaque neurone on associe une valeur.
Temps de switch dun neurone > 10-3 secs Nombre de neurones (humain) ~1010 Connexions (synapses) par neurone : ~104105
Neurone ou perceptron
Neurone = Unit de calcul lmentaire Le vecteur dentre X est transform en une variable de sortie y, par un produit scalaire et une fonction de transformation non linaire X0 X1 Xn Vecteur entre X w0 w1 wn Vecteur Somme poids w pondre (coefficients Synaptiques) Fonction dactivation
Sortie y
Neurone ou perceptron
Linear treshold unit (LTU) x1 x2 w1 w2 wn x0=1 w0
xn
. . .
i=0n wi xi
o(xi)=
Neurone
(x)= 1 1+e
Rseaux de neurones
Capacit d apprentissage : apprendre et changer son comportement en fonction de toute nouvelle exprience. Permettent de dcouvrir automatiquement des modles complexes. Plusieurs modles de rseaux de neurones : PMC (Perceptron Multi-Couches), RBF (Radial Basis Function), Kohonen, ...
Couche sortie
Paradigme dapprentissage
Vecteur sortie
Algorithmes dapprentissage
Rtro-propagation du gradient (Back propagation) Kohonen RBF (Radial basis function) Rseaux de neurones probabilistes ART (Adaptive resonance theory)
Rtro-propagation du gradient
Principales tapes
Construction du rseau Reprsentation des entres Nombre de couches, nombre de noeuds dans chaque couche Apprentissage du rseau utilisant les donnes disponibles Elagage du rseau Interprtation des rsultats
Construction du rseau
Nombre de noeuds en entre : correspond la dimension des donnes du problme (attributs ou leurs codages).
Normaliser dans lintervalle [0,1]. Exemple numratif : Attribut A prenant ses valeurs {1,2,3,4,5} 5 entres valeurs binaires ; 3 = 00100 3 bits ; 3 = 010 1 entre relle ; 0, 0.25, 0.5, 0.75, 1
Construction du rseau
Nombre de couches caches : Ajuster pendant lapprentissage. Nombre de nuds par couche : Le nombre de nuds par couche est au moins gal deux et au plus gal au nombre de nuds en entre Nombre de nuds en sortie : fonction du nombre de classes associes lapplication. Rseau riche pouvoir dexpression grand (Ex. 4-2-1 est moins puissant que 4-4-1) Attention : Choisir une architecture riche mais pas trop Problme de sur-spcialisation
Apprentissage du rseau
Objectif principal : obtenir un ensemble de poids qui font que la plupart des instances de lensemble dapprentissage sont correctement classes. Etapes :
Poids initiaux sont gnrs alatoirement Les vecteurs en entre sont traits en squentiel par le rseau Calcul des valeurs dactivation des nuds cachs Calcul du vecteur de sortie Calcul de lerreur (sortie dsire sortie actuelle).
e(PMC)= 1 2 xS
(d(x)a(x))
Apprentissage du rseau
Les poids sont mis jour en utilisant lerreur. Le nombre dinstances qui sont passs dans le rseau avant la mise jour des poids est un paramtre (entre 1 convergence rapide et minimum local - et m convergence lente -). Rtro propagation laide de la mthode de gradient. Le paramtre taux dapprentissage [0,1] influe sur la modification des poids. Valeur grande : modification forte ; Valeur petite : modification minime
Apprentissage du rseau
wi = wi + wi wi = (t - o) xi t=c(x) est la valeur dsire o est la sortie obtenue est le taux dapprentissage (e.g 0.1)
Critre darrt : la tolrance dfinit lerreur cible. et/ou Nombre dinstances bien classes (seuil)
Apprentissage du rseau
(w1,w2)
(w1+w1,w2 +w2)
Elagage du rseau
Rseau fortement connexe est difficile articuler N nuds en entre, h couches caches, et m nuds en sortie h(m+n) arcs (poids) Elagage : Supprimer les arcs et les nuds qui naffectent pas le taux derreur du rseau. Eviter le problme de sur-spcialisation (over-fitting). Ceci permet de gnrer des rgles concises et comprhensibles.
Classification baysienne
Le problme de classification peut tre formul en utilisant les probabilits a-posteriori : P(C|X) = probabilit que le tuple (instance) X=<x1,,xk> est dans la classe C Par exemple P(classe=N | outlook=sunny,windy=true,) Ide : affecter une instance X la classe C telle que P(C|X) est maximale
Thorme de Bayes : P(C|X) = P(X|C)P(C) / P(X) P(X) est une constante pour toutes les classes P(C) = frquence relative des instances de la classe C C tel que P(C|X) est maximal = C tel que P(X|C)P(C) est maximal Problme : calculer P(X|C) est non faisable !
Outlook P(sunny | p) = 2/9 P(overcast | p) = 4/9 P(rain | p) = 3/9 Temperature P(hot | p) = 2/9 P(mild | p) = 4/9 P(cool | p) = 3/9
P(sunny | n) = 3/5 P(overcast | n) = 0 P(rain | n) = 2/5 P(hot | n) = 2/5 P(mild | n) = 2/5 P(cool | n) = 1/5
Humidity P(high | p) = 3/9 P(high | n) = 4/5 P(normal | p) = 6/9 P(normal | n) = 1/5 Windy P(true | p) = 3/9 P(false | p) = 6/9
jouer)
Classification baysienne
lhypothse dindpendance
fait que le calcul est possible trouve un modle de classification optimal si hypothse satisfaite mais est rarement satisfaite en pratique, tant donn que les attributs (variables) sont souvent corrls. Pour liminer cette limitation : Rseaux baysiens, qui combinent le raisonnement baysien et la relation causale entre attributs Arbres de dcision, qui traitent un attribut la fois, considrant les attributs les plus importants en premier
Les protines
Une protine = squence dacides amins dfinie par un gne et ayant une fonction spcifique dans la cellule
Les protines
20 acides amins distincts, chaque acide amin tant constitu de (jusqu) 18 atomes Une squence protique est constitue de 50 2000 acides amins 3000 4000 protines dans une cellule Une protine se replie en pelote , adoptant une configuration spatiale caractristique de sa fonction
20 Lettres de lalphabet
Les structures
Structure primaire = ordre dans lequel sont enchans les acides amins dans la molcule Structure secondaire = rotation des atomes de la chane peptidique les uns par rapport aux autres au cours de la synthse de la chane Structure tertiaire = rsultat de liaisons diverses (hydrogne, hydrophobes, lectrostatiques, covalentes,...) entre des acides amins de la mme chane peptidique mais non voisins dans la structure primaire
Structure primaire
O H O H O H O H O H OH OH H3N+ CH C N CH C N CH C N CH C N CH C N CH C N CH C N CH COOCH2 COOCH2 CH2 CH2 NH C NH2 N +H 2 CH H3C CH3 CH2 H C CH3 CH2 CH3 CH2 CH2 CH2 HC CH CH2 HN CH N CH2
Asp D
Phe F
Base de donnes
Structures prdites (connues) :
Protein Data Bank (PDB) (centaine de structures non redondantes) [www.rcsb.org/pdb/]
SWISSPROT
[www.ebi.ac.uk/swissprot]
Structure secondaire
Hlice
Feuillet parallle : tous les segments ont la mme orientation Feuillet antiparallle Feuillet mixte
Structure secondaire
Hlice Feuillet parallle : tous les segments ont la mme orientation Feuillet antiparallle Feuillet mixte
Structure secondaire
Beta Hlice
Structure 3D
Permet de comprendre le mode d'action d'une protine : activit enzymatique, interaction avec d'autres protines (ligands, substrats, rcepteur, pitope, etc.).
Structure primaire
Rseaux de neurones
- Le processus neuronal de base traite des signaux d'entre d'un ou plusieurs neurones et envoie un signal de sortie un ou plusieurs (un 0 ou un 1) - Le signal de sortie chaque neurone rcepteur est pondr ces poids sont ajusts par entranement du modle avec des squences de structures connues - Le programme donne une valuation de fiabilit de chaque prvision base sur la force des signaux dune hlice alpha, dun feuillet bta et dune boucle
Rfrence : Rost B, Sander C (1994) Combining evolutionary information and neural networks to predict protein secondary structure. Proteins, 19, 55-72
Rseaux de neurones
Entre : structure primaire Sortie : indication sur la structure secondaire Couche cache
Entre
structure by profile based neural networks. Methods in Enzymology, 266, 525-539, 1996 )
Autres mthodes
Classification - Rsum
La classification est un problme largement tudi La classification, avec ses nombreuses extensions, est probablement la technique la plus rpandue
Modles
Facile comprendre
Difficile comprendre
Classification - Rsum
Lextensibilit reste une issue importante pour les applications Directions de recherche : classification de donnes non relationnels, e.x., texte, spatiales et donnes multimdia
Classification - Rfrences
J. R. Quinlan. C4.5: Programs for Machine Learning. Morgan Kaufman, 1993. J. R. Quinlan. Induction of decision trees. Machine Learning, 1:81-106, 1986. L. Breiman, J. Friedman, R. Olshen, and C. Stone. Classification and Regression Trees. Wadsworth International Group, 1984. S. M. Weiss and C. A. Kulikowski. Computer Systems that Learn: Classification and Prediction Methods from Statistics, Neural Nets, Machine Learning, and Expert Systems. Morgan Kaufman, 1991. D. E. Rumelhart, G. E. Hinton and R. J. Williams. Learning internal representation by error propagation. In D. E. Rumelhart and J. L. McClelland (eds.) Parallel Distributed Processing. The MIT Press, 1986
Rgles dassociation
Sommaire
Exemple : Panier de la
Sommaire
Client 1 Client 2
Client 3
Trouver :
Groupes darticles (itemset) achets frquemment (ensemble)
Disposition des produits dans le magasin Quels produits mettre en promotion, gestion de stock,
Rgles dassociations
Recherche de rgles dassociation :
Dcouvrir des patterns, corrlations, associations frquentes, partir densembles ditems contenus dans des base de donnes.
Comprhensibles : Facile comprendre Utiles : Aide la dcision Efficaces : Algorithmes de recherche Applications :
Analyse des achats de clients, Marketing, Accs Web, Design de catalogue, Gnomique, etc.
Rgles dassociations
Formats de reprsentation des rgles dassociation :
couches bire [0.5%, 60%] achte:couches achte:bire [0.5%, 60%] SI achte couches ALORS achte bire dans 60% de cas. Les couches et la bire sont tous deux achets dans 0.5% des transactions de la base de donnes."
Rgles dassociations
couche bire [0.5%, 60%]
1 1 2 3
SI achte couche, ALORS achte bire, dans 60% de cas, dans 0.5% de la base"
Condition, partie gauche de la rgle Consquence, partie droite de la rgle Support, frquence (partie gauche et droite sont prsentes ensemble dans la base) 4 Confiance (si partie gauche de la rgle est vrifie, probabilit que la partie droite de la rgle soit vrifie)
Rgles dassociations
Support :
% dinstances de la base vrifiant la rgle.
Exemple
TID Items
1 2 3 4 5
Pain, Lait Bire, Couches, Pain, Oeufs Bire, Coca, Couches, Lait Bire, Pain, Couches, Lait Coca, Pain, Couches, Lait
Rgle :
X s , y
( X y) ( s = P (X, y)) |T |
Support : s =
Confiance : = (X y) ( = P( y | X))
(X) |
Rgles dassociations
Support minimum : Elev peu ditemsets frquents peu de rgles valides qui ont t souvent vrifies Rduit plusieurs rgles valides qui ont t rarement vrifies peu de rgles, mais toutes pratiquement correctes
Rduite plusieurs rgles, plusieurs dentre elles sont incertaines Valeurs utilises : = 2 - 10 %, = 70 - 90 %
Rgles dassociations
Etant donn : (1) un base de donnes de transactions, (2) chaque transaction est un ensemble darticles (items) achets
Transaction ID Items achets Itemset frquent Support
Trouver : toutes les rgles avec un support et une confiance minimum donns Si support min. 50% et confiance min. 50%, alors A C [50%, 66.6%], C A [50%, 100%]
* * * * * * *
* * * * *
4 1 1 2 1
1 2 1 1 0
1 1 1 0 0
2 1 0 3 1
1 0 0 1 2
Illustration / Exemple
Rgle d association : Si A alors B (rgle 1) Si A alors D (rgle 2) Si D alors A (rgle 3) Supports : Support(1)=20% ; Support(2)=Support(3)=40% Confiances : Confiance(2) = 50% ; Confiance(3) = 67% On prfre la rgle 3 la rgle 2.
Description de la mthode
article
frquence 45%
Description de la mthode
Amlioration = confiance / frq(rsultat) Comparer le rsultat de la prdiction en utilisant la rgle avec la prdiction sans la rgle Rgle intressante si Amlioration > 1
Rgle
Si A et B alors C Si A et C alors B Si B et C alors A
Recherche de rgles
Soient une liste de n articles et de m achats. 1. Calculer le nombre doccurrences de chaque article. 2. Calculer le tableau des co-occurrences pour les paires d articles. 3. Dterminer les rgles de niveau 2 en utilisant les valeurs de support, confiance et amlioration. 4. Calculer le tableau des co-occurrences pour les triplets d articles. 5. Dterminer les rgles de niveau 3 en utilisant les valeurs de support, confiance et amlioration ...
Complexit Soient :
Complexit
(m.2m 1 )
Rduction de la complexit
n de lordre du million (parcours de la liste ncessaire) Taille des tableaux en fonction de m et du nombre d articles prsents dans la rgle
n 100 10000
Conclusion de la rgle restreinte un sous-ensemble de l ensemble des articles vendus. Exemple : articles nouvellement vendues. Cration de groupes d articles (diffrents niveaux dabstraction). Elagage par support minimum.
Attributs (1-itemsets)
Itemset Compteur {Pain,Lait} 3 {Pain,Bire} 2 {Pain,Couches} 3 {Lait,Bire} 2 {Lait,Couches} 3 {Bire,Couches} 3
paires (2-itemsets)
Support Minimum = 3
Triplets (3-itemsets)
Itemset {Pain,Lait,Couches} {Lait,Couches,Bire} Compteur 3 2
Si tout sous-ensemble est considr, C61 + C62 + C63 = 41 En considrant un seuil support min, 6 + 6 + 2 = 14
(Pain, Fromage, Vin) = 3-itemset Principe : Les sous-itemsets dun k-itemset frquent sont obligatoirement frquents
Une rgle frquente est retenue si et seulement si sa confiance c MINCONF Exemple : ABCD frquent AB CD est retenue si sa confiance MINCONF
Exemple
I = {A, B, C, D, E, F} T = {AB, ABCD, ABD, ABDF, ACDE, BCDF} MINSUP = 1/2 C1 = I = {A,B,C,D,E,F} // C1 : ensemble de 1-itemsets candidats s(A) = s(B) = 5/6, s(C) = 3/6, s(D) = 5/6, s(E) = 1/6, s(F) = 2/6 L1 = {A, B, C, D} C2 = L1xL1 = {AB,AC, AD, BC, BD, CD} s(AB) = 4/6, s(AC) = 2/6, s(AD) = 4/6, s(BC) = 2/6, s(BD) = 4/6, s(CD) = 3/6 L2 = {AB,AD, BD, CD}
Lalgorithme Apriori
L1 = {1-itemsets frquents}; for (k=2; Lk-1 ; k++) do Ck = apriori_gen(Lk-1); forall instances tT do Ct = subset(Ck,t); forall candidats c Ct do c.count++; Lk = { c Ck / c.count MINSUP } L = iLi;
La procdure Apriori_gen
{ Jointure Lk-1 * Lk-1 ; k-2 lments communs} insert into Ck; select p.item1, p.item2, , p.itemk-1, q.itemk-1 from Lk-1p, Lk-1q where p.item1=q.item1, , p.itemk-2=q.itemk-2 , p.itemk-1< q.itemk-1 forall itemsets c Ck do forall (k-1)-itemsets sc do if sLk-1 then delete c from Ck;
Apriori - Exemple
Base de donnes D
TID 100 200 300 400 Items 134 235 1235 25
C1
itemset sup. {1} 2 3 Scan D {2} {3} 3 {4} 1 {5} 3
L1
itemset sup. {1} 2 {2} 3 {3} 3 {5} 3
Apriori - Exemple
C2
C2
L2
itemset {1 3} {2 3} {2 5} {3 5} sup 2 2 3 2
Apriori - Exemple
C3
L3
itemset {2 3 5}
Scan D
itemset sup {2 3 5} 2
Apriori - Exemple
Espace de recherche
123 124 12 13
Apriori - Exemple
Apriori au Niveau 1
123 124 12 13
Apriori - Exemple
Apriori au niveau 2
123 124 12 13
Rgle 2 mmoriser :
Pour la gnration des itemsets, le seuil support est utilis. Pour la gnration des rgles dassociation, le seuil confiance est utilis.
Complexit en pratique ?
A partir dun exemple rel (petite taille) Expriences ralises sur un serveur Alpha Citum 4/275 avec 512 MB de RAM & Red Hat Linux release 5.0 (kernel 2.0.30)
Exemple de performances
Network NetworkManagement ManagementSystem System MSC MSC BSC BSC BTS BTS Alarms Alarms MSC MSC BSC BSC BTS BTS MSC MSC BSC BSC BTS BTS Rseau switch
Rseau daccs
MSC MSC Mobile station controller BSC BSC Base station controller BTS BTS Base station transceiver
Rseau cellulaire
Exemple de performances
Donnes tlcom contenant des alarmes : 1234 EL1 PCM 940926082623 A1 ALARMTEXT..
Alarm type Date, time Alarming network element Alarm number Alarm severity class
Exemple de donnes 1 :
43 478 alarmes (26.9.94 - 5.10.94; ~ 10 jours) 2 234 diffrent types dalarmes, 23 attributs, 5503 diffrentes valeurs
Exemple de donnes 2 :
73 679 alarmes (1.2.95 - 22.3.95; ~ 7 semaines) 287 diffrent types dalarmes, 19 attributs, 3411 diffrentes valeurs
Exemple de performances
Ensemble donnes 1 (~10 jours) Ensemble donnes 2 (~7 semaines)
Exemple de performances
Exemple de rsultats pour les donnes 1 :
Seuil de frquence : Itemsets candidats : Itemsets frquents : Rgles : 0.1 109 719 79 311 3 750 000 Temps: 12.02 s Temps: 64 855.73 s Temps: 860.60 s
Apriori - Complexit
Phase coteuse : Gnration des candidats
Ensemble des candidats de grande taille : 104 1-itemset frquents gnrent 107 candidats pour les 2itemsets Pour trouver un itemset de taille 100, e.x., {a1, a2, , a100}, on doit gnrer 2100 1030 candidats. Multiple scans de la base de donnes : Besoin de (n +1 ) scans, n est la longueur de litemset le plus long
Apriori - Complexit
En pratique :
Pour lalgorithme Apriori basique, le nombre dattributs est gnralement plus critique que le nombre de transactions Par exemple :
50 attributs chacun possdant 1-3 valeurs, 100.000 transactions (not very bad) 50 attributs chacun possdant 10-100 valeurs, 100.000 transactions (quite bad) 10.000 attributs chacun possdant 5-10 valeurs, 100 transactions (very bad...)
Notons :
Un attribut peut avoir plusieurs valeurs diffrentes Les algorithmes traitent chaque paire attribut-valeur comme un attribut (2 attributs avec 5 valeurs 10 attributs
Une transaction qui ne contient pas de k-itemsets frquents est inutile traiter dans les parcours (scan) suivants.
Partitionnement :
Tout itemset qui est potentiellement frquent dans une BD doit tre potentiellement frquent dans au moins une des partitions de la BD.
Echantillonage :
Apriori - Avantages
Rsultats clairs : rgles faciles interprter. Simplicit de la mthode Aucune hypothse pralable (Apprentissage non supervis) Introduction du temps : mthode facile adapter aux sries temporelles. Ex : Un client ayant achet le produit A est susceptible d acheter le produit B dans deux ans.
Apriori - Inconvnients
Cot de la mthode : mthode coteuse en temps Qualit des rgles : production dun nombre important de rgles triviales ou inutiles. Articles rares : mthode non efficace pour les articles rares. Adapt aux rgles binaires Apriori amlior
Variantes de Apriori : DHP, DIC, etc. Partition [Savasere et al. 1995] Eclat et Clique [Zaki et al. 1997]
C = terme1 & terme2 & & termen P = termen+1 termei = <attributj, op, valeur> ou <attributj, op, valeur_de, valeur_a>
Classes : valeurs de P Exemple : if ((Age>30) & (situation=mari)) then prt=prioritaire Forme : if C then P, P=p1, p2, , pm P: attribut but
etc.
Problmatique
Q Dcouvrir dans une large BD quelques
petites
C = terme1 & terme2 ... & termen (nMAXTERM) termei =1..n <attribut=valeur> / valeur est numratif P = terme <attribut but=valeur> attribut but GoalsSet (dfini par lutilisateur)
Enfants
Situation Single
Age Young
Recommandation Very_recommand
Lalgorithme Gntique
Sous-population K
Sous-population 1
C11
C1N P1
...
P1
...
Ck1
CkN Pk
...
Pk
petites
rgles Suppression
Crossover Mutation Remplacement Evaluation
BD
1 .G ( Rule
F ( Rule ) =
pu ) + 2. t 2
1+
[Freitas 99]
Oprateurs gntiques : Crossover (1) Deux parents P1 et P2 ont un ou plusieurs attributs commun(s) dans leurs parties C
Slection alatoire dun terme Permutation de leurs valeurs
Exemple :
P1 : (Marital_status=married) (Gender=male) P2 : (Marital_status= single) (Salary=high) Enfant1 : (Marital_status=single) (Gender=male). Enfant2 : (Marital_status=married) (Salary=high).
Oprateurs gntiques : Crossover (2) P1,P2 nont aucun attribut commun dans C
Slection alatoire dun terme dans P1 Insertion dans P2
Proba = (MAXTERM - K)/MAXTERM K: Nombre de termes dans la partie C de P2
Vice versa
Exemple :
P1 : (Marital_status=married) (Gender=male) P2 : (Age = young) (Salary=high) E1 : (Marital_status=married) (Gender=male) (Age=young) E2 : (Marital_status=married) (Salary=high)
(Gender=male)
Exemple :
Suppression de termes
But : rgles plus faciles comprendre (petites) Suppression dun terme choisi alatoirement avec une probabilit proportionnelle sa longueur Exemple :
(Age=young) E : (Marital_status=married) (Gender=male)
P : (Marital_status=married) (Gender=male)
Application
BD : Nursery school
Q Q
1 2 3 4 5 6 7 8 9
Hardware platform
Q
Paramtres de lAG
3 attributs buts Q MAXTERM=5 Q 150 individus /3 sous-populations
Q
Evaluation de lAG
Qualit des rgles extraites Paramtres mesurs : Validit : facteur de confiance des rgles
C&P FC = C
FC mesurs
Sur les donnes dapprentissage (20%) : FCtrain Sur les donnes de test (80%) : Fctest
ALORS (recommandation=not_recomm)
Ressources
Clustering de gnes
Genes participating in the same pathway are most likely expression at same time.
Rgles dassociation
Gene1, Gene2, Gene3, Gene4, Gene5. Gne reprsentant la consquence ?
Chaque condition (microarray) est une instance. Gnes reprsentent les itemsets. Rgles dassociation avec confiance leve (100%?) Gnes cibles = consquence des rgles
Positive regulation
Gene 1
Gene 2
Gene 3
Negative regulation
Gene 4
Gene x
Exprimentations
Ensemble de donnes
SourceLawrence Berkeley National Lab (LBNL) Michael Eisen's Lab http://rana.lbl.gov/EisenData.htm Donnes dexpression Microarray de yeast saccharomyces cerevisiae, contenant 6221 gnes sous 80 conditions
Fonctionalits et mthodologies une vs. plusieurs fonctions de data mining une vs. plusieurs mthodes par fonction Couplage avec les systmes de gestion de base de donnes et les entropots de donnes Outils de visualization : visualisation des donnes, visualisation des rsultats obtenus, visualisation du processus, visualisation interactive (split attribut, ), etc.
Intelligent Miner for Data (IMA) Intelligent Miner for Text (IMT) Tches : groupage de donnes, classification, recherche dassociations, etc. SAS : longue exprience en statistiques Outil complet pour le DM Trois techniques : rseaux de neurones, arbres de dcision et rgression. Client-Serveur
Fonctionnalits interactives et graphiques Techniques sous-jacentes : classification, segmentation, recherche de rgles dassociation. SIPINA WEKA Kit de programmes : mthodes statistiques, segmentation, groupage, rseaux de neurones, etc. Il existe une version en java
Outils/librairies libres
etc.
Techniques implmentes
Arbres de dcision Rgression Rseaux de neurones
Alice (1)
Socit : ISoft Cration : 1988 Plate-formes : Windows 95/98/NT/2000, TSE, Metaframe Utilisation
Marketing : tudes de march, segmentation Banque, Assurance : scoring, analyse de risques, dtection de fraudes Industrie : contrle qualit, diagnostic, segmentation, classification, construction de modles, prdiction et simulation
Alice (2)
Interface graphique (tools)
Clementine (1)
Socit : ISL (Integral Solutions Limited) Cration : 1994 Plate-formes : Windows NT, Unix Utilisation
Prvision de parts de march Dtection de fraudes Segmentation de march Implantation de points de vente
Clementine (2)
Interface simple, puissante et complte interface conviviale
Clementine (3)
Techniques :
Arbres de dcision Induction de rgles Rseaux de neurones Mthodes statistiques
MineSet (1)
Socit : SGI (Silicon Graphics Inc.) Cration : 1996 Plate-forme : Silicon Graphics Utilisation
Services financiers Prise de dcisions
MineSet (2)
Interface visuelle 3D
MineSet (3)
Interface graphique client/serveur
Tool Manager (Client) DataMover (Server)
Utilisateurs
Managers Analystes
MineSet (4)
Tches
Rgles dassociation Classification
Prsentation de la connaissance
Arbre Statistiques Clusters (nuages de points)
Synthse
Visualisation de donnes
Donnes dans un base de donnes ou un entropot de donnes peuvent tre visualises : diffrents niveaux de granularit ou dabstraction A laide de diffrentes combinaisons dattributs ou dimensions Rsultats des outils de Data Mining peuvent tre prsentes sous diverses formes visuelles
Rsum
Data mining : dcouverte automatique de patterns intressants partir densembles de donnes de grande taille KDD (Knowledge discovery) est un processus : pr-traitement data mining post-traitement Domaines dapplication : distribution, finances, biologie, mdecine, tlcommunications, assurances, banques, ...
Rsum
Linformation peut tre extraite partir de diffrentes types de bases de donnes (relationnel, orient objet, spatial, WWW, ...) Plusieurs fonctions de data mining (diffrents modles) : clustering, classification, rgles dassociation, ... Plusieurs techniques dans diffrents domaines : apprentissage, statistiques, IA, optimisation, ....
Rsum
Plusieurs problmes ouverts : Visualisation Paralllisme et distribution Issues de scurit et confidentialit Futur prometteur
Georges Gardarin
Universit de Versailles (laboratoire PRISM) Internet/intranet et bases de donnes Data Web, Data Warehouse, Data Mining, Ed. Eyrolles http://torquenada.prism.uvsq.fr/~gardarin/home.html IBM Almaden Research Center http://www.almaden.ibm.com/cs/people/ragrawal/ Rensselaer Polytechnic Institute, New York http://www.cs.rpi.edu/~zaki/
Mohammed Zaki
Army High Performance Computing Research Center http://www-users.cs.umn.edu/~kumar Dcouverte de connaissances partir de donnes, polycopi (Universit de Lille 3) http://www.univ-lille3.fr/grappa http://www.cs.bham.ac.uk/~anp/TheDataMine.html www.kdnuggets.com
Rmi Gilleron
"Data Mining: Concepts and Techniques by Jiawei Han and Micheline Kamber, Morgan Kaufmann Publishers, August 2000. 550 pages. ISBN 1-55860-489-8
Confrences - Historique
1989 Workshop IJCAI 1991-1994 Workshops KDD 1995-1998 Confrences KDD 1998 ACM SIGKDD 1999- Confrences SIGKDD Et plusieurs nouvelles confrences DM
PAKDD, PKDD SIAM-Data Mining, (IEEE) ICDM etc.
Confrences - Journaux
Standards Standards
DM:
Confrences : KDD, PKDD, PAKDD, ... Journaux : Data Mining and Knowledge Discovery, CACM Journaux : ACM-TODS, J. ACM, IEEE-TKDE, JIIS, ...
Confrences : Machine Learning, AAAI, IJCAI, Journaux : Machine Learning, Artific. Intell.,