Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
ou
L’analyse du panier de la ménagère
Ricco RAKOTOMALALA
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 1
1. Type de données traitées – Finalité de l’analyse
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 2
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 3
Données de transaction (I)
Analyse des tickets de caisse
N° transaction
(Caddie)
Contenu du caddie Commentaires:
1 pastis martini chips saucisson >> Une observation = Un caddie
2 martini chips >> Ne tenir compte que de la présence des
3 pain beurre pastis produits (pas de leur quantité)
4 saucisson >> Nombre variable de produits dans un
5 pain lait beurre caddie
6 chips pain >> La liste des produits est immense !
7 confiture
Objectifs :
(1) Mettre en évidence les produits achetés ensemble
(2) Transcrire la connaissance sous forme de règle d’association
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 4
Données de transaction (II)
Tableau de transactions Tableau binaire 0/1
N° transaction
Contenu du caddie
(Caddie)
1 p1 p2 p3
2 p1 p3
3 p1 p2 p3
4 p1 p3
5 p2 p3
6 p4
Caddie p1 p2 p3 p4
1 1 1 1 0
2 1 0 1 0
3 1 1 1 0
4 1 0 1 0
5 0 1 1 0
6 0 0 0 1
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 5
Données de transaction (III)
Tableau individus x variables Tableau binaire 0/1
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 6
Critères d’évaluation des règles d’association
Support et confiance Données
Caddie p1 p2 p3 p4
1 1 1 1 0
Soit la règle d’association 2 1 0 1 0
3 1 1 1 0
R1 : Si p1 alors p2 4 1 0 1 0
5 0 1 1 0
6 0 0 0 1
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 7
Extraction des règles d’association
Démarche globale
Quelques définitions
>> item = produit
>> itemset = ensemble de produits (ex. {p1,p3})
>> sup(itemset) = nombre de transactions d’apparition simultanée des
produits (ex. sup{p1,p3} = 4)
>> card(itemset) = nombre de produits dans l’ensemble (ex. card{p1,p3} = 2)
>> itemset fréquent = itemset dont le support est ≥ à support min
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 8
Idée : extraire tous les « itemsets fréquents » en
minimisant les calculs, notamment le nombre d’accès à la
base de données
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 9
Extraction des itemsets fréquents Caddie p1 p2 p3 p4
1 1 1 1 0
Il s’agit de parcourir un treillis et de calculer les
2 1 0 1 0
supports associés à chaque combinaison
3 1 1 1 0
4 1 0 1 0
5 0 1 1 0
Ø
6 0 0 0 1
3 5 1 # itemsets
4 {p1} {p2} {p3} {p4} C41 4 de card = 1
2 4 0 3 0 0 # itemsets
{p1,p2} {p1,p3} {p1,p4} {p2,p3} {p2,p4} {p3,p4} C42 6 de card = 2
2 {p1,p2,p3} 0 {p1,p2,p4} 0 0
{p1,p3,p4} {p2,p3,p4} C43 4
0
{p1,p2,p3,p4} C41 1
15 24 1
Le nombre de configuration est très vite très élevé
Chaque configuration nécessiterait un scan de la base de données
Il faut s’appuyer sur le paramètre « support.min »
Et les propriétés des itemsets
Pour réduire le nombre de configuration à évaluer réellement
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 10
Extraction des itemsets fréquents
Quelques définitions
Ø Sup.min = 2
3 5 1
4 {p1} {p2} {p3} {p4} Itemset : un ensemble
0
d’items
2 4 0 3 0
{p1,p2} {p1,p3} {p1,p4} {p2,p3} {p2,p4} {p3,p4}
Superset : B est un superset de
2 {p1,p2,p3} 0 {p1,p2,p4} 0 0 A si card(A) < card(B) et A B
{p1,p3,p4} {p2,p3,p4}
sup(B) ≤ sup(A)
0
{p1,p2,p3,p4}
On prend usuellement comme Prendre comme point de départ les Donne la représentation la plus
point de départ les itemsets itemsets fréquents fermés pour générer compacte possible de la liste des
fréquents pour générer toutes les les règles permet de réduire le nombre itemsets. Ex. si on sait que {p1,p2,p3}
règles d’association. de règles redondantes est fréquent, on sait que {p1,p2},
Ex. (p1 p2) et (p1p2,p3) auront la {p1,p3} et {p2,p3} le sont également
même confiance, la 1ère est redondante (mais on ne connaît pas leur support)
par rapport à la 2nde.
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 11
Extraction des itemsets fréquents C41 4 Itemsets de card = 1
Une approche très simple
C42 6
Itemsets de card = 2
C43 4
Itemsets de card = 3
Réduire l’exploration en éliminant
…
C44 1
15 2 4 1
d’emblée certaines pistes via le
support min (sup.min = 2 ici) et les
propriétés des itemsets
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 12
Idée : déduire les règles à partir des itemsets fréquents
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 13
Extraction des Règles d’Association
Recherche des règles pour les itemsets de card = 2
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 14
Extraction des Règles d’Association
Recherche des règles pour les itemsets de card = 3 et plus…
C31 3 Règles avec conséquent
de card = 1
C32 3 Règles avec conséquent
de card = 2
Réduire l’exploration en éliminant d’emblée certaines pistes
Le support de la règle ne change jamais = support de l’itemset
On peut jouer sur le support de l’antécédent
Sup {p1,p2,p3} = 2
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 16
Support et confiance
En termes probabilistes
R : p3p1
Données Proba. conjointe
Caddie p1 p2 p3 p4
1 1 1 1 0 Support (en
termes relatifs) sup(R) = 4/6 = P(p3p1) Proba. conditionnelle
2 1 0 1 0
3 1 1 1 0
4 1 0 1 0
Confiance conf(R) = sup({p1,p3})/sup({p3}) = 4 / 5 = P(p3/p1)
5 0 1 1 0
6 0 0 0 1
R : Antécédent Conséquent
sup(A) P( A) Support de l’antécédent
sup(C ) P(C )
Support du conséquent
sup(A C ) sup(AC ) P( AC )
conf A C P(C / A)
Le LIFT
P(C / A)
lift ( A C ) Ex. LIFT(fumer cancer) = 3% / 1% = 3
P(C )
Rapport de probabilité - Surcroît d’occurrence du ~ fumer multiplie par 3 la
conséquent quand l’antécédent est présent survenue du cancer (~ proche
Lift = 1 La règle ne sert absolument à rien… de la notion de risque relatif)
R : p3p1 Caddie p1 p2 p3 p4
1 1 1 1 0
Antécédent Non(Antécédent) Total
2 1 0 1 0
Le point de nac = 4 3 1 1 1 0
Conséquent nc = 4
départ est exemples
4 1 0 1 0
un tableau Non(conséquent) contre-exemples
5 0 1 1 0
croisé Total na = 5 n=6 6 0 0 0 1
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 19
Les logiciels s’appuient sur différents algorithmes
A PRIORI, ECLAT, FP-GROWTH, etc.
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 20
Règles d’association dans la distribution SIPINA
L’outil d’extraction de règle – Interaction avec Excel
Le logiciel peut
s’interfacer avec Excel
Les règles sont facilement récupérables dans Excel pour être filtrées et triées
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 22
Règles d’association avec TANAGRA (II)
Règles d’association supervisée
Définir une
variable cible
Définir une
modalité cible
Extraction de
différents types
d’itemsets
fréquents
Extraction et
visualisation des
règles
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 24
Règles d’association avec SPAD
Peut traiter indifféremment les bases « individus x Spécification du format de
variables » et les bases transactionnelles données pour le traitement
Format « transactions »
transaction produit
1 B
1 E
1 H
2 A
2 B
2 E
2 F
3 B
3 C
3 F
3 H
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 25
Intégrer des contraintes temporelles (succession)
dans la recherche des règles
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 26
Des règles d’association aux motifs séquentiels
Introduire la date des transactions (ou du moins tenir compte de leur succession)
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 27
Références
Wan Aezwani Wab, « Apriori and Eclat Algorithms in Association Rule Mining »,
Slideshare, Avril 2014.
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 28