Techniques de Fouilles de Données
Techniques de Fouilles de Données
FOUILLES DE DONNÉES
2. Technique de structuration
Dr EL FAR Mohamed
Sommaire
A. Rappel
B. Introduction
C. Méthodes utilisées
D. Conclusion
A. Rappel
A. Rappel
Structuration / Classification
A. Rappel
1. 2.
4. 3.
Techniques du Datamining
• Présentation des techniques
• Description de chaque technique :
Mesures de Simularitées &Types Variables
Classification/Structuration /Clustering
Association
Estimation & Segmentation & Prévision
Techniques du Datamining
• Présentation des techniques
• Description de chaque technique :
Mesures de Simularitées & Types Variables
Classification/Structuration /Clustering
Association
Estimation & Segmentation & Prévision
B. Mésures de Simularitées & Types
Variables
Intervalles:
Binaires:
catégories, ordinales, ratio:
Différents types:
Intervalle (discrètes)
Standardiser les données
Calculer l’écart absolu moyen:
s1
fn
1
(|
x m|
|
x
f f 2
m|
f f
...
|
x
nf
m
|)
f
où m1
(x
f n1
x
f 2
f
x
...)
nf
.
Personne1 50 11000
Personne2 70 11100 M
1107
S 1
salaire salair
Personne3 60 11122
Personne4 60 11074
Age Salaire
Personne1 -2 -0,5
Personne2 2 0,175
Personne3 0 0,324
Personne4 0 2
Similarité entre objets
Les distances expriment une similarité
Ex: la distance de Minkowski :
d
(
i
,
j
)
q
(|
xxq
|
|
xx
q
|
...
|
x xq
|
)
i
1j
1i 2j
2 ipj
p
Propriétés
d(i,j) 0
d(i,i) = 0
d(i,j) = d(j,i)
d(i,j) d(i,k) + d(k,j)
Exemple: distance de Manhattan
Age Salaire
d(p1,p2)=120
Personne1 50 11000
Personne2 70 11100 d(p1,p3)=132
Personne3 60 11122 Conclusion: p1 ressemble plus à
Personne4 60 11074 p2 qu’à p3
Age Salaire
Personne1 -2 -0,5 d(p1,p2)=4,675
Personne2 2 0,175 d(p1,p3)=2,324
Personne3 0 0,324
Conclusion: p1 ressemble
Personne4 0 0 plus à p3 qu’à p2
Variables binaires
Une table de contingence pour données binaires
Objet j
a= nombre de positions
1 0 sum
où i a 1 et j a 1
1 a b ab
Objet i 0 c d cd
sumac bd p
d(oi, oj)=3/4
Variables binaires
Variable symétrique: Ex. le sexe d’une personne, i.e coder
masculin par 1 et féminin par 0 c’est pareil que le codage
inverse
d
(i
,jp
)
pm
Méthode 2: utiliser un grand nombre de variables binaires
Créer une variable binaire pour chaque modalité (ex:
variable rouge qui prend les valeurs vrai ou faux)
Variables Ordinales
Une variable ordinale peut être discrète ou continue
L’ordre peut être important, ex: classement
Peuvent être traitées comme les variables intervalles
remplacer xif par son rang rif
{ 1,...,
M f
}
Remplacer le rang de chaque variable par une valeur dans
[0, 1] en remplaçant la variable f dans l’objet I par
r 1
zif if
M f
1
Utiliser une distance pour calculer la similarité
Techniques du Datamining
• Présentation des techniques
• Description de chaque technique :
Mesures de Simularitées & Types Variables
Classification/Structuration /Clustering
Association
Estimation & Segmentation & Prévision
C. Introduction
Classification/Structuration /Clustering
C. Introduction
Problématique :
Par exemple, on souhaite regrouper une clientèle (14 clients)
en 4 classes
Probabilité : 10 millions de partitions possibles en 4 classes
Définition :
Consiste à créer des classes (≈sous-ensembles) de données:
similairesentre elles
et différentes des données d’une autre classe
Applications :
Economie (segmentation de marchés)
Médecine (localisation de tumeurs dans le cerveau)
etc.
K=3
Définition de l’algorithme “K-Means”
• : Classe 1
• : Classe 2
Etapes de l’algorithme “K-Means”
Étape 3 :
Calcul des nouveaux centres de classes
Etapes de l’algorithme “K-Means”
Étape 4 :
Affectation des individus aux nouveaux centres de classes
Etapes de l’algorithme “K-Means”
Étape 5 :
Calcul des nouveaux centres de classes
Etapes de l’algorithme “K-Means”
Étape 6 : (dernière étape)
Affectation des individus aux nouveaux centres de classe
Etapes de l’algorithme “K-Means”
L'algorithme s'arrête quand :
La variance intra classe cesse de décroître ou,
La variance inter classe cesse d'augmenter ou,
dist(3,M2)<dist(3,M3)3 passe dans C2. Tous les autres objets ne bougent pas. C1={1},
M1=1, C2={2,3}, M2=2.5,C3={6,7,8,13,15,17} et M3= 66/6=11
dist(6,M2)<dist(6,M3)6 passe dans C2. Tous les autres objets ne bougent pas. C1={1},
M1=1, C2={2,3,6}, M2=11/3=3.67, C3={7,8,13,15,17}, M3= 12
Avantages :
Relativementextensible : dans le traitement
d’ensembles de taille importante (BD volumineuse)
Relativement efficace
Questions :
Comment mesurer la distance entre deux individus ?
De qui Martine est-elle la plus proche ?
Exemple simple
Distance :
On utilisera la distance euclidienne.
Distance entre Alain et Martine :
Questions :
A partir des variables V1& V2, “Qui est proche de qui” ?
Exemple complexe & ses étapes
Étape 1 :
On calcule les distances euclédiennes
…
Exemple complexe & ses étapes
Étape 1 : (suite)
De ces distances euclédiennes, on obtient le tableau
des distances :
A B C D E
A 0
B 5,83 0
A la main
C 2,23 6,40 0
D 7,21 1,41 7,81 0
E 2,00 4,24 2,23 5,65 0
A l’aide d’1
Logiciel
Exemple complexe & ses étapes
Étape 2 :
On regroupe les individus les plus proches
B et D sont les individus les plus proches
Pourquoi ?
…..
Étape 3 : (suite)
De ces distances, on obtient le tableau des distances :
A BD C E
A 0
BD 6,52 0
C 2,23 7,05 0
E 2,00 4,94 2,23 0
Étape 4 :
On regroupe les individus les plus proches
A et E sont les individus les plus proches
Pourquoi ?
…..
Pourquoi ?
AEC BD
AE 0
BD 6,39 0
Exemple complexe & ses étapes
Étape 8 :
On regroupe les individus AEC et BD
Exemple complexe & ses étapes
Résumé des 8 étapes précédentes :
Etape 1&2 : B et D sont regroupés à l'indice de niveau 1,41
Fin de l’itération :
agrégation de tous les individus en une seule classe
C. Méthodes utilisées
I. Classification Non hiérarchique
1. Agrégation autour de centres mobiles (KMeans)
2. Nuées Dynamiques (Self organizing map)
Association
Estimation & Segmentation & Prévision
E. Méthodes utilisées
Regles D’associations
Introduction
Indicateurs d’evaluatuions
Algorithme Apriori
règles d’associations
Règles d’association :
Une règle d’association a la forme logique générale suivante
si Conditions alors Résultats
CR
motifs de la forme : Corps Tête
Exemple : achète(x, “fraises”) achète(x, “Pommes”)
Etant donnés: (1) une base de transactions, (2) chaque transaction est décrite
par un identifiant et une liste d’items
Trouver: toutes les règles qui expriment une corrélation entre la présence
d’un item avec la présence d’un ensemble d’items
Ex., 98% des personnes qui achètent des fraises achètent des pommes
règles d’associations
Mesures: Support et Confiance pour une règle du type : C R
Indice de confiance
Clients achetant les deux
Clients achetant IC = p(C,R) / p(C)
Lait Avec:
p(C,R) = nb (C = vrai et R = vrai) / nb total
p(C) = nb (C = vrai ) / nb total
On arrive à :
IC = nb (C = vrai et R = vrai) / nb (C = vrai )
Indice de Support
Clients achetant fromage IS = probabilité (condition)
IS = p(C)
ID Transaction Items Ou encore :
IS = nb (C = vrai ) / nb total
2000 A,B,C
1000 A,C Soit support minimum 50%, et confiance
minimum 50%,
4000 A,D A C (50%, 66.6%)
5000 B,E,F C A (50%, 100%)
règles d’associations
Extraction de règles
Transaction ID Items Min. support 50%
2000 A,B,C Min. confiance 50%
1000 A,C
4000 A,D Itemsets fréquentsSupport
{A} 75%
5000 B,E,F
{B} 50%
{C} 50%
{A,C} 50%
Pour A C:
support = support({A, C}) = 50%
confiance = support({A, C})/support({A}) = 66.6%
règles d’associations
Exemple
Le tableau suivant présente 10 tickets de caisse pour lesquels il y a eu, ou pas, achat de
pomme et de fraises.
PB = IC - p(R)
Une progression brute intéressante est > 0
règles d’associations
Les indicateurs d’évaluation d’une règle
Exemple
L’indice de confiance de la règle « pomme fraise » vaut : (4/10) / (5/10) soit 80%.
Donc, dans 80% des cas où il y a « pomme », on trouve aussi « fraise ».
Mais la probabilité des fraises vaut : (9/10) soit 90 %.
Le lift vaut : 80 / 90 = 8/9.
La progression brute vaut : 80 – 90 = -10%.
Lift < 1 et progression brute < 0 : la règle « pomme ® fraise » est donc sans
intérêt.
règles d’associations
Les indicateurs d’évaluation d’une règle
Règle inverse
Si une règle est inutile (le lift est < 1) alors, la règle inverse est utile :
si C R est inutile alors C non(R) est utile
Exemple
La capacité de déploiement
La capacité de déploiement, c’est le pourcentage de ceux qui vérifient les conditions mais
pas encore les résultats.
Autrement dit, c’est le pourcentage de la population qui est potentiellement concerné par
l’application de la règle.
Capacité de déploiement = p(C, non R)
Exemple :
On reprend le tableau précédent :
A la place des catégories de produit (nom des fruits), on pourrait s’intéresser à des types : fruits
exotiques, agrumes, etc.
règles d’associations
Algorithme a priori
Principe de l’algorithme
Pour trouver des règles d’association :
1. On commence par fixer une fréquence minimum pour la recherche : un seuil de fréquence.
2. On calcule la fréquence de chaque n-uplet de variables en partant des n-uplets à une seule
variable (singleton), puis en passant à 2, puis à 3, etc.
3. On réduit le problème en utilisant la propriété suivante :
Quel que soit le n-uplet de variables N et quelle que soit la variable V, la fréquence de N est
inférieure à celle de N U V (N union V).
On peut donc commencer par éliminer tous les singletons de fréquence inférieure au seuil, et
donc tous les n-uplets contenant ces singletons, puis tous les doublons de fréquence inférieure
au seuil, et donc tous les n-uplets contenant ces doublons, etc.
Cette technique permet de réduire considérablement l’ensemble des n-uplets de variables
pouvant être la condition d’une règle d’association.
règles d’associations
Algorithme a priori
Exemple
Matrice creuse de départ
On reprend le tableau des ventes de fruits en le complétant :
Tableau n°2 : fréquence et %age de fréquence par fruit. Singleton candidat pour les règles
d’association.
Il n’y a qu’un triplet qui ait la fréquence suffisante. C’est la condition d’arrêt de la fabrication des n-uplet candidats : quand on trouve 0 ou 1 n-uplet, on peut s’arrêter.
règles d’associations
Algorithme a priori
Principe de la constitution des règles
Rappelons que, pour la règle C R:
IC = p(C,R) / p(C) = f(C,R) / f(C)
IS = p(C) = f(C) / nb total
p( ) étant la probabilité et f( ) la fréquences ou nombre d’occurrences.
lift = IC / p(R) (un lift intéressant est > 1)
Progression Brute = IC - p(R) (une progression brute intéressante est > 0)
Capacité de déploiement = p(C, non R),
On commence par le lift car cet indicateur permet d’éliminer des règles.
règles d’associations
Algorithme a priori
Classement par lift
Les « lift » < 1 (ce qui équivaut à une progression brute négative) sont des règles sans intérêt.
Les 7 premières règles se résument à l’association : Citron – Pomme –
Orange. Il ne reste qu’une seule autre association : Raisin – Banane.
règles d’associations
Algorithme a priori
Classement par IC * IS
L’observation des capacités de développement montre que le triplet Citron – Pomme – Orange
est intéressant à déployer, tandis que le couple Raisin – Banane l’est moins.
règles d’associations
Algorithme a priori
Support et confiance ne sont pas toujours suffisants
Ex : Soient les 3 articles A, B et C