Règles d'Association : Data Mining

Règles
d’Associations
d’Associations
Lotfi Ben Romdhane, Ph.D.
DSI / ESST / US/
Tn
DSI / ESST / US/
Tn
Sommaire
• Introduction
•
Ensembles fréquents
2
•
Ensembles fréquents
• Qualité des règles
• Génération des ensembles
fréquents
•
Génération
des règles
•
Génération
des règles
d’association
• Discussion
Concepts de base (1)
•MBA : Market Basket Analysis
•
3
•
utilisateurs pour dégager les habitudes d’achat
des clients
• Très utile pour développer des stratégies de
Marketing
▫
Exemple
: une grande partie des clients qui achète
▫
Exemple
: une grande partie des clients qui achète
des ordinateurs, achète aussi des antivirus
mettre les compartiments hardware et software très
proches
faire des « packages » de promotion
Concepts de base (2)
•
Les serveurs Web stockent les sessions de visite
4
•
Les serveurs Web stockent les sessions de visite
des internautes
▫ IP, navigateur, pages visitées, ordre de la visite,
durée, ...
• La découverte des « patrons » internautes est
très utile
▫
pour faire des «
prefetching
» côté serveur
▫
pour faire des «
prefetching
» côté serveur
▫ conception du contenu et de la structure du site
web
« si l’internaute visite la page p1, et puis p2; alors il va
visiter par la suite la page p5 » !
Concepts de base (3)
• Les données sont des données ensemblistes
▫
appelées transactions (
transactional
databases
)
5
▫
appelées transactions (
transactional
databases
)
▫ chaque transaction est un ensemble d’objets
• La génération des règles d’associations consiste
à trouver les corrélations intéressantes
entre les données
•
Les règles seront modélisées sous forme logique
•
Les règles seront modélisées sous forme logique
antécédent ⇒conséquent
• Règles intéressantes: besoin d’une mesure
pour quantifier la qualité des règles?
Fréquence d’un ensemble (1)
•
I
=
{
I
1
, I
2
, …, I
n
} désigne un ensemble d’objets
6
•
I
=
{
I
1
, I
2
, …, I
n
} désigne un ensemble d’objets
•D= {T1, T2, …, Tm} est un ensemble de
transactions tel que Ti ⊆I ; ∀Ti∈D
• On note par k-ensemble tout ensemble de
taille k (contenant k objets)
• Une transaction Test dite contenir un ensemble
A
ssi
A
⊆
T
A
ssi
A
⊆
T
• La fréquence d’un ensemble A est le nombre de
transactions dans D contenant A
Fréquence d’un ensemble (2)
•I= {I1, I2, I3, I4, I5}
7
TID Liste d’objets
T100
I1, I2, I5
•D= {T100, T200, …, T900}
•A= {I1, I2} est un 2-ensemble
puisqu’il contient deux objets
• Les transactions T100, T400,
T800
, et
T900
contiennent
T100
I1, I2, I5
T200 I2, I4
T300 I2, I3
T400 I1, I2, I4
T500 I1, I3
T600 I2, I3
T700
I1, I3
T800
, et
T900
contiennent
l’ensemble A
• Ainsi la fréquence de Aest égal
à quatre
T700
I1, I3
T800 I1, I2, I3, I5
T900 I1, I2, I3
Mesure de qualité (1)
•
Une règle d’association est une
implication
⇒
8
•
Une règle d’association est une
implication
sous la forme A
⇒
B tels que
▫ A ⊂I, B ⊂I; et
▫ A ∩B = ∅
• Pour mesure la qualité d’une règle d’association,
on va utiliser deux indices :
▫
support
▫
support
▫ confidence
Mesure de qualité (2)
• Le support d’une règle d’association est défini
comme étant « le pourcentage des transactions
9
comme étant « le pourcentage des transactions
dans l’ensemble Dcontenant en même temps les
deux parties ‘antécédent’ et ‘conséquent’ de la
règle »
B
A
fréquence
B
A
)
(
)
(
support
∪
=
⇒
D
B
A
fréquence
B
A
)
(
)
(
support
∪
=
⇒
)()(support BAPBA
∪
=
⇒
Mesure de qualité (3)
• Le degré de confidence d’une règle est défini
comme étant « le pourcentage des transactions
10
comme étant « le pourcentage des transactions
dans l’ensemble D contenant la partie
‘antécédent’ ; et qui contiennent aussi la partie
‘conséquent’ de la règle »
)
(
)(
)
(
support
)( support
)
(
A
fréquence
BAfréquence
A
BA
B
A
confidence
∪
=
∪
=
⇒
)
(
)
(
support
)
(
A
fréquence
A
B
A
confidence
=
=
⇒
)/()( ABPBAconfidence
=
⇒
support(A ⇒B) , confidence (A ⇒B) ∈[0,1]
Mesure de qualité (4)
•A= {I1, I2} , B = {I3} TID List of Items
T100
I1, I2, I5
11
•Règle : A ⇒B ?
•fréquence (A) = 4
•fréquence (B) = 6
•fréquence (A ∪B) = 2
•
support (
A
⇒
B)
= 2/9 = 0.222
T100
I1, I2, I5
T200 I2, I4
T300 I2, I3
T400 I1, I2, I4
T500 I1, I3
T600 I2, I3
T700
I1, I3
•
support (
A
⇒
B)
= 2/9 = 0.222
•confidence (A ⇒B) = (2/9)
/(4/9) = 0.5
T700
I1, I3
T800 I1, I2, I3, I5
T900 I1, I2, I3
Mesure de qualité (5)
•
Le support et la confidence sont deux indices
12
•
Le support et la confidence sont deux indices
pour mesurer la qualité des règles
▫support : modélise l’utilité de la règle
▫confidence : modélise le degré de certitude de la
règle
▫ « ordinateur » ⇒« logiciel antivirus » : support
=0.02; confidence = 0.6
=0.02; confidence = 0.6
il ya une probabilité globale de 2% que les deux
objets soient achetées ensemble
60% de ceux qui achètent « un ordinateur » achètent
aussi un « antvirus »
Algorithme générique (1)
Phase I. Calculer les ensembles fréquents
13
Phase I. Calculer les ensembles fréquents
• déterminer tous les ensembles dont le support est
supérieur ou égal à un seuil minimal minsup
Phase II. Générer les « règles fortes »
•
Utiliser les ensembles fréquents déterminés
pendant la Phase I pour calculer les règles fortes
•support ( règle )
≥
minsup; et
•confidence (règle)
≥
minconf
Algorithme générique (2)
•
La première phase est, algorithmiquement, plus
14
•
La première phase est, algorithmiquement, plus
complexe que la deuxième
▫ les performances globales d’un algorithme de
génération des règles associatives est dominé par
la complexité de la première phase
• Une approche aveugle : générer un sous-
ensemble et puis calculer sa fréquence !
ensemble et puis calculer sa fréquence !
▫ le nombre de sous-ensembles possibles d’objets
est exponentiel
12 −−= INI
I
30
102676,1100 ×=⇒=NII
15
Introduction (1)
•
Apriori
a été proposé par
Agrawal
et
Srikant
16
•
Apriori
a été proposé par
Agrawal
et
Srikant
en 1994 dans les labos d’IBM pour calculer les
ensembles fréquents
• Le nom de l’algorithme provient du fait qu’on
utilise des connaissances à priori pour générer
les ensembles fréquents
▫
ces connaissances se basent sur des propriétés
▫
ces connaissances se basent sur des propriétés
mathématiques des ensembles fréquents
▫ essaye de réduire l’espace de recherche
Introduction (2)
•Théorème 1 - propriété a priori
17
▫ Tous les sous-ensembles non-vides d’un ensemble
fréquent sont fréquents
•Démonstration (squelette)
▫
soit
Y
un ensemble fréquent: support(
Y
)
≥
minsup
▫
soit
Y
un ensemble fréquent: support(
Y
)
≥
minsup
▫ soit X un sous-ensemble de Y(X⊂Y)
∀T∈D; si Y
⊆
T alors X
⊆
T
Ainsi fréquence (X)
≥
fréquence (Y)
Introduction (3)
•Lkest l’ensemble de tous les k-ensembles
fréquents
18
fréquents
•Théorème 2- propriété Apriori
• Si Lk= ∅alors Lj= ∅ ∀ j≥k
• Ce théorème illustre le fait qu’à partir d’une
certaine taille k, il n’est plus possible d’avoir des
ensembles fréquents
ensembles fréquents
▫ générer les ensembles fréquents par ordre croissant
de taille: ordre 2, 3, .... (Apriori !)
Algorithme (1)
•entrée: un ensemble de transactions
•
sortie:
ensembles fréquents
19
•
sortie:
ensembles fréquents
DEBUT
▫L1 = {singletons fréquents}
Tant Que (Lk<> ∅) faire
k ←k+1
1. JOINTURE
Ck←jointure(Lk-1)
2.
ELAGAGE
2.
ELAGAGE
Lk←élagage(Ck)
Fin Tant Que
▫ retourner (L = ∪Lk∀k≥1)
FIN
Algorithme (2)
•
Dans la première étape, on effectue la jointure
20
•
Dans la première étape, on effectue la jointure
de deux ensembles fréquents de taille kpour
obtenir les ensembles candidats de taille k+1
• On suppose l’existence d’un ordre
lexicographique
entre les éléments de
I
lexicographique
entre les éléments de
I
• Tous les éléments d’un k-ensemble fréquent sont
ordonnés selon cet ordre
1 / 16 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!