410 likes | 1.11k Views
Règles d’association. Christelle Scharff IFI Juin 2004. Motivations et g énéralités. Approche automatique pour découvrir des relations / corrélations intéressantes entre des objets Règles de la forme: X Y [support, confidence] X et Y peuvent être composés de conjonctions
E N D
Règles d’association Christelle Scharff IFI Juin 2004
Motivations et généralités • Approche automatique pour découvrir des relations / corrélations intéressantes entre des objets • Règles de la forme: X Y [support, confidence] • X et Y peuvent être composés de conjonctions • Support P(X Y) = P(X et Y) • Confidence P(X Y) = P( Y | X) = P(X et Y)/P(X) • Applications: • Utilisé pour analyser le panier de la ménagère • Design des rayons dans les supermarchés, ventes croisées, segmentation du marché, design des catalogues de ventes • Détection des fraudes • Gestion des stocks
Exemples de règles • Règle booléenne: achète(x, “SQLServer”) ^ achète(x, “DMBook”) achète(x, “DBMiner”) [0.2%, 60%] • Règle quantitative: age(x, “30..39”) ^ salaire(x, “42..48K”) achète(x, “PC”) [1%, 75%]
Méthode Naïve • Traiter toutes les combinaisons possibles des attributs et de leurs valeurs pour créer toutes les règles d’association possibles • Exemple: 5 attributs prenant une seule valeur • Combien de règles? • Complexité computationnelle • Nombre de règles gigantesque • Amélioration: Garder les règles avec un support et une confidence minimum • Pas satisfaisant
L’algorithme A Priori [nom, année] • Un item est une paire (attribut, valeur) • Un ensemble d’items regroupe des items (sans duplication) • Principe de l’algorithme A Priori: • Génération d’ensembles d’items • Calcul des fréquences des ensembles d’items • On garde les ensembles d’items avec un support minimum: les ensembles d’items fréquents • On ne génère et on ne garde que les règles avec une confidence minimum
Exemple: Ensembles d’items Supports 12 ensembles d’un item, 47 ensembles de deux items, 39 ensembles de trois items, 6 ensembles de quatre items, 0 ensemble de cinq items = 104 ensembles d’items avec un support >= 2
La propriété de fréquence des ensembles d’items • On utilise certaines propriétés pour construire les ensembles d’items • Les sous-ensembles d’un ensemble d’items fréquent sont aussi des ensembles d’items fréquents • Par exemple, si {A,B} est un ensemble d’items fréquents, alors {A} et {B} sont aussi des ensembles d’items fréquents • Plus généralement, les sous-ensembles de k-1 items d’un ensemble de k items fréquent sont fréquents
Construction des ensembles d’items • En utilisant la propriété de fréquence des ensembles d’items, on voit qu’on peut construire les ensembles d’items incrémentalement: • On commence avec les ensembles à un item • Un ensemble de k items peut être construit par jointure d’un ensemble d’ensembles de k-1 items avec lui-même, et en vérifiant la propriété de fréquence
Exemple • On suppose que les ensembles d’items sont composés d’items ordonnés (par exemple léxicographiquement) • Considérons les ensembles de 3 items suivants: • S = {(A,B,C), (A,B,D), (A,C,D), (A,C,E), (B,C,D)} • S est joint avec lui-même • (A,C,D,E) n’est pas un ensemble de 4 items fréquent (car (C,D,E) n’est pas dans S) • (A,B,C,D) est un ensemble de 4 items fréquent
Ensembles d’items et règles • Un ensemble d’items peut représenter plusieurs règles • Exemple: • A partir de {A,B,C}, on peut construire 7 règles avec le même support: • A B, C • B A, C • C A, B • A, B C • A, C B • B, C A • True A, B, C mais pas la même confidence
Générer les règles • Transformer les ensemble d’items en règles de manière efficace • D’un ensemble de n items, on peut générer 2n –1 règles potentielles • On ne garde que les règles avec une confidence minimum
Exemple: Ensembles d’items Règles Support >= 2 (ou 2/14) et Confidence = 100% 58 règles 3 règles avec un support de 4 5 règles avec un support de 3 50 règles avec un support de 2
Exemple complet BD D L1 C1 Parcours D C2 C2 L2 Parcours D L3 C3 Parcours D
Améliorer l’algorithme • 104 ensembles de 1 items peuvent générer 107 ensemble de 2 items • Le calcul des supports est coûteux • Générer les règles est coûteux • Le calcul des confidences est coûteux • Le parcours des données initiales est récurrent
Calcul de la confidence d’une règle: Optimisation naïve • Calcul de 2n –1 confidences (une pour chaque règle) • Pour calculer la confidence d’une règle on peut utiliser le support d’ensembles d’items calculé auparavant (en utilisant une table de hachage) • Exemple: • Pour calculer la confidence de: • Température = cool, windy = false humidity = normal, play = yes • On peut utiliser le support calculé pour: • Température = cool, windy = false
La méthode • Les règles sont faciles à interpréter • La méthode réalise de l’apprentissage non supervisé • Elle est basée sur des calculs élémentaires • Elle est très coûteuse • Elle marche pour des découvertes de faits fréquents • Elle peut produire des règles triviales et inutiles • Exemple: Camembert Vin rouge
Autre algorithme • L’algorithme d’arbre de modèles fréquents (Frequent-pattern tree) [name, année]
References • I. H. Witten, and E. Frank. Data Mining : Practical Machine Learning Tools and Techniques with Java Implementations. Morgan Kaufmann. • J. Han, and M. Kamber. Data Mining Concepts