Classification préalable à la recherche de règles d’association

Slides:



Advertisements
Présentations similaires
S. Jouteau, A. Cornuéjols, M. Sebag (LRI)
Advertisements

Probabilités et statistiques au lycée
Les Systèmes de Gestion de Bases de Données (SGBD) df - normalisation.
AUTRES ASPECTS DU GPS Partie I : tolérance de Battement
Data Mining.
Classification et prédiction
Règles d’association.
Regroupement (clustering)
Apprentissage relationnel Apprentissage Data Mining ILP.
JADT'04 - Mars 2004, Belgique 1 EXIT: un système itératif pour l'extraction de la terminologie du domaine à partir de corpus spécialisés Mathieu Roche,
LIRMM 1 Journée Deuxièmes années Département Microélectronique LIRMM.
But de la lecture critique
Calculs de complexité d'algorithmes
POURCENTAGES.
Stratégie territoriale en matière de développement de lindustrie du multimédia Lexpérience québécoise Montpellier 22 novembre 2005.
Extraction des connaissances dans les bases de données
Découverte automatique de mappings fondée sur les requêtes dans un environnement P2P Présenté Par: Lyes LIMAM Encadré Par: Mohand-Said Hacid.
Scoring Séance II.
Cliques & Bicliques Maximales
Règles significatives
EQUIPE TaToo Extraction de connaissances dans les bases de données : motifs séquentiels et ontologie LIRMM - CNRS - Université Montpellier II.
Christelle Scharff IFI Juin 2004
Identification des personnes par l’iris
Estella Annoni, Franck Ravat, Olivier Teste, Gilles Zurfluh
DEA Intelligence Artificielle et Optimisation Combinatoire
Analyse factorielle.
Classification Multi Source En Intégrant La Texture
Classification Ascendante 2-3 Hiérarchique: Applications au Web Mining
Société Française de Thermique
Présentation générale
DURIBREUX, Michèle & COCQUEBERT & HOURIEZ, Bernard,
Présenté par : Yasser HACHAICHI Sous la direction de : Mr. Jamel FEKI
Concepts avancés en mathématiques et informatique appliquées
L’extraction de rôles Role mining
Détection de co-évolution de gènes Master 2 : Informatique à Finalité Professionnelle et Recherche Unifiée (IFPRU) Parcours Ingénierie de lIntelligence.
La segmentation
Comprendre la variation dans les données: Notions de base
Techniques de test Boulanger Jean-Louis.
UBLO Comparaison de génomes bactériens : questions méthodologiques autour de la définition du squelette et des boucles
1.Un rang de données multicolores 2. Deux permutations des n premiers entiers 3. b permutations des k premiers entiers 4. Choix de n points dans [0,1]
Projet Acquisition de connaissances
Projet Acquisition de connaissances Réalisé par Anne-Laure B ERRÉE, Andra Maria B LAJ, Stéphanie C HARLET, Diana D RAGUSIN, Daphné D USSAUD, Emeline E.
Projet Acquisition de connaissances Réalisé par Anne-Laure B ERRÉE, Andra Maria B LAJ, Stéphanie C HARLET, Diana D RAGUSIN, Daphné D USSAUD, Emeline E.
Projet Acquisition de connaissances Réalisé par Anne-Laure B ERRÉE, Andra Maria B LAJ, Stéphanie C HARLET, Diana D RAGUSIN, Daphné D USSAUD, Emeline E.
Riadh Ben Messaoud Kamel Aouiche Cécile Favre
Analyse discriminante sur données fonctionnelles
Calcul des groupes d'homologie d’objets discrets
Évolution de schémas par classification automatique dans les entrepôts de données 3ème journée francophone sur les Entrepôts de Données et l'Analyse en.
METHODE DESCPIPTIVE : ASSOCIATION
Question 1 Une série d'échantillons sont analysés dans un laboratoire. On constate que la teneur en carbone des différents échantillons varie d'un échantillon.
1 Modèles de particules Reeves, W. T., "Particle Systems - A technique for Modeling a Class of Fuzzy Objects," SIGGRAPH 83, Reeves, W. T., and.
ASSEMBLEE GENERALE Mercredi 3 novembre RAPPORT DU COMMISSAIRE AUX COMPTES EXERCICE
Classification automatique
5 avril 2008 Dr Jérôme MATHIEU
Comparaisons de systèmes de coûts
Similarité Belkhir Abdelkader Laboratoire LSI USTHB
Modèle neuromimètique de l’apprentissage par renforcement Les aspects temporels (réponse retardée) peuvent être facilement intégrés au niveau cortical.
Amélioration de la simulation stochastique
Calcul parallèle => partitionner les données en sous-groupes associés aux processeurs. P0 P2 P1.
1 Alain Casali Christian Ernst Extraction de Règles de Corrélation Décisionnelles 29 Janvier 2009.
Fouille de données issues de capteurs : problématique et méthodes Journée “Les Capteurs en Agriculture” Paris 18 avril 2014 Pascal Poncelet
Projet Acquisition de connaissances Réalisé par Anne-Laure B ERRÉE, Andra Maria B LAJ, Stéphanie C HARLET, Diana D RAGUSIN, Daphné D USSAUD, Emeline E.
Sériation et traitement de données archéologiques
Cours LCS N°4 Présenté par Mr: LALLALI
Classification de données par l’algorithme FPSO-GA
Reconnaissance de visage par vidéo
Knowledge discovery in Databases (KDD)
STAGE D’OBSERVATION 3ÈME MATTHEW WHISTLER – MARTIN LOPEZ HOWE – 3H.
IFT 501 Recherche d'information et forage de données Chaptitre 6 : Analyse d’association concepts de base et algorithmes André Mayers Automne 2014 inspiré.
Transcription de la présentation:

Classification préalable à la recherche de règles d’association Centre de Recherche en Informatique du CNAM Conservatoire National des Arts et Métiers Chaire de Statistique Appliquée - Case 41 292 rue Saint Martin 75 141 Paris Cedex 03 Classification préalable à la recherche de règles d’association Marie Plasse marie.plasse@mpsa.com Ndeye Niang niang@cnam.fr Gilbert Saporta saporta@cnam.fr 2èmes Rencontres Inter-Associations "la classification et ses applications" 20-21 mars 2006, Lyon

SOMMAIRE Problématique industrielle La recherche de règles d'association Méthodes de classification de variables Utilisation conjointe des deux méthodes Conclusion & Perspectives

PROBLEMATIQUE INDUSTRIELLE Les données Plus de 80000 véhicules décrits par plus de 3000 attributs binaires Véhicules A1 A2 A3 A4 A5 … Ap 1 Véhicules A1 A2 A3 A4 A5 … Ap 1 Véhicules Attributs présents {A1, A4} {A3, A4} {A2, A5} {A1, A5} {A2, A5, Ap} {A3} = Nous disposons de données industrielles relatives à la fabrication des véhicules. Nous avons + de 80000 véhicules décrits par + de 3000 attributs binaires. La découverte de liens entre ces attributs représenterait un avantage pour le constructeur qui est à la recherche d'une amélioration permanente de la qualité de ses véhicules. Donc notre problématique d'un point de vue statistique est de trouver des corrélations entre les attributs. La similitude de nos données avec des données de transaction nous a naturellement conduit à utiliser la méthode de recherche de règles d'association. Chaque transaction est pour nous un véhicule et les items achetés sont nos attributs binaires. Matrice de données binaires Données de transaction Trouver des corrélations entre les attributs… … grâce à la recherche de règles d'association

PROBLEMATIQUE INDUSTRIELLE Spécificités des données Des données clairsemées : Répartition des 100 attributs les plus fréquents : Nombre d'attributs présents par véhicule : Ce graphique montre le nombre et le pourcentage de véhicules concernés par les 100 attributs les plus fréquents. Les attributs véhicules sont assez rares : puisque l’attribut le plus fréquent apparaît sur seulement 12% des véhicules mais 97% des attributs apparaissent sur moins de 1% des véhicules. De plus, un véhicule possède en moyenne moins de 4 attributs. En réalité, quelques véhicules présentent plus de 50 attributs mais la majorité d’entre eux n'en possèdent que entre 1 et 5 . Cela nous donne une bonne indication de la taille des transactions et donc de la complexité des règles que l’on va obtenir. 4 attributs en moyenne

LA RECHERCHE DE REGLES D'ASSOCIATION Rappel de la méthode Origine marketing : analyser les ventes des supermarchés "lorsqu'un client achète du pain et du beurre, il achète 9 fois sur 10 du lait en même temps" Formalisation : où A ∩ C = Ø Fiabilité : Support : % de transactions contenant A et C s(A C) = 30 %  30% des transactions contiennent à la fois + + Précision : Confiance : % de transactions contenant C sachant qu'elles ont A A l’origine, la méthode de recherche des règles d’association est née pour analyser les ventes des supermarchés dans un objectif marketing. En entrée, on a des données de transaction : pour chaque caddie ou ticket de caisse, on a la liste des articles ou items achetés. En sortie, la méthode permet d’obtenir des règles du type « lorsqu’un client achète du pain et du beurre, il achète 9 fois sur 10 du lait en même temps ». Une règle s’exprime sous forme d’implication où une ensemble d’items A (pour antécédent) implique un ensemble d’item C (pour conséquent) où les ensembles A et C sont disjoints, c’est-à-dire que les partie antécédent et conséquent de la règle ne peuvent pas avoir d’items en commun. On connaît sa fiabilité par le support qui est le % de transactions qui contiennent tous les items de la règle donc c’est la probabilité d’avoir simultanément les items des ensembles A et C. Si on reprend l’exemple, si on a un support de 30 % cela veut dire que 30% de toutes les transactions contiennent à la fois du pain du beurre et du lait. On a la précision de la règle par la confiance qui lui est accordée : c’est le % de transactions qui contiennent les items de la partie de droite parmi uniquement celles qui contiennent les items de la partie de gauche. Donc c’est la probabilité du conséquent sachant l’antécédent qui peut également se traduire par le support de la règle sur le support de l’antécédent. Si l’on reprend notre exemple, et que la confiance est de 90%, 90% des transactions qui contiennent du pain et du lait contiennent aussi du lait. Les algorithmes de recherche d'association procèdent en 2 étapes : La première étape est la recherche des sous-ensembles fréquents : l’utilisateur fixe un seuil minimum pour le support et on recherche tous les sous-ensembles d’items qui présentent un support supérieur à ce seuil. La seconde étape est la construction des règles à partir des ensembles fréquents trouvés à la première étape. On construit toutes les règles possibles et on calcule leur confiance. A la fin on ne retient que celles dont la confiance est supérieure à un seuil fixé par l’utilisateur. Parmi les algorithmes de recherche de règles d'association et plus particulièrement d'ensembles fréquents on peut citer les suivants : Le premier algorithme de recherche des règles d’association a été développé en 1993 par Agrawal et Srikant, chercheurs chez IBM, puis 1 an après, suite à quelques modifications, ils ont présenté l’algorithme Apriori, qui est l’algorithme fondateur de la recherche de règles d’association. Saverese et al. Ont proposé en 1995 l'algorithme Partition, qui comme son nom l'indique partitionne la base de données, recherche les itemsets locaux dans chaque partitions et calcule leurs supports exacts grâce à la totalité des données. Brin et Motwani ont proposé l'algorithme Sampling en 1997. Celui-ci tire un échantillon de la base de données sur lequel il calcule les itemsets fréquents avec une seuil pour le support inférieur à minsup, en suite il vérifie sur l'ensemble des données. Zaki a proposé l'algorithme Eclat en 2000. Eclat divise le treillis des itemsets en parties disjointes et qui peuvent être résolues indépendamment en mémoire. Le calcul du support est plus rapide et il sollicite de faible besoin en mémoire. Et Han et Pei ont proposé FP-Growth en 2003 qui utilise une structure de données particulière appelée FP-Tree. L'algorithme d'extraction de règles a été proposé par Agrawal et Srikant en même temps qu'Apriori. c(A C) = 90 %  90% des transactions qui contiennent + contiennent aussi Algorithmes : Recherche des sous-ensembles fréquents (avec minsup) Extraction des règles d'association (avec minconf) Apriori (Agrawal & Srikant, 1994) Partition (Saverese et al., 1995) Sampling (Brin & Motwani, 1997) Eclat (Zaki, 2000) FP-Growth (Han & Pei, 2003)

LA RECHERCHE DE REGLES D'ASSOCIATION Extraction des règles Support minimum (nb de véhicules vérifiant la règle) Confiance minimum Nombre de règles Taille maximum des règles obtenues 500 50 % 16 3 400 29 300 194 5 250 1299 6 200 102 981 10 100 1 623 555 13 Support minimum (nb de véhicules vérifiant la règle) Confiance minimum Nombre de règles Taille maximum des règles obtenues 500 50 % 16 3 400 29 300 194 5 Support minimum (nb de véhicules vérifiant la règle) Confiance minimum Nombre de règles Taille maximum des règles obtenues 500 50 % 16 3 400 29 Support minimum (nb de véhicules vérifiant la règle) Confiance minimum Nombre de règles Taille maximum des règles obtenues 500 50 % 16 3 Objectifs : Réduire le nombre de règles Simplifier les règles Tout à l'heure, on a vu le support exprimé en pourcentage mais il est parfois plus parlant de l'exprimer en effectifs. Ici, c'est ce que l'on a fait, on parle en nombre de véhicules. Avec un support de 500 véhicules, et une confiance de 50%, on obtient 16 règles d’une complexité maximum de 3 items. On fait varier un peu le support à la baisse en raison du fait que les données sont clairsemées, tout en gardant une confiance constante… Le nombre de règles explose et la complexité aussi. Donc l'objectif est de réduire le nombre de règles et de les simplifier. On a déjà une réduction de 60 % du nombre de règles grâce à un regroupement manuel des attributs, mais ce n'est pas suffisant… Première réduction en regroupant les attributs de manière experte : Support minimum Confiance minimum Nombre de règles Taille maximum des règles obtenues 100 50 % 600636 12

CLASSIFCIATION DE VARIABLES Méthodes utilisées Classification ascendante hiérarchique Hiérarchie de partitions emboîtées Stratégie d'agrégation de Ward Classification descendante (Proc Varclus) Recherche d'une partition en classes unidimensionnelles Regroupement autour de la composante principale avec laquelle la variable présente le plus fort coefficient de corrélation ACP ACP Nous avons utilisé des classifications ascendantes hiérarchiques avec la stratégie de Ward. Si ces classifications permettent d’obtenir une hiérarchie de partitions emboîtées, la classification descendante, recherche une partition en classes unidimensionnelles. Nous avons utilisé la procédure VARCLUS de SAS. Au début on a une seule classe avec toutes les variables. On fait une ACP. On regarde si la seconde valeur est supérieure à 1 et si c’est le cas on divise la classe en 2. On regroupe chaque variable autour de la composante principale avec laquelle est présente le plus fort coefficient de corrélation. Ensuite, on recommence le processus : sur chaque classe, on fait une ACP ; si la seconde valeur propre est supérieure à 1, on divise la classe ; si la seconde valeur propre est inférieure à 1 on arrête la division. Nous ne l'avons pas utilisée mais il y a aussi une méthode de partitionnement : la méthode de Qannari et Vigneau. C'est un algorithme itératif comme les centres mobile de Forgy et le critère à maximiser est la corrélation entre chaque variable d'un groupe et une variable latente qui représente ce groupe. ACP  Partitionnement : méthode de Qannari et Vigneau (2003) Regroupement des variables autour de variables latentes

CLASSIFCIATION DE VARIABLES Indices de similarité utilisés r² jj’ = Ochiai Jaccard Dice Les méthodes de classification ascendantes nécessitent de connaître la similarité entre les variables. Pour calculer la similarité entre deux variables j et j’, on construit le tableau de contingence associé et à partir de celui-ci on peut calculer plusieurs indices de similarité, qu’il faudra ensuite transformer en indice de dissimilarité. Nous avons utilisé principalement cinq indices de similarité : Le carré du coefficient de corrélation linéaire qui est égal au phi de Pearson L’indice d’Ochiai qui dans le cas des données binaires est égale au coefficient de Matusita, L’indice de Jaccard, celui de Dice et celui de Russel et Rao. Si l’on regarde de plus près l’indice de Russel et Rao, on se rend compte que c’est le nombre de cooccurrences des variables j et j’ sur le nombre total de cas, ce n’est donc autre que le support du sous ensemble formé par les items j et j’. Russel & Rao

CLASSIFCIATION DE VARIABLES Composition des classes Nombre de variables par classe : 12 28 41 60 61 111 156 349 1001 1282 Varclus 2 4 5 10 16 117 2928 Russel & Rao 6 7 11 298 2690 Dice 8 72 2973 Jaccard 13 84 201 2762 Ochiai 3 3058 R² Indices Classes Remarque sur le choix du nombre de classes Nous avons choisi une partition en 10 classes après de nombreux tests sur le nombre de classes : 200 classes, 100 classes, 50 classes, 10 classes : dans tous les cas, il y a toujours une grande classe (ici en mauve) et des petites classes. Plus le nombre de classes est faible, plus le travail de recherche des règles sera simplifié. On voit qu’avec la méthode descendante, les classes sont plus équilibrées.

CLASSIFCIATION DE VARIABLES Comparaison des partitions obtenues Comparaison des partitions 2 à 2 grâce à l'indice de Rand : Ward-R² Ward-Ochiai Ward-Jaccard Ward-Dice Ward-Russel Rao Varclus   0,82 0,94 0,87 0,78 0,79 0,80 0,84 0,86 0,31 0,39 0,34 0,41 0,35 Pourcentage de paires en accord : Variables dans la même classe dans les deux partitions Variables séparées dans les deux partitions On a essayé de comparer toutes ces partitions grâce à l’indice de Rand. Il permet de comparer les partitions 2 à 2 et est exactement le pourcentage de paires en accord. Par « paires en accord » , on entend les variables qui sont dans une même classe dans les deux partitions mais aussi les variables qui sont dans deux classes distinctes au sein des deux partitions. On remarque que les classifications hiérarchiques sont très proches les unes des autres, puisque l’indice de Rand est proche de 0.8 et peut atteindre jusqu’à 0.94. Par contre la classification descendante est éloignée des autres, puisque les indices de Rand sont nettement moins bons mais c’est normal puisque les classes sont mieux proportionnées.

UTILISATION CONJOINTE Extraction des règles après classification Recherche des règles d'association à l'intérieur de chaque classe : A B F  G J  D M K, L C  E V  W U  T A première vue, pas de réduction du nombre de règles 20 % 12 481648 Ward - Dice 4 5239 Varclus 479474 Ward - Ochiai 481388 Ward - Russel & Rao 99 % 481649 Ward - Jaccard 0 % 600637 Ward - R² . 600636 Sans Classif. Réduction du nombre de règles Complexité maximum Nombre de règles  Essai Maintenant nous allons rechercher les règles d’association à l’intérieur de chaque classe. En mauve, on rappelle les résultats sans la classification préalable. Ici, on voit que la classification permet en général une faible réduction du nombre de règles sauf avec la classification descendante.

UTILISATION CONJOINTE Analyse du nombre de règles dans chaque classe Partition en dix classes avec l'indice de Russel & Rao : Classe Nombre de variables dans la classe Nombre de règles obtenues Complexité maximum 1 2 12 481170 3 4 5 24 117 55 6 22 7 10 33 8 9 16 2928 61 Quelque soit l'indice de distance retenu, il y a toujours les mêmes 12 variables regroupées ensemble et qui produisent des règles très complexes (12 attributs) Classe identique quelque soit la classification  règles complexes

UTILISATION CONJOINTE Réduction du nombre de règles Recherche des règles d'association à l'intérieur de chaque classe sauf de la classe atypique :   Nombre de règles Complexité maximum Réduction du nombre de règles Sans Classif. 600636 12  . Ward - R² 43 4 + de 99 % Ward - Jaccard 479 5 Ward - Russel & Rao 218 Ward - Ochiai 459 Ward - Dice 478 Varclus 21 Si l’on retire ces 12 variables de l’analyse, on voit que l’on obtient une très nette réduction du nombre de règles à analyser (+ de 99% dans tous les cas). De plus, les règles sont simples : au maximum 4 à 5 items. Réduction du nombre de règles à analyser Simplification de ces règles Identification d'un groupe de 12 attributs à traiter séparément

CONCLUSION & PERSPECTIVES La classification de variables préalable a permis de : Mettre en évidence une classe atypique Diminuer le nombre et la complexité des règles produites Le choix de l’indice de Russel Rao est cohérent en raison de sa relation avec le support Pour extraire les règles les plus intéressantes, nous avons utilisé des indices de pertinence tels que le lift, et dans notre cas l'indice de Jaccard : Nous sommes en train d'étudier les apports de la classification croisée à notre approche…

REFERENCES BIBLIOGRAPHIQUES Agrawal R., Srikant R. (1994) Fast Algorithms for Mining Association Rules. In : Proceedings of the 20th Int'l Conference on Very Large Databases (VLDB), Santiago, Chile. Fichet B., Le Calve G. (1984) Structure géométrique des principaux indices de dissimilarité sur signes de présence-absence. Statistiques et Analyse des données, Vol. 9 n°3 pp11-44 Gower J.C., Legendre P. (1986) Metric and euclidean properties of dissimilarity coefficients. In : Journal of Classification Vol.3, pp 5-48 Hébrail G., Lechevallier Y. (2003) Data mining et analyse des données. In : Govaert G. Analyse des données. Ed. Lavoisier, Paris, pp 323-355 Nakache J.P., Confais J. (2005) Approche pragmatique de la classification, Ed. Technip, Paris Plasse M., Niang N., Saporta G. (2005). Utilisation conjointe des règles d’association et de la classification de variables. Journées Françaises de Statistiques, Pau, France. Vigneau E., Qannari E.M. (2003) Clustering of variables around latent component - application to sensory analysis. Communications in Statistics , Simulation and Computation, 32(4), pp 1131-1150 Youness G., Saporta G. (2004) Some Measures of Agreement Between Close Partitions - Student vol. 5(1), pp. 1-12.