Professional Documents
Culture Documents
Philippe Leray
Philippe.Leray@insa-rouen.fr
as
Introduction
Objectif = structuration des donnes Clustering (en anglais) = Classication (en franais) On cherche regrouper les points proches en classes ... Les classes peuvent tre assez bien dnies
as
Introduction
Les classes peuvent aussi tre assez imbriques, avoir des formes bizarres, ou pire
as
Applications
Forme Text Mining Bioinformatique Marketing Web log analysis ... 1 Texte 1 Mail 1 gne {infos client, produits achets} Clickstream Cluster Textes proches "dossiers" automatiques gnes ressemblants segmentation de la clientle "utilisateurs types"
as
Plan
Notion de proximit Clustering hirarchique Clustering par partitionnement Clustering par modlisation Clustering bas sur la densit Clustering par "grille" ...
as
Notion de proximit
Vocabulaire Mesure de dissimilarit DM : plus la mesure est faible plus les points sont similaires ( distance) Mesure de similarit SM : plus la mesure est grande, plus les points sont similaires DM = borne SM
as
Notion de proximit
Comment mesurer la distance entre 2 points d(x1 , x2 ) ? distance euclidienne : d2 (x1 , x2 ) = i (x1i x2i )2 = (x1 x2 )(x1 x2 ) distance de Manhattan : d(x1 , x2 ) = i |x1i x2i | distance de Sebestyen : d2 (x1 , x2 ) = (x1 x2 )W (x1 x2 ) (W = matrice diagonale de pondration) distance de Mahalanobis : d2 (x1 , x2 ) = (x1 x2 )C 1 (x1 x2 ) (C=covariance) ...
Le Clustering en 3 leons p.7/65
as
Notion de proximit
Et si x1 et x2 sont valeurs discrtes ? On peut les rpresenter dans une matrice de contingence A(x1 , x2 ) = [aij ] x1 = [0, 1, 2, 1, 2, 1] et x1 = [1, 0, 2, 1, 0, 1] A(x1 , x2 ) = [0 1 2 ; 1 2 0; 1 0 1] distance de Hamming : nombre de places o les 2 vecteurs diffrent :
j=k1 j=k1
d(x1 , x2 ) =
i=0 j=0,j=i
aij
as
Notion de proximit
Comment mesurer la distance entre 2 classes D(C1 , C2 ) ? plus proche voisin : min(d(i, j), i C1 , j C2 ) diamtre maximum : max(d(i, j), i C1 , j C2 ) distance moyenne :
i,j
d(i,j) n1 n2
as
Bonne partition
Comment savoir si un regroupement est "correct" ? inertie (intra) dun cluster = variance des points dun mme cluster Jw =
g iCg
d2 (xi , g )
Ng d2 (g , x)
as
Bonne partition
g1
C1 C3 g3
C2 g g2 g g4 C4
as
Obtenir des classes cohrentes et contrastes Illustration (Bisson 2001) : Maximisation de linertie inter-classes
Minimisation de linertie intra-classes
Forte inertie inter-classes Faible inertie intra-classes
Bonne partition
= Iintra + Iinter
g1
g2 g4
Application de ce critre
Plan
Notion de proximit Clustering hirarchique Classication Hierarchique Ascendante BIRCH, CURE, Chameleon, ... Clustering par partitionnement Clustering par modlisation Clustering bas sur la densit Clustering par "grille"
as
...
Le Clustering en 3 leons p.13/65
CHA - principe
Chaque point ou cluster est progressivement "absorb" par le cluster le plus proche. Algorithme Initialisation : Chaque individu est plac dans son propre cluster, Calcul de la matrice de ressemblance M entre chaque couple de clusters (ici les points) Rpter Slection dans M des deux clusters les plus proches CI et CJ Fusion de CI et CJ par un cluster CG plus gnral Mise jour de M en calculant la ressemblance entre CG et les clusters existants Jusqu la fusion des 2 derniers clusters
Architecture des Systmes dInformation
as
C6 C3
Une mthode = comparaison des instance/classes existantes schma du milieu de dendrogramme = reprsentation des - Notion de ressemblance (distance) entre instances/classes fusions successives
Un critre de construction d'une nouvelle classe - On regroupe les deux instances/classes les hauteur dun cluster dans le dendrogramme = plus "proches" similarit ( Une procdure de caractrisation de cette classe) entre les 2 Gnralisation desfusion (sauf exception avec clusters avant descriptions -
as
CHA : mtrique
Problme = trouver lultramtrique (distance entre clusters) la plus proche de la mtrique utilise pour les individus. Saut minimal (single linkage) : tendance produire des classes gnrales (par effet de chanage) sensibilit aux individus bruits. Saut maximal (complete linkage) : tendance produire des classes spciques (on ne regroupe que des classes trs proches) sensibilit aux individus bruits. Saut moyen : tendance produire des classes de variance proche Barycentre : bonne rsistance au bruit
Le Clustering en 3 leons p.16/65
as
Saut minimal
1,1 0,9
Saut maximal i
4,0 2,8 1,7 0,5
D C
E
2
F B A
0,7 0,5
Tendance produire des classes gnrales (par effet de chanage) et sensibilit aux individus bruits. Tendance produire des classes spcifiques (on ne regroupe que des classes trs proches) et sensibilit aux individus bruits. Tendance produire des classes de variance proche Bonne rsistance au bruit Tendance construire des classes ayant des effectifs gaux pour un niveau de la hirarchie donn (limite la perte dinertie)
as
Problme de la classification hirarchique : trouver lultramtrique la plus proche de la mtrique qui est utilise pour comparer les individus.
Le Clustering en 3 leons p.17/65
as
CHAM
RABA
BARO
CORD
BOND
CAMP
GREM
WAAG
OHAN
CAPR
BONV
TRAO
FOUR
HAUT
JEAN
RABI
BOIT
CAST
WEYC
as
Pas moyen de faire de sous-groupes, tout le monde est une distance de 0 ou 1 des autres clusters.
PESQ
LEHO
SPER
PERS
GESL
ZEHN
LEDI
GREM
WAAG
CHAM
BARO
CORD
CAMP
OHAN
RABA
RABI
BOND
CAPR
FOUR
TRAO
BONV
HAUT
JEAN
CAST
ZEHN
BOIT
WEYC
LEHO
PERS
GESL
as
PESQ
SPER
LEDI
vive la vision
rpmbuild ba kernel*.spec
GREM
WAAG
CHAM
BARO
CORD
CAMP
OHAN
RABA
RABI
BOND
CAPR
FOUR
TRAO
BONV
HAUT
JEAN
CAST
ZEHN
BOIT
WEYC
LEHO
PERS
GESL
as
PESQ
SPER
LEDI
as
1 4 17 26 6 20 24 3 25 13 21 7 2 8 22 5 14 18 10 16 11 23 9 19 12 15 27 35 40 29 28 36 31 32 39 30 33 34 37 38
as
1 4 17 26 6 20 24 3 25 13 21 7 2 8 22 5 14 18 10 16 11 23 9 19 12 15 27 35 40 29 28 36 31 32 39 30 33 34 37 38
cluster 7
cluster 8
tape suivante :
as
CHAMELEON
Une mthode de classication hirarchique ascendante plus volue Principe = estimer la densit intra-cluster et inter-cluster partir du graphe des k plus proches voisins
donnes
graphe 1-ppv
2-ppv
3-ppv
as
of sparse regions tend to be small. As the consequence, a min-cut bisection of the graph represents the interface layer
of sparse region of the graph. Finally, G k provides a computational advantage over a full graph in many algorithms
Le Clustering en 3 leons p.25/65
as
as
CHAMELEON : algorithme
Deux phases trouver des sous-clusters initiaux en partitionnant le graphe k-ppv en m partitions "solides" (ou la distance entre les points est minimise) fusionner dynamiquement les sous-clusters en fonction de RI(Ci , Cj ) et RC(Ci , Cj )
as
CHAMELEON : rsultats
DS1 DS2
DS3
DS4
as
DS5
Figure 10: The clusters discovered by C HAMELEON for the ve data sets.
Complexit
Classication Hierarchique Ascendante : O(n3 ) Certaines variantes de CHA CURE : O(n2 ) en petite dim., O(n2 + nm log n) sinon (en commenant avec m clusters) CHAMELEON : graphe k-ppv : O(n log n) en petite dim. sinon O(n2 ) clustering : O(nm + n log n + m2 log m)
as
as
Plan
Notion de proximit Clustering hirarchique Clustering par partitionnement K-Means, Nues dynamiques CLARA, ... Clustering par modlisation Clustering bas sur la densit Clustering par "grille"
as
...
Le Clustering en 3 leons p.32/65
K-Means : principe
(Forgy 1965, MacQueen 1967) rpartir les N points en K ensembles disjoints regrouper les points proches problme de minimisation :
K
J=
g=1 iCg
d2 (xi , g )
as
K-Means : algorithme
Initialiser 1 , K Rpeter affectation de chaque point son cluster le plus proche C(xi ) = min d(xi , g )
g
as
K-Means : exemple
K=2 K=3
K=4
K=5
K=6
K=7
as
K-Means : exemple
K=2 K=3
K=4
K=5
K=6
K=7
as
K-Means : exemple
K=6
as
K-Means : exemple
K = 10
as
K-Means : exemple
K = 10
as
K-Means : initialisation
Initialisation des i : alatoirement dans lintervalle de dnition des xi alatoirement dans lensemble des xi Des initialisations diffrentes de peuvent mener des clusters diffrents (problmes de minima locaux) mthode gnrale pour obtenir des clusters "stables" = formes fortes on rpte lalgo r fois on regroupe ensemble les xi qui se retrouvent toujours dans les mmes clusters.
as
sifications et on cherche les formes fortes ujours plac(s) ensemble dans les partitions qqs les graines initiales) C1
x x x x x x x x x x
C 2 4 formes fortes
F1
x x
x x x
F2
x x
fications
x x x x x
x x x
x x
x x x
C 1
C2
F3
F4
as
K=3
K=3
K=3
K=3
as
Ni
F3 nest pas reprsentatif F1 , F1 , F4 et F5 sont les formes fortes on peut recalculer les clusters partir des centres des formes fortes
as
as
K-Means squentiels
Adaptation des k-means lorsque les exemples arrivent au fur et mesure Initialiser 1 , K Initialiser n1 , nK 0 Rpeter acqurir x affectation de chaque point son cluster le plus proche i = argming d(x, g ) incrmenter ni recalculer le centre i de ce cluster 1 i = i + (x i ) ni
Le Clustering en 3 leons p.45/65
as
as
Plan
Notion de proximit Clustering hirarchique Clustering par partitionnement Clustering par modlisation EM et Mlange de gaussiennes Cartes de Kohonen, AutoClass... Clustering bas sur la densit Clustering par "grille"
as
...
Le Clustering en 3 leons p.47/65
EM gaussien et K-Means
K-Means nest quune version simplie de lalgorithme EM EM gaussien = modlisation de chaque cluster par une loi normale (P (x|Cg ) suit une loi normale) Initialiser 1 , 1 K , K Rpeter affectation de chaque point son cluster le plus proche C(xi ) = max P (xi |C = Cg )
g
as
EM gaussien : exemple
K=6
as
EM gaussien : exemple
K = 10
as
EM gaussien : exemple
K = 10
as
Cartes Auto-organisatrices
Inspiration biologique : les neurones du cerveau (cortex) sont organiss en rgions correspondants des fonctions sensorielles diffrentes des stimuli proches vont activer des neurones du cortex qui sont eux aussi proches Notion de topologie et de carte du cortex
as
Cartes Auto-organisatrices
Principe (Kohonen, 1990) trouver une projection entre : lespace des donnes (grande dimension) lespace des reprsentations (dimension rduite)
as
Cartes Auto-organisatrices
Apprentissage comptitif : principe = encourager le neurone "vainqueur" les poids du neurone gagnant sont rapprochs du vecteur dentre exemple pour les cartes topologiques :
prsentation de lexemple xk choix du neurone gagnant i tel que xk Wi = min x k Wi
as
Cartes Auto-organisatrices
Avantages : lespace de sortie est un espace de reprsentations on peut visualiser les sorties de la carte on peut reprsenter des donnes de grande dimension ACP non-linaire Inconvnients : temps de convergence pas de preuve de convergence en multidimensionnel pas dunicit de la reprsentation
as
Cartes Auto-organisatrices
Exemple : Websom reprsentation de documents issus du Web (http ://websom.hut.) projection du contenu de 7 millions de msgs de 83 newsgroups sur une SOM les textes ressemblants se regroupent dans des endroits proches de la carte la couleur traduit le nb de textes projets dans chaque zone possibilit de recherche libre (projection de la requte sur la carte)
as
as
as
as
as
as
as
as
Plan
Notion de proximit Clustering hirarchique Clustering par partitionnement Clustering par modlisation Clustering bas sur la densit : DBSCAN, OPTICS, CLIQUE , ... Clustering par "grille" : STING, WaveCluster, ...
as
Rfrences
Pattern Recognition, S. Theodoridis & K. Koutroumbas, Academic Press, 1999 (ch. 11 16) Survey of Clustering Data Mining Techniques, Pavel Berkhin, http ://www.accrue.com/products/rp_cluster_review.pdf Clustering, R.Duda, http ://www.engr.sjsu.edu/knapp/HCIRDFSC/C/C_home.htm Data Clustering and Pattern Recognition Toolbox, http ://neural.cs.nthu.edu.tw/jang/matlab/toolbox/DCPR/ SOM toolbox (cartes de Kohonen), http ://www.cis.hut./projects/somtoolbox/
Architecture des Systmes dInformation
as