Vous êtes sur la page 1sur 19

Rgles dassociation

Christelle Scharff IFI Juin 2004

Motivations et gnralits

Approche automatique pour dcouvrir des relations / corrlations intressantes entre des objets Rgles de la forme: X Y [support, confidence] X et Y peuvent tre composs 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 mnagre

Design des rayons dans les supermarchs, ventes croises, segmentation du march, design des catalogues de ventes

Dtection des fraudes Gestion des stocks

Exemples de rgles
Rgle boolenne: achte(x, SQLServer) ^ achte(x, DMBook) achte(x, DBMiner) [0.2%, 60%] Rgle quantitative: age(x, 30..39) ^ salaire(x, 42..48K) achte(x, PC) [1%, 75%]

Mthode Nave

Traiter toutes les combinaisons possibles des attributs et de leurs valeurs pour crer toutes les rgles dassociation possibles Exemple: 5 attributs prenant une seule valeur

Combien de rgles?

Complexit computationnelle Nombre de rgles gigantesque Amlioration: Garder les rgles avec un support et une confidence minimum

Pas satisfaisant

Lalgorithme A Priori [nom,

anne]

Un item est une paire (attribut, valeur) Un ensemble ditems regroupe des items (sans duplication) Principe de lalgorithme A Priori:

Gnration densembles ditems Calcul des frquences des ensembles ditems On garde les ensembles ditems avec un support minimum: les ensembles ditems frquents On ne gnre et on ne garde que les rgles avec une confidence minimum

Exemple:Mto et match de foot

Exemple: Ensembles ditems


Supports

12 ensembles dun item, 47 ensembles de deux items, 39 ensembles de trois items, 6 ensembles de quatre items, 0 ensemble de cinq items = 104 ensembles ditems avec un support >= 2

La proprit de frquence des ensembles ditems

On utilise certaines proprits pour construire les ensembles ditems Les sous-ensembles dun ensemble ditems frquent sont aussi des ensembles ditems frquents

Par exemple, si {A,B} est un ensemble ditems frquents, alors {A} et {B} sont aussi des ensembles ditems frquents Plus gnralement, les sous-ensembles de k-1 items dun ensemble de k items frquent sont frquents

Construction des ensembles ditems

En utilisant la proprit de frquence des ensembles ditems, on voit quon peut construire les ensembles ditems incrmentalement:

On commence avec les ensembles un item Un ensemble de k items peut tre construit par jointure dun ensemble densembles de k-1 items avec lui-mme, et en vrifiant la proprit de frquence

Exemple

On suppose que les ensembles ditems sont composs ditems ordonns (par exemple lxicographiquement) Considrons 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-mme (A,C,D,E) nest pas un ensemble de 4 items frquent (car (C,D,E) nest pas dans S) (A,B,C,D) est un ensemble de 4 items frquent

Ensembles ditems et rgles

Un ensemble ditems peut reprsenter plusieurs rgles Exemple:

A partir de {A,B,C}, on peut construire 7 rgles avec le mme 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 mme confidence

Gnrer les rgles

Transformer les ensemble ditems en rgles de manire efficace Dun ensemble de n items, on peut gnrer 2n 1 rgles potentielles On ne garde que les rgles avec une confidence minimum

Exemple: Ensembles ditems Rgles

Support >= 2 (ou 2/14) et Confidence = 100%

58 rgles
3 rgles avec un support de 4 5 rgles avec un support de 3 50 rgles avec un support de 2

Exemple complet
BD D
TID 100 200 300 400 Items 134 235 1235 25

itemset sup. C1 {1} 2 {2} 3 Parcours D {3} 3 {4} 1 {5} 3

L1 itemset sup.
{1} {2} {3} {5} 2 3 3 3

C2 itemset sup L2 itemset sup


{1 3} {2 3} {2 5} {3 5} 2 2 3 2
{1 {1 {1 {2 {2 {3
Parcours D

C2 itemset
Parcours D

2} 3} 5} 3} 5} 5}

1 2 1 2 3 2

{1 {1 {1 {2 {2 {3

2} 3} 5} 3} 5} 5}

C3 itemset {2 3 5}

L3 itemset sup {2 3 5} 2

Amliorer lalgorithme

104 ensembles de 1 items peuvent gnrer 107 ensemble de 2 items Le calcul des supports est coteux Gnrer les rgles est coteux Le calcul des confidences est coteux Le parcours des donnes initiales est rcurrent

Calcul de la confidence dune rgle: Optimisation nave


Calcul de 2n 1 confidences (une pour chaque rgle) Pour calculer la confidence dune rgle on peut utiliser le support densembles ditems calcul auparavant (en utilisant une table de hachage) Exemple:

Pour calculer la confidence de: Temprature = cool, windy = false humidity = normal, play = yes On peut utiliser le support calcul pour: Temprature = cool, windy = false

La mthode

Les rgles sont faciles interprter La mthode ralise de lapprentissage non supervis Elle est base sur des calculs lmentaires Elle est trs coteuse Elle marche pour des dcouvertes de faits frquents Elle peut produire des rgles triviales et inutiles

Exemple: Camembert Vin rouge

Autre algorithme

Lalgorithme darbre de modles frquents (Frequent-pattern tree) [name, anne]

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

Vous aimerez peut-être aussi