Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
80/223
J-P Comet
Comprendre la notion d’apprentissage NON supervisé
Introduction Le lier à la notion de Découverte de Structures
Arbres
Clustering
Connaı̂tre des algorithmes de regroupement
Objectifs
Partitionnement Hiérarchiques et leur représentation graphique : dendrogramme
K-means
GMM par Optimisation type K-Means, ISODATA
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Comprendre que la notion de Similitude liée à la vaste notion mathématique
Résumé de Distance est subjective mais centrale dans cette problématique
kNN
Savoir construire un espace de mesure multi-dimensionnelle et définir une
Bayes
mesure de similarité dans cette espace
SVM
NN Savoir choisir l’algorithme à utiliser en fonction des données en entrée
Évaluation
Principes
Déroulement
d’un projet de Contexte non supervisé
Data Mining “Révéler” l’organisation de motifs en groupes cohérents
Processus Subjectif
Disciplines : Biologie, Zoologie, Psychiatrie, Sociologie, Géologie,
Géographie...
Synonymes : Apprentissage non supervisé, Taxonomie, Typologie, Partition
81/223
Qu’est-ce que le clustering ?
Data Mining
J-P Comet
Introduction
Arbres Groupe ou Cluster : un ensemble d’objets ou d’individus
Clustering
Objectifs
Semblables entre eux à l’intérieur d’un groupe
Partitionnement Différents d’un groupe à l’autre
K-means
GMM
Hiérarchiques Segmentation ou Cluster analysis
Algorithmes-densité
DBSCAN + OPTICS
Classement des individus ou objets dans différents groupes ou segments
Résumé
kNN
Le clustering est une technique non dirigée (c-à-d. il n’y a pas de variable
Bayes
target )
SVM Quelques applications :
NN
Reconnaissance de forme non supervisée
Évaluation
Taxonomie (biologie, zoologie)
Déroulement
d’un projet de Segmentation des marchés (marketing)
Data Mining Geo-segmentation
WWW : classification des sites / des Weblog pour découvrir des
profils d’accès semblables...
82/223
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM Un bon algorithme de classification fera en sorte qu’il y aura une :
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
petite variabilité intra-classe (c-à-d petite distance entre les individus
Résumé d’un même groupe)
kNN grande variabilité inter-classe (c-à-d grande distance entre les
Bayes individus de groupes différents)
SVM
NN
La qualité des résultats de la classification dépendra de la mesure de
Évaluation distance utilisée et de l’algorithme choisi pour l’implanter.
Déroulement
d’un projet de
Data Mining
83/223
Segmentation floue vs précise
Data Mining
Hard Clustering
J-P Comet
Soit X = {x1 , ..., xn }
Introduction On appelle m-clustering de X la partition de X en m ensembles (clusters)
Arbres C1 , ...Cm tels que :
Clustering 1 Ci 6= ∅,
Objectifs i = 1, ...m
Partitionnement n
K-means
GMM
2 ∪ Ci = X
Hiérarchiques
i=1
Algorithmes-densité 3 Ci ∩ Ci = ∅, i 6= j, i, j = 1, ...m
DBSCAN + OPTICS
Résumé
kNN
Bayes Fuzzy Clustering - Zadeh (1965)
SVM
NN Soit X = {x1 , ..., xn }
Évaluation On appelle m-clustering flou de X en m clusters est caractérisé par m
Déroulement fonctions d’appartenance uj avec :
d’un projet de
1 uj : X → [0, 1], j = 1, ..., m
Data Mining
m
X
2 uj (xi ) = 1, i = 1, ..., N
j=1
N
X
3 0< uj (xi ) < N, j = 1, ..., m
i=1
84/223
Approches de Clustering
Data Mining
J-P Comet
Introduction
Arbres Algorithmes de Partitionnement : Construire plusieurs partitions puis les
Clustering
Objectifs évaluer selon certains critères
Partitionnement
K-means
GMM
Algorithmes hiérarchiques : Créer une décomposition hiérarchique des
Hiérarchiques
Algorithmes-densité
objets selon certains critères
DBSCAN + OPTICS
Résumé Algorithmes basés sur la densité : basés sur des notions de connectivité et
kNN de densité
Bayes
SVM
Caractéristiques :
NN
Évaluation Extensibilité
Déroulement Capacité à traiter différents types de données
d’un projet de Découverte de clusters de différents formes
Data Mining
Connaissances requises (paramètres de l’algorithme)
Capacité à traiter les données bruitées et isolées.
85/223
Algorithmes à partitionnement
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means Construire une partition à k clusters d’une base D de n objets
GMM
Hiérarchiques
Algorithmes-densité Les k clusters doivent optimiser le critère choisi
DBSCAN + OPTICS
Résumé Global optimal : Considérer toutes les k-partitions
kNN Heuristic methods : Algorithmes k-means et k-medoids
Bayes k-means (MacQueen’67) : Chaque cluster est représenté par son
SVM centre
NN k-medoids or PAM (Partition Around Medoids) (Kaufman &
Évaluation
Rousseeuw’87) : Chaque cluster est représenté par un de ses objets
Déroulement
d’un projet de
Data Mining
86/223
k-means / k-Meloids
Data Mining
J-P Comet
k-means k-meloids
Introduction Algorithme en 4 étapes : Algorithme en 4 étapes :
Arbres 1 Choisir k objets formant ainsi k 1 Choisir k objets formant ainsi k
Clustering
Objectifs clusters clusters
Partitionnement
K-means
GMM
2 (Ré)affecter chaque objet O au 2 (Ré)affecter chaque objet O au
Hiérarchiques
Algorithmes-densité
cluster Ci de centre Mi tel que cluster Ci de centre Mi tel que
DBSCAN + OPTICS dist(O, Mi ) est minimale dist(O, Mi ) est minimale
Résumé
87/223
K-Means : Exemple
Data Mining A = {1, 2, 3, 6, 7, 8, 13, 15, 17}. Créer 3 clusters à partir de A
J-P Comet On prend 3 objets au hasard : 1, 2 et 3.
⇒ C1 = {1}, M1 = 1, C2 = {2}, M2 = 2, C3 = {3} et M3 = 3
Introduction Chaque objet O est affecté au cluster au milieu duquel, O est le plus proche.
Arbres ⇒ C1 = {1}, M1 = 1
Clustering ⇒ C2 = {2}, M2 = 2
Objectifs
Partitionnement
K-means
⇒ C3 = {3, 6, 7, 8, 13, 15, 17}, M3 = 69/7 = 9.86
GMM
Hiérarchiques dist(3, M2 ) < dist(3, M3 ) ⇒ 3 passe dans C2 .
Algorithmes-densité
DBSCAN + OPTICS Tous les autres objets ne bougent pas.
Résumé
C1 = {1}, M1 = 1, C2 = {2, 3}, M2 = 2.5,
kNN C3 = {6, 7, 8, 13, 15, 17}, M3 = 66/6 = 11
Bayes
SVM
dist(6, M2 ) < dist(6, M3 ) ⇒ 6 passe dans C2 .
NN
Tous les autres objets ne bougent pas.
Évaluation C1 = {1}, M1 = 1, C2 = {2, 3, 6}, M2 = 11/3 = 3.67,
Déroulement C3 = {7, 8, 13, 15, 17}, M3 = 12
d’un projet de dist(2, M1 ) < dist(2, M2 ) ⇒ 2 passe en C1 .
Data Mining
dist(7, M2 ) < dist(7, M3 ) ⇒ 7 passe en C2 . Les autres ne bougent pas.
C1 = {1, 2}, M1 = 1.5, C2 = {3, 6, 7}, M2 = 5.34,
C3 = {8, 13, 15, 17}, M3 = 13.25
dist(3, M1 ) < dist(3, M2 ) ⇒ 3 passe en 1.
dist(8, M2 ) < dist(8, M3 ) ⇒ 8 passe en 2.
C1 = {1, 2, 3}, M1 = 2, C2 = {6, 7, 8}, M2 = 7,
C3 = {13, 15, 17}, M3 = 15
Plus rien ne bouge
88/223
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
89/223
k-means : illustration (2)
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
89/223
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
89/223
Commentaires sur la méthode des K-Means
Data Mining
J-P Comet
Introduction
Arbres Force
Clustering
Objectifs
Relativement extensible dans le traitement d’ensembles de taille importante
Partitionnement
K-means Relativement efficace : O(t.k.n), où n représente le nb objets, k le nb de
GMM
Hiérarchiques clusters, et t le nb d’iterations. Normalement, k, t << n.
Algorithmes-densité
DBSCAN + OPTICS
Résumé
Faiblesses
kNN N’est pas applicable en présence d’attributs où la moyenne n’est pas définie
Bayes
On doit spécifier k (nombre de clusters)
SVM
NN Incapable de traiter des données bruitées
Évaluation Les clusters sont construits par rapports à des objets inexistants (les
Déroulement
d’un projet de
moyennes)
Data Mining Ne peut pas découvrir les groupes non-convexes
Les outliers sont mal gérés.
90/223
J-P Comet
Choisir arb itrairem ent k medoides
Introduction Répéter
Arbres affecter chaque objet restant au medoide le plus proche
Clustering
Objectifs Choisir aléatoirement un non - medoide Oh
Partitionnement
K-means Pour chaque medoide Oj
GMM
Hiérarchiques Calculer le coût TCjh du remplacement de Oj par Oh
Algorithmes-densité
DBSCAN + OPTICS
Si TCjh < 0 alors
Résumé
Remplacer Oj par Oh
kNN Calculer les nouveaux clusters
Bayes
Finsi
SVM
FinPour
NN
Évaluation
Jusqu ’ à ce ce qu ’ il n y ait plus de changement
Déroulement
d’un projet de TCjh représente le gain en distance globale que l’on va avoir en remplaçant
Data Mining
h par j
Si TCjh est négatif alors on va perdre en distance.
autrement dit, les clusters seront plus compacts.
P P
TCjh = i
dist(i, h) − dist(j, i) = i
Cijh
91/223
La méthode des K-Medoids : Exemple
Data Mining
J-P Comet
Introduction
Arbres Soit A = {1, 3, 4, 5, 8, 9}, k = 2 et M = {1, 8} ensemble des médoides
Clustering
Objectifs
C1 = {1, 3, 4} et C2 = {5, 8, 9}.
Partitionnement
K-means
E{1,8} = dist(3, 1)2 + dist(4, 1)2 + dist(5, 8)2 + dist(9, 8)2 = 23
GMM
Hiérarchiques Comparons 1 et 3 : M = {3, 8},
Algorithmes-densité
DBSCAN + OPTICS C1 = {1, 3, 4, 5} et C2 = {8, 9}
Résumé
E{3,8} = dist(1, 3)2 + dist(4, 3)2 + dist(5, 3)2 + dist(9, 8)2 = 10
kNN
TC1,3 = E{3,8} − E{1,8} = −13 < 0
Bayes
⇒ le remplacement est fait.
SVM
NN Comparons 3 et 4 : M = {4, 8},
Évaluation C1 et C2 inchangés et
Déroulement E{4,8} = dist(1, 4)2 + dist(3, 4)2 + dist(5, 4)2 + dist(8, 9)2 = 12
d’un projet de
Data Mining
⇒ 3 n’est pas remplacé par 4
Comparons 3 et 5 : M = {5, 8},
C1 et C2 inchangés et E{5,8} > E{3,8}
92/223
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM Sélection des centres initiaux
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Calcul des similarités
Résumé
Calcul des centres (K-medoids : [Kaufman & Rousseeuw’87])
kNN
Bayes GMM : Variantes de K-moyennes basées sur les probabilités
SVM K-modes : données catégorielles [Huang’98]
NN
Évaluation K-prototype : données mixtes (numériques et catégorielles)
Déroulement
d’un projet de
Data Mining
93/223
Gaussian Mixture Model
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
94/223
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
94/223
95/223
Gaussian Mixture Model : EM algorithm
Data Mining
J-P Comet
Introduction
Arbres
Algorithme des k-means :
Clustering 1 initialiser les µk
Objectifs
Partitionnement
K-means
2 étape Estimation : assigner chaque point à un cluster
GMM
Hiérarchiques 3 étape Maximisation : étant donnés les clusters, modifier les µk
Algorithmes-densité
DBSCAN + OPTICS
Résumé
4 alterner étapes 2 et 3 jusqu’à stabilisation
kNN
Bayes Algorithme EM (Expectation-Maximisation) pour les GMM :
SVM 1 initialiser les µk , Σk et les coeff πk
NN
Évaluation 2 étape Estimation : assigner à chaque point Xi un vecteur de score γi,k (k
Déroulement parcourant les modèles gaussiens)
d’un projet de
Data Mining
3 étape Maximisation : étant donnés les scores, ajuster les µk , Σk et πk
4 Calculer la vraissemblance puis alterner étapes 2 et 3 jusqu’à convergence
de la vraissemblance
96/223
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
97/223
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
97/223
Gaussian Mixture Model
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
97/223
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
97/223
Gaussian Mixture Model
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
97/223
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
97/223
Approches de Clustering
Data Mining
J-P Comet
Introduction
Arbres Algorithmes de Partitionnement : Construire plusieurs partitions puis les
Clustering évaluer selon certains critères
Objectifs
Partitionnement
K-means
Algorithmes hiérarchiques : Créer une décomposition hiérarchique des
GMM
Hiérarchiques
objets selon certains critères
Algorithmes-densité
DBSCAN + OPTICS Algorithmes basés sur la densité : basés sur des notions de connectivité et
Résumé
de densité
kNN
Bayes
SVM caractéristiques :
NN Une méthode hiérarchique : construit une hiérarchie de clusters, non
Évaluation
seulement une partition unique des objets.
Déroulement
d’un projet de
Le nombre de clusters k n’est pas exigé comme donnée
Data Mining Utilise une matrice de distances comme critère de clustering
Une condition de terminaison peut être utilisée (ex. Nombre de
clusters)
98/223
Dendogramme
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Résultat : Graphe hiérarchique qui peut être coupé à un niveau de
Évaluation
Déroulement
dissimilarité pour former une partition.
d’un projet de La hiérarchie de clusters est représentée comme un arbre de clusters, appelé
Data Mining
dendrogramme
Les feuilles de l’arbre représentent les objets
Les nœuds intermédiaires de l’arbre représentent les clusters
99/223
Distances entre clusters
Data Mining
J-P Comet
Introduction
Arbres
Distance entre les centres des clusters (Centroid Method)
Clustering
Objectifs
Partitionnement Distance minimale entre toutes les paires de données des 2 clusters (Single
K-means
GMM Link Method)
Hiérarchiques
Algorithmes-densité
d(i, j) = minx ∈Ci ,y ∈Cj {d(x , y )}
DBSCAN + OPTICS
Résumé
Distance maximale entre toutes les paires de données des 2 clusters
kNN
(Complete Link Method)
Bayes
SVM
NN d(i, j) = maxx ∈Ci ,y ∈Cj {d(x , y )}
Évaluation
Déroulement Distance moyenne entre toutes la paires d’enregistrements (Average
d’un projet de
Data Mining Linkage)
d(i, j) = avgx ∈Ci ,y ∈Cj {d(x , y )}
100/223
+ et -
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement Avantages :
K-means
GMM Conceptuellement simple
Hiérarchiques
Algorithmes-densité Propriétés théoriques sont bien connues
DBSCAN + OPTICS
Résumé Quand les clusters sont groupés, la décision est définitive ⇒ le
kNN nombre d’alternatives différentes à examiner est réduit
Bayes Inconvénients :
SVM
NN
Groupement de clusters est définitif ⇒ décisions erronées sont
Évaluation impossibles à modifier ultérieurement
Déroulement Méthodes non extensibles pour des ensembles de données de grandes
d’un projet de tailles
Data Mining
101/223
Approches de Clustering
Data Mining
J-P Comet
Introduction
Algorithmes de Partitionnement : Construire plusieurs partitions puis les
Arbres évaluer selon certains critères
Clustering
Objectifs
Algorithmes hiérarchiques : Créer une décomposition hiérarchique des
Partitionnement
K-means
objets selon certains critères
GMM
Hiérarchiques Algorithmes basés sur la densité : basés sur des notions de connectivité et
Algorithmes-densité
DBSCAN + OPTICS de densité
Résumé
kNN
Bayes
SVM
NN
Évaluation Pour ce types de problèmes, l’utilisation
Déroulement de mesures de similarité (distance) est
d’un projet de moins efficace que l’utilisation de densité
Data Mining
de voisinage.
102/223
J-P Comet
Introduction
Voit les clusters comme des régions denses séparées par des régions qui le
Arbres
Clustering
sont moins (bruit)
Objectifs
Partitionnement Deux paramètres :
K-means
GMM ε : Rayon maximum du voisinage
Hiérarchiques
Algorithmes-densité MinPts : Nombre minimum de points dans le ε-voisinage d’un point
DBSCAN + OPTICS
Résumé
Voisinage : Vε (p) = {q ∈ D|dist(p, q) ≤ ε}
kNN
Bayes Un point p est directement densité-accessible à partir de q resp. à
SVM ε, MinPts si
NN p ∈ Vε (q)
Évaluation |Vε(q) | ≥ MinPts
Déroulement
d’un projet de
Data Mining
103/223
Clustering basé sur la densité
Data Mining
J-P Comet
Introduction
Arbres Accessibilité :
Clustering
Objectifs p est accessible à partir de q
Partitionnement
K-means resp. à ε, MinPts s’il existe
GMM
Hiérarchiques p1 , ..., pn , p1 = q, pn = p t.q. pi+1
Algorithmes-densité
DBSCAN + OPTICS
est directement densité-accessible
Résumé
à partir de pi
kNN
Bayes
SVM
NN
Évaluation Connexité :
Déroulement p est connecté à q resp. à
d’un projet de ε, MinPts s’il existe un point o
Data Mining
t.q. p et q accessibles à partir de
o resp. à ε, MinPts.
104/223
DBSCAN
Data Mining
Density Based Spatial Clustering
J-P Comet
of Applications with Noise
Introduction Un cluster est l’ensemble
Arbres maximal de points connectés
Clustering Découvre des clusters non
Objectifs
Partitionnement
K-means
nécessairement convexes
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS Algorithme
Résumé
DBSCAN (D , eps , MinPts )
kNN
C = 0
Bayes pour chaque point P non visité des données D
SVM marquer P comme visité
NN PtsVoisins = e p s i l o n V o i s i n a g e (D , P , eps )
Évaluation si tailleDe ( PtsVoisins ) < MinPts
marquer P comme BRUIT
Déroulement sinon
d’un projet de C ++
Data Mining ete ndreC lust er (D , P , PtsVoisins , C , eps , MinPts )
Comparaisons
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
106/223
OPTICS : Ordering Points to identify the clustering structure[1999]
Data Mining
Extension de DBSCAN
J-P Comet
ε est optionnel. S’il est omis, il sera alors considéré comme infini.
Introduction L’algorithme définit pour chaque point une distance, appelée core-distance,
Arbres qui décrit la distance avec le MinPts ième point le plus proche :
Clustering
Objectifs
Partitionnement
K-means core-distanceε,MinPts (p) =
GMM
Hiérarchiques
Algorithmes-densité Indéfini si |Vε (p)| < MinPts
DBSCAN + OPTICS (1)
Résumé distance au MinPts-ème pt le + proche sinon
kNN
Bayes
SVM
⇒ plus petite distance rendant le point central dense (minε )
NN
Évaluation La reachability-distance du point p à un autre point o est le max entre la
Déroulement distance entre o et p, et la core-distance de p :
d’un projet de
Data Mining
reachability-distanceε,MinPts (o, p) =
Indéfini si |Vε (p)| < MinPts
(2)
max(core-distanceε,MinPts (p), distance(p, o)) sinon
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation La reachability-distance du point p à un autre point o est le max entre la
Déroulement distance entre o et p, et la core-distance de p :
d’un projet de
Data Mining
reachability-distanceε,MinPts (o, p) =
Indéfini si |Vε (p)| < MinPts
(1)
max(core-distanceε,MinPts (p), distance(p, o)) sinon
J-P Comet
108/223
OPTICS : algo
Data Mining
J-P Comet
Introduction
Arbres
commencer avec un individu arbitraire p
Clustering
Objectifs
Partitionnement
Calculer Vε (p) et core-distance(p),
K-means
GMM
reachability-distance(p) =UNDEFINED
Hiérarchiques
Algorithmes-densité sortir l’individu p
DBSCAN + OPTICS
Résumé
si p n’est pas un individu-centre :
kNN passer à l’individu d’après (soit dans Seeds, soit dans la BD)
Bayes
SVM si p est un individu-centre :
NN pour chaque objet q de Vε (p) :
Évaluation
mettre à jour reachability-distance(p)
Déroulement
d’un projet de insérer q dans Seeds si q n’a pas été traité
Data Mining L’itération continue tant que il reste des éléments dans BD et que Seeds
n’est pas vide.
109/223
OPTICS : pseudo-code (1/3)
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means OPTICS ( setOfObjects , e , MinPts , OrderedFile )
GMM
Hiérarchiques OrderedFile . open ()
Algorithmes-densité
DBSCAN + OPTICS
Résumé
For i from 1 to SetOfObfects . size () Do :
kNN Obj = SetOfObjects . get ( i )
Bayes if not obj . processed then
SVM ExpandClusterOrder ( SetOfObjects ,
NN
Évaluation
obj ,e , MinPts , OrderedFile )
Déroulement OrderedFile . close ()
d’un projet de
Data Mining
110/223
J-P Comet
E x p a n d C l u s t e r O r d e r ( SetOfObjects , obj ,e , MinPts , Ordere dFile )
Introduction neighbors = SetOfObjects . neighbors ( obj , e )
Arbres
obj . processed = TRUE
Clustering
Objectifs obj . reachDist = UNDEFINED
Partitionnement
K-means obj . se tC o re Di st a nc e ( neighbrs ,e , MinPts )
GMM
Hiérarchiques OrderedFile . write ( obj )
Algorithmes-densité
DBSCAN + OPTICS if obj . coreDist <> UNDEFINED then ( obj est un " centre ")
Résumé
Seeds . update ( neighbors , obj )
kNN
While not Seeds . empty () do :
Bayes
currentObj = Seeds . next ()
SVM
NN
neighbors = SetOfObjects . neighbors ( currentObj , e )
Évaluation currentObj . processed = TRUE
Déroulement currentObj . s et C or eD is t an ce ( neighbrs ,e , MinPts )
d’un projet de OrderedFile . write ( currentObj )
Data Mining
if currentObj . coreDist <> UNDEFINED then
Seeds . update ( neighbors , currentObj )
Obj est implement écrit dans le fichier OrderedFile avec ses core-distance et
reachability-distance
111/223
OPTICS : pseudo-code (3/3)
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Seeds :: update ( neighbors , centerObj ):
Objectifs
Partitionnement
c_dist = centerObj . coreDist
K-means
GMM for all obj from neighbors Do :
Hiérarchiques
Algorithmes-densité if not obj . processed then :
DBSCAN + OPTICS
Résumé new_r_dist = max ( c_dist , centerObj . dist ( obj ))
kNN if obj . reachDist = UNDEFINED then :
Bayes
SVM
obj . reachDist = new_r_dist
NN insert ( obj , new_r_dist )
Évaluation else : // obj est déjà dans Seeds
Déroulement if new_r_dist < obj . reachDist then
d’un projet de
Data Mining obj . reachDist = new_r_dist
decrease ( obj , new_r_dist )
112/223
J-P Comet
Introduction
Arbres
Clustering
Objectifs
précondition ε′ ≤ ε (utilisé avant)
Partitionnement
K-means on n’a pas encore trouvé de cluster, donc au début, ClusterID = NOISE
GMM
Hiérarchiques
Algorithmes-densité
Pour tout Obj de la liste triée (pris dans l’ordre) :
DBSCAN + OPTICS
Résumé Si Obj.reachDist> ε′ : // UNDEF> ε
kNN Si Obj.coreDist≤ ε′ :
Bayes ClusterID = nextID(ClusterID) // un cluster trouvé
SVM Obj.clusterID = ClusterID
NN Sinon
Évaluation
Obj.clusterID = NOISE
Déroulement
d’un projet de Sinon
Data Mining Obj.clusterID = ClusterID
113/223
OPTICS : Exemple
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
114/223
OPTICS : Exemple
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
114/223
OPTICS : Exemple
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
114/223
OPTICS : Exemple
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
114/223
OPTICS : Exemple
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
114/223
OPTICS : Exemple
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
114/223
OPTICS : Exemple
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
114/223
OPTICS : Exemple
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
114/223
OPTICS : illustration
Data Mining
J-P Comet
Introduction
Arbres
Clustering
Objectifs
Partitionnement
K-means
GMM
Hiérarchiques
Algorithmes-densité
DBSCAN + OPTICS
Résumé
kNN
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining La sortie de l’algorithme : liste ordonnée de point associés à leur plus petite
reachability-distance.
⇒ diagramme appelé reachability-plot :
- axe x : position d’un point dans la liste ordonnée
- axe y la reachability-distance associée
Les points d’un même cluster ont une reachability-distance assez basse, les vallées
du diagramme représentent donc les différents clusters du jeu de données. Plus les
vallées sont profondes, plus les clusters sont denses.
115/223
Résumé
Data Mining
Le clustering groupe des objets en se basant sur leurs similarités.
J-P Comet Le clustering possède plusieurs applications.
La mesure de similarité peut être calculée pour différents types de données.
Introduction
Arbres
La sélection de la mesure de similarité dépend des données utilisées et le
Clustering
type de similarité recherchée.
Objectifs
Partitionnement Les méthodes de clustering peuvent être classées en :
K-means
GMM Méthodes de partitionnement,
Hiérarchiques
Algorithmes-densité Méthodes hiérarchiques,
DBSCAN + OPTICS
Résumé Méthodes à densité de voisinage
kNN Méthodes par grilles
Bayes Méthodes mixtes, ...
SVM Plusieurs travaux de recherche sur le clustering en cours...
NN
Passage à l’échelle : échantillonnage, optimisation, indexation,
Évaluation
Déroulement
mixages, ...
d’un projet de Prise en compte de contraintes : connaissances utilisateur ou données
Data Mining / objectifs utilisateur
Applications en perspective : Génomique, Environnement, ... Tout...
Évaluation des clusters : Que signifie un “bon” cluster ?
intra-clusters : haut degré de similarité
Utilisation de la variance 1 ⇒ les clusters avec la variance la plus
petite sont bons.
La taille du cluster est aussi importante, donc une approche
alternative est d’utiliser la variance pondérée 2
116/223
k Nearest Neighbours
Data Mining
J-P Comet
Introduction
Arbres
Clustering
kNN
Généralités
Algorithme
Bayes
SVM
NN
Évaluation
Déroulement
d’un projet de
Data Mining
117/223
J-P Comet
Principe intuitif de l’algorithme des plus proches voisins (k nearest
Introduction neighbors) :
Arbres 1 on stocke les exemples tels quels dans une table ;
Clustering
2 pour prédire la classe d’une donnée, on détermine les exemples qui en
kNN
Généralités sont le plus proche ;
Algorithme
3 de ces exemples, on déduit la classe ou on estime l’attribut manquant
Bayes
SVM
de la donnée considérée.
NN Mesure de la dissimilarité entre deux données distance.
Évaluation Mathématiquement parlant, une distance d est une application définie par :
Déroulement
d’un projet de
Data Mining d : D×D → R+
(x , y ) → d(x , y )
118/223
Les distance les plus usuelles
Data Mining Les distances les plus classiques sont issues des normes de Minkowski. Elles
J-P Comet concernent des données dont les attributs sont quantitatifs. Les plus
classiques sont :
qP
Introduction D
Arbres
1 distance euclidienne : δ(xi , xj ) = (x
k=1 i,k
− xj,k )2
Clustering sensible aux valeurs éloignées de la moyenne / continument dérivable.
kNN PD
Généralités 2 distance de Manhattan : δ(xi , xj ) = |x − xj,k |
k=1 i,k
Algorithme
Beaucoup moins sensible aux valeurs éloignées de la moyenne / pas
Bayes
SVM
dérivable en 0 ;
NN
3 la distance maximale : δ(xi , xj ) = maxk∈{1,...,D} |xi,k − xj,k |.
Évaluation Cette mesure est simplement le plus grand écart entre xi et xj .
Déroulement
d’un projet de
Data Mining
Dissimilarité.
Utiliser une distance n’est pas si simple que cela
imposer l’inégalité triangulaire est souvent problématique.
On se contente alors d’une dissimilarité : application qui associe un
réel positif à un couple de données et qui vérifie les deux propriétés
de non dégénérescence et symétrie.
Ces deux propriétés sont assez faciles à respecter, même pour des
attributs non quantitatifs.
119/223
Bayes ai − min(ai )
SVM aˆi = ∈ [0, 1]
max (ai ) − min(ai )
NN
Évaluation
Déroulement lorsque certains attributs sont plus importants que d’autres, on peut
d’un projet de donc pondérer les attributs en fonction de leur importance.
Data Mining
Attribut nominal et attribut ordinal.
La dissimilarité est généralement définie par :
=0 si la valeur de l’attribut est la même,
=1 sinon.
cette définition n’est pas adaptée pour les attributs ordinaux.
Ex : l’attribut ”couleur” ∈ {rouge, jaune, rose, vert, bleu, turquoise}.
la dissimilarité entre ”bleu” et ”rouge” est plus grande qu’entre
”rouge” et ”jaune”.
Valeur d’attribut manquante.
Si une valeur d’attribut est manquante dans une donnée, on considère
généralement que la dissimilarité pour cet attribut est maximale.
120/223
kNN : algorithme
Data Mining
J-P Comet
Algorithm 1:
Prédiction de la classe d’une donnée par la méthode des k plus
proches voisins
121/223