Vous êtes sur la page 1sur 76

Introduction Problmatiques Mthodes de clustering

Clustering
Gilles Gasso - Philippe LERAY
INSA Rouen - Dpartement ASI
Laboratoire LITIS
15 fvrier 2013
Gilles Gasso - Philippe LERAY Clustering 1 / 76
Introduction Problmatiques Mthodes de clustering
Plan
Introduction
Problmatiques
Similarit et proximit
Qualit des clusters
Mthodes de clustering
CHA
Principe
Mtrique
Une variante du CHA : CHAMELEON
K-means
Principe
Algorithme
Variantes
Mlange de gaussiennes
Exemple : mlange de deux gaussiennes
Estimation de paramtres par max de la log-vraisemblance
Algorithme EM (Expectation-Maximization)
Gilles Gasso - Philippe LERAY Clustering 2 / 76
Introduction Problmatiques Mthodes de clustering
Introduction
Objectifs

D = {x
i
R
d
}
N
i =1
: ensemble de points dcrit par d attributs.

But : structuration des donnes en classes homognes


On cherche regrouper les points en clusters ou classes tels
que les donnes dun cluster soient les plus similaires possibles

Clustering apprentissage non supervis. Cest une technique


dexploration des donnes servant rsumer les informations
sur les donnes ou dterminer des liens entre les points.
Exemples de classes
Gilles Gasso - Philippe LERAY Clustering 3 / 76
Introduction Problmatiques Mthodes de clustering
Introduction
Domaines dapplication
Domaine Forme des donnes Clusters
Text mining Textes Textes proches
Mails Dossiers automatiques
Web mining Textes et images Pages web proches
BioInformatique Gnes Gnes ressemblants
Marketing Infos clients, Segmentation
produits achets de la clientle
Segmentation Images Zones homognes
dimages dans limage
Web log analysis Clickstream Prols utilisateurs
Gilles Gasso - Philippe LERAY Clustering 4 / 76
Introduction Problmatiques Mthodes de clustering Similarit et proximit Qualit des clusters
Problmatiques

Nature des observations : Donnes binaires, textuelles,


numriques, arbres, ... ?

Notion de similarit (ou de dissimilarit) entre observations

Dnition dun cluster

Evaluation de la validit dun cluster

Nombre de clusters pouvant tre identis dans les donnes

Quels algorithmes de clustering ?

Comparaison de dirents rsultats de clustering


Gilles Gasso - Philippe LERAY Clustering 5 / 76
Introduction Problmatiques Mthodes de clustering Similarit et proximit Qualit des clusters
Notions de similarit
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
Notations

Observation : x
i
R
d
avec x
i
=
_
x
i ,1
x
i ,2
x
i ,d
_

Gilles Gasso - Philippe LERAY Clustering 6 / 76


Introduction Problmatiques Mthodes de clustering Similarit et proximit Qualit des clusters
Notion de proximit
Mesure de la distance D(x
1
, x
2
) entre 2 points x
1
et x
2

Distance de Minkoswski : D(x


1
, x
2
) =
_

d
j =1
|x
1,j
x
2,j
|
q
_1
q

Distance Euclidienne correspond q = 2 :


D(x
1
, x
2
) =
_

d
j =1
(x
1,j
x
2,j
)
2
=
_
(x
1
x
2
)
t
(x
1
x
2
)

Distance de Manhattan (q = 1) :
D(x
1
, x
2
) =

d
j =1
|x
1,j
x
2,j
|

Distance de Sebestyen :
D
2
(x
1
, x
2
) = (x
1
x
2
)

W(x
1
x
2
)
(W= matrice diagonale de pondration dnie positive)

Distance de Mahalanobis :
D
2
(x
1
, x
2
) = (x
1
x
2
)

C
1
(x
1
x
2
)
(C=matrice de variance-covariance)
Gilles Gasso - Philippe LERAY Clustering 7 / 76
Introduction Problmatiques Mthodes de clustering Similarit et proximit Qualit des clusters
Notion de proximit
Mesure de la distance D(x
1
, x
2
) entre 2 points x
1
et x
2

valeurs discrtes

Utiliser une matrice de contingence A(x


1
, x
2
) = [a
ij
]

x
1
=
_
0 1 2 1 2 1
_

et x
2
=
_
1 0 2 1 0 1
_

A(x
1
, x
2
) =
_
_
0 1 0
1 2 0
1 0 1
_
_

Distance de Hamming : nombre de places o les 2 vecteurs


dirent :
D(x
1
, x
2
) =
d

i =1
d

j =1,j =i
a
ij

Distance de Tanimoto, ...


Gilles Gasso - Philippe LERAY Clustering 8 / 76
Introduction Problmatiques Mthodes de clustering Similarit et proximit Qualit des clusters
Notion de proximit
Mesure de la distance D(C
1
, C
2
) entre 2 classes C
1
et C
2

plus proche voisin :


D
min
(C
1
, C
2
) = min {D(x
i
, x
j
), x
i
C
1
, x
j
C
2
}

diamtre maximum :
D
max
(C
1
, C
2
) = max {D(x
i
, x
j
), x
i
C
1
, x
j
C
2
}

distance moyenne :
D
moy
(C
1
, C
2
) =

x
i
C
1

x
j
C
2
D(x
i
, x
j
)
n
1
n
2

distance des centres de gravit : D


cg
(C
1
, C
2
) = D(
1
,
2
)

distance de Ward : D
Ward
(C
1
, C
2
) =
_
n
1
n
2
n
1
+n
2
D(
1
,
2
)

...
Gilles Gasso - Philippe LERAY Clustering 9 / 76
Introduction Problmatiques Mthodes de clustering Similarit et proximit Qualit des clusters
Evaluation de la Qualit dun clustering
Inertie Intra-cluster

Chaque cluster C
k
est caractris par

Son centre de gravit :


k
=
1
N
k

i C
k
x
i
avec N
k
= card(C
k
)

Son inertie : J
k
=

i C
k
D
2
(x
i
,
k
)
Linertie dun cluster mesure la concentration des points du
cluster autour du centre de gravit. Plus cette inertie est faible,
plus petite est la dispersion des points autour de ce centre

Sa matrice de variance-covariance :

k
=

i C
k
(x
i

k
)(x
i

k
)

Remarque : on a la proprit suivante J


k
= trace(
k
). Linertie
dun cluster reprsente la variance des points de ce cluster

Inertie intra-cluster : J
w
=

i C
k
D
2
(x
i
,
k
) =

i C
k
J
k
Gilles Gasso - Philippe LERAY Clustering 10 / 76
Introduction Problmatiques Mthodes de clustering Similarit et proximit Qualit des clusters
Evaluation de la Qualit dun clustering
Inertie inter-cluster

Soit le centre de gravit du nuage de points : =


1
N

i
x
i

Les centres de gravit des clusters forment eux aussi un nuage


de points caractris par

Inertie inter-cluster : J
b
=

k
N
k
D
2
(
k
, )
Linertie inter-cluster mesure "lloignement" des centres des
clusters entre eux. Plus cette inertie est grande, plus les
clusters sont bien spars

Une matrice de covariance inter-cluster :

b
=

k
(
k
)(
k
)

Remarque : J
b
= trace(
b
)
Gilles Gasso - Philippe LERAY Clustering 11 / 76
Introduction Problmatiques Mthodes de clustering Similarit et proximit Qualit des clusters
Bonne partition

Illustration (Bisson 2001) :


g
g
1
g
g
2
g
3
g
4
C
1
C
2
C
3
C
4
Inertie totale des points = Inertie Intra-cluster + Inertie Inter-cluster
Comment obtenir une bonne partition ?
Il faut minimiser linertie intra-cluster et maximiser linertie
inter-cluster
Gilles Gasso - Philippe LERAY Clustering 12 / 76
Introduction Problmatiques Mthodes de clustering Similarit et proximit Qualit des clusters
Bonne partition

Illustration (Bisson 2001) :


g
1
g
2
Forte inertie inter-classes
Faible inertie intra-classes
g
3
g
4
Faible inertie inter-classes
Forte inertie intra-classes
Gilles Gasso - Philippe LERAY Clustering 13 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Approches de clustering

Direntes approches sont possibles

Clustering hirachique

Clustering hirarchique ascendant (CHA) et variantes

Clustering hirarchique descendant

Clustering par partitionnement

Algorithme des K-moyennes et variantes

Clustering ou

Clustering spectral

...

Clustering par modlisation

Notion de modles de mlange

Algorithmes EM et variantes
Gilles Gasso - Philippe LERAY Clustering 14 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA - principe
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 C


I
et C
J

Fusion de C
I
et C
J
pour former un cluster C
G

Mise jour de M en calculant la ressemblance entre C


G
et les
clusters existants

Jusqu la fusion des 2 derniers clusters


Gilles Gasso - Philippe LERAY Clustering 15 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA : principe

Exemple (Bisson 2001)


Hirarchie
(indice)
C10
C1
C6
C5
C4
C3
C2
C9
C8
C7
C
1
C
2
C
3
C
4
C
5
C
6
C
8
C
10
C
7
C
9
i

Schma du milieu : dendrogramme = reprsentation des


fusions successives

Hauteur dun cluster dans le dendrogramme = similarit entre


les 2 clusters avant fusion (sauf exception avec certaines
mesures de similarit)...
Gilles Gasso - Philippe LERAY Clustering 16 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA : mtrique
Problme
Trouver lultramtrique (distance entre clusters) la plus proche de
la mtrique utilise pour les individus.

Saut minimal (single linkage) bas sur la distance D


min
(C
1
, C
2
)

tendance produire des classes gnrales (par eet de


chanage)

sensibilit aux individus bruits.

Saut maximal (complete linkage) bas sur la distance


D
max
(C
1
, C
2
)

tendance produire des classes spciques (on ne regroupe


que des classes trs proches)

sensibilit aux individus bruits.


Gilles Gasso - Philippe LERAY Clustering 17 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA : mtrique

Saut moyen bas sur la distance D


moy
(C
1
, C
2
)

tendance produire des classes de variance proche

Barycentre bas sur la distance D


cg
(C
1
, C
2
)

bonne rsistance au bruit


Gilles Gasso - Philippe LERAY Clustering 18 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA : mtrique

Illustration : exemple (Bisson 2001)


Donnes (mtrique : dist. Eucl.)
4
3
2
1
0
4 3 2 1 0
A
C
B
E
F
D
Saut minimal
F E A B C D
i
0,5
1,1
0,9
0,7
Saut maximal
C D A B E F
i
0,5
4,0
2,8
1,7

Pas les mmes rsultats selon la mtrique utilise ...


Gilles Gasso - Philippe LERAY Clustering 19 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA : ASI4 Clustering

26 individus dASI4, 2003

Donnes = 5 valeurs 0/1 (inscription en IR, MGPI, DM1, DM2,


TIM)
Saut minimal
B
A
R
O
C
A
S
T
C
O
R
D
B
O
N
V
P
E
S
Q
B
O
I
T
T
R
A
O
W
A
A
G
C
H
A
M
L
E
D
I
B
O
N
D
S
P
E
R
G
R
E
M
C
A
M
P
P
E
R
S
W
E
Y
C
C
A
P
R
F
O
U
R
G
E
S
L
J
E
A
N
L
E
H
O
H
A
U
T
O
H
A
N
R
A
B
A
R
A
B
I
Z
E
H
N

Pas moyen de faire de


sous-groupes, tout le
monde est une distance
de 0 ou 1 des autres
clusters.
Gilles Gasso - Philippe LERAY Clustering 20 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA : ASI4 Clustering : saut maximal
B
A
R
O
C
A
S
T
C
O
R
D
G
R
E
M
R
A
B
I
Z
E
H
N
C
A
M
P
P
E
R
S
W
E
Y
C
C
A
P
R
F
O
U
R
G
E
S
L
J
E
A
N
L
E
H
O
B
O
I
T
T
R
A
O
W
A
A
G
B
O
N
V
P
E
S
Q
H
A
U
T
O
H
A
N
R
A
B
A
B
O
N
D
S
P
E
R
C
H
A
M
L
E
D
I

En changeant de mtrique, on observe plus de


sous-regroupements
Gilles Gasso - Philippe LERAY Clustering 21 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA : ASI4 Clustering
B
A
R
O
C
A
S
T
C
O
R
D
G
R
E
M
R
A
B
I
Z
E
H
N
C
A
M
P
P
E
R
S
W
E
Y
C
C
A
P
R
F
O
U
R
G
E
S
L
J
E
A
N
L
E
H
O
B
O
I
T
T
R
A
O
W
A
A
G
B
O
N
V
P
E
S
Q
H
A
U
T
O
H
A
N
R
A
B
A
B
O
N
D
S
P
E
R
C
H
A
M
L
E
D
I

Pour construire les clusters, on coupe larbre la hauteur


voulue
Gilles Gasso - Philippe LERAY Clustering 22 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA : Autre exemple de saut maximal
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
Indice des points regroups
D
i
s
t
a
n
c
e
Dendrogramme
14
1
7
2
66
2
0
2
43
2
5
1
3
2
1728
2
25
1
4
1
8
1
0
1
6
1
1
2
39
1
9
1
2
1
5
2
7
3
5
4
0
2
9
2
8
3
6
3
1
3
2
3
9
3
0
3
3
3
4
3
7
3
8
Gilles Gasso - Philippe LERAY Clustering 23 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA : Autre exemple de saut maximal
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
Indice des points regroups
D
i
s
t
a
n
c
e
Dendrogramme
14
1
7
2
66
2
0
2
43
2
5
1
3
2
1728
2
25
1
4
1
8
1
0
1
6
1
1
2
39
1
9
1
2
1
5
2
7
3
5
4
0
2
9
2
8
3
6
3
1
3
2
3
9
3
0
3
3
3
4
3
7
3
8
fusion des
clusters 7 et 8
1 2 3 4 5 6 7 8 9 10
Gilles Gasso - Philippe LERAY Clustering 24 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHA : Autre exemple de saut maximal
10 clusters
cluster 7
cluster 8
fusion des
clusters 7 et 8
tape suivante :
Gilles Gasso - Philippe LERAY Clustering 25 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
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
Gilles Gasso - Philippe LERAY Clustering 26 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHAMELEON : similarit entre deux clusters
Inter-connectivit

Inter-connectivit absolue entre 2 clusters :


EC(C
i
, C
j
) = ensemble des points qui relient des nuds de C
i
et de C
j

Inter-connectivit interne dun cluster :


EC(C
i
) = plus petit ensemble qui partionne C
i
en 2
sous-clusters de taille proche

Inter-connectivit relative : RI (C
i
, C
j
) =
2|EC(C
i
,C
j
)|
|EC(C
i
)|+|EC(C
j
)|
Gilles Gasso - Philippe LERAY Clustering 27 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHAMELEON : similarit entre deux clusters
Proximit

Proximit absolue entre 2 clusters :


EC(C
i
, C
j
) = distance moyenne entre les points de EC(C
i
, C
j
)

Proximit interne dun cluster :


EC(C
i
) = distance moyenne entre les points de EC(C
i
)

Proximit relative : RC(C


i
, C
j
) =
(|C
i
|+|C
j
|)EC(C
i
,C
j
)
|C
i
|EC(C
i
)+|C
j
|EC(C
j
)
Gilles Gasso - Philippe LERAY Clustering 28 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
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 (C
i
, C
j
) et RC(C
i
, C
j
)
Gilles Gasso - Philippe LERAY Clustering 29 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
CHAMELEON : rsultats
DS4 DS3
DS5
Gilles Gasso - Philippe LERAY Clustering 30 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Complexit

Classication Hierarchique Ascendante : O(N


3
)

Certaines variantes de CHA

CURE : O(n
2
) en petite dimimension, O(N
2
+ Nmlog N)
sinon (en commenant avec m clusters)

CHAMELEON :

graphe k-ppv : O(N log N) en petite dim. sinon O(N


2
)

clustering : O(Nm +N log N +m


2
log m)
Gilles Gasso - Philippe LERAY Clustering 31 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Classication Hirarchique Descendante

Principe :

Slection du cluster le moins cohrent

Subdivision du cluster le moins cohrent

Problme :

Pour raliser la subdivision, il faut souvent faire une


classication hierarchique ascendante pour savoir quelle est la
meilleure faon de sparer les points

Algorithme beaucoup moins attractif que lautre


Gilles Gasso - Philippe LERAY Clustering 32 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Approches de clustering

Direntes approches sont possibles

Clustering hirachique

Clustering hirarchique ascendant (CHA) et variantes

Clustering hirarchique descendant

Clustering par partitionnement

Algorithme des K-moyennes et variantes

Clustering ou

Clustering spectral

...

Clustering par modlisation

Notion de modles de mlange

Algorithmes EM et variantes
Gilles Gasso - Philippe LERAY Clustering 33 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Clustering par partitionnement
Objectifs

N donnes D = {x
i
R
d
}
i =1, ,N
disponibles

Recherche dune partition en K < N clusters C


k
des donnes

Approche directe

Construire toutes les partitions possibles

Evaluer la qualit de chaque clustering clustering et retenir la


meilleure partition

Souci : problme NP dicile car le nombre de partitions


possibles augmente exponentiellement
#Clusters =
1
K!
K

k=1
(1)
Kk
C
K
k
k
N
Pour N = 10 et K = 4, on a 34105 partitions possibles !
Gilles Gasso - Philippe LERAY Clustering 34 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Clustering par partitionnement
Solution plus pratique

Minimisation de linertie intra-classe


J
w
=
K

k=1

i C
k
D
2
(x
i
,
k
)

Eviter lnumration exhaustive de toutes les partitions


possibles

Utilisation dune approche heuristique donnant au moins une


bonne partition et pas ncessairement la partition optimale au
sens de J
w
Gilles Gasso - Philippe LERAY Clustering 35 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Clustering par partitionnement
Un algorithme trs connu : algorithmes des K-means (ou
centres mobiles)

Si on connait les centres de gravit


k
, k = 1, , K, on
aecte un point x
i
un cluster et un seul. Le point est aect
au cluster C

dont le centre

est le plus proche

Connaissant les clusters C


k
, k = 1, , K, on estime leur
centre de gravit

On alterne ainsi laectation des points aux clusters et


lestimation des centres de gravit jusqu convergence du
critre
Gilles Gasso - Philippe LERAY Clustering 36 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : algorithme

Initialiser les centres


1
,
K

Rpeter

Aectation de chaque point son cluster le plus proche


C

x
i
tel que = arg min
k
D(x
i
,
k
)

Recalculer le centre
k
de chaque cluster

k
=
1
N
k

i C
k
x
i
avec N
k
= card(C
k
)

Tant que >


Complexit : O(KN) pour : itrations
Gilles Gasso - Philippe LERAY Clustering 37 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : illustration [S. Roweis, 2003]
Clustering en K = 2 classes
Donnes Initialisation Itration 1
Itration 2 Itration 3 Itration 4
Gilles Gasso - Philippe LERAY Clustering 38 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : exemple
K = 2 K = 3
K = 4 K = 5
K = 6 K = 7
Gilles Gasso - Philippe LERAY Clustering 39 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : exemple
K = 2 K = 3
K = 4 K = 5
K = 6 K = 7
Gilles Gasso - Philippe LERAY Clustering 40 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : exemple
K = 6
Gilles Gasso - Philippe LERAY Clustering 41 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : exemple
K = 10
Gilles Gasso - Philippe LERAY Clustering 42 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : exemple
K = 10
Gilles Gasso - Philippe LERAY Clustering 43 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : Remarques et problmes

On montre qu chaque itration de lalgorithme le critre J


w
diminue.

Lalgorithme converge au moins vers un minimum local de J


w

Convergence rapide

Initialisation des
k
:

alatoirement dans lintervalle de dnition des x


i

alatoirement dans lensemble des x


i

Des initialisations direntes peuvent mener des clusters


dirents (problmes de minima locaux)
Gilles Gasso - Philippe LERAY Clustering 44 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : Remarques et problmes

Mthode gnrale pour obtenir des clusters "stables" =


formes fortes

On rpte lalgorithme r fois

On regroupe ensemble les x


i
qui se retrouvent toujours dans
les mmes clusters.

Choix du nombre de clusters : problme dicile

Fix a priori (exple : on veut dcouper une clientle en K


segments)

Chercher la meilleure partition pour dirents K > 1 et


chercher "un coude" au niveau de la dcroissance de J
w
(K)

Imposer des contraintes sur le volume ou la densit des clusters


obtenus
Gilles Gasso - Philippe LERAY Clustering 45 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : formes fortes

Illustration (Bisson 2001) :


x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
4 formes fortes
C
1
C
2
C
1
C
2
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
F
1
F
2
F
4
F
3
Classifications
Gilles Gasso - Philippe LERAY Clustering 46 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : formes fortes

K-Means rpt 6 fois


K = 3 K = 3
K = 3 K = 3
K = 3 K = 3
Gilles Gasso - Philippe LERAY Clustering 47 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : formes fortes

On trouve 5 regroupements de points dirents :


F
1
F
2
F
3
F
4
F
5
N
i
2040 1940 49 2042 1929

F
3
nest pas reprsentatif

F
1
, F
1
, F
4
et F
5
sont les formes fortes

on peut recalculer les clusters partir des centres des formes


fortes
Gilles Gasso - Philippe LERAY Clustering 48 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means : formes fortes

K-Means rpt 6 fois


4 Formes fortes pour K = 3
Gilles Gasso - Philippe LERAY Clustering 49 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
K-Means squentiels
Adaptation des K-means lorsque les exemples arrivent au fur et mesure

Initialiser
1
,
K

Initialiser n
1
, n
K
0

Rpeter

acqurir x

aectation du point au cluster le plus proche


C

x tel que = arg min


k
D(x,
k
)

incrmenter n

recalculer le centre

de ce cluster

+
1
n

(x

)
Remarque
Si on dispose dune partition initiale, on utilisera les centres des
clusters et on initialisera n
k
= card(C
k
), k = 1, , K
Gilles Gasso - Philippe LERAY Clustering 50 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Variantes de K-means
K-means ous

Ici un point x
i
peut appartenir plusieurs clusters !

Par contre, pour chaque cluster C


k
, on lui associe un degr
dappartenance z
i ,k
tel que 0 z
i ,k
1 et

K
k=1
z
i ,k
= 1

On minimise le critre intra-classe suivant


J
w
=

k
N

i =1
z

i ,k
D
2
(x
i
,
k
) avec > 1
rgle le "degr de ou". Plus est grand, plus les clusters
trouvs se recouvrent.
Gilles Gasso - Philippe LERAY Clustering 51 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Variantes de K-means
Nues Dynamiques (Diday 1972, 1974)

Gnralisation des K-Means

Utilisation de noyaux = reprsentation dun cluster

barycentre ( = pour les K-means)

n points reprsentatifs

Hyperplan

...
Gilles Gasso - Philippe LERAY Clustering 52 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Approches de clustering

Direntes approches sont possibles

Clustering hirachique

Clustering hirarchique ascendant (CHA) et variantes

Clustering hirarchique descendant

Clustering par partitionnement

Algorithme des K-moyennes et variantes

Clustering ou

Clustering spectral

...

Clustering par modlisation

Notion de modles de mlange

Algorithmes EM et variantes
Gilles Gasso - Philippe LERAY Clustering 53 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Clustering par modlisation statistique
Introduction par lexemple

Considrons N donnes {x
i
R
d
}
i =1, ,N
formant deux
classes
3 2 1 0 1 2 3 4 5 6
2
1
0
1
2
3
4
5
6
Donnes des deux classes
3 2 1 0 1 2 3 4 5 6
2
1
0
1
2
3
4
5
6
Donnes des deux classes et contours des classes

On veut trouver le modle statistique des donnes.

On constate que pour modliser les donnes, il faut deux


distributions gaussiennes
Gilles Gasso - Philippe LERAY Clustering 54 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Clustering par modlisation statistique
Introduction par lexemple

Dans la classe 1, les donnes suivent une loi normale


N(X;
1
,
1
) o X dsigne une variable alatoire. Dans la
classe 2, X suit N(X;
2
,
2
)

Loi marginale de X
f (X) = f (X, Z = 1) + f (X, Z = 2)
= f (X/Z = 1) Pr(Z = 1) + f (X/Z = 2) Pr(Z = 2) Th de Bayes
f (X) =
1
f (X/Z = 1) +
2
f (X/Z = 2)
avec
f (X/Z = 1) N(X;
1
,
1
), f (X/Z = 2) N(X;
2
,
2
)
Z : variable alatoire (cache) indiquant la classe du point X
Gilles Gasso - Philippe LERAY Clustering 55 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Clustering par modlisation statistique
Introduction par lexemple

Loi marginale de X
f (X) = f (X, Z = 1) + f (X, Z = 2)
f (X) =
1
f (X/Z = 1) +
2
f (X/Z = 2)


1
et
2
dsignent la probabilit a priori que X relve resp. de
la classe C
1
et C
2
. Remarque : on a
1
+
2
= 1

f (X/Z = 1) et f (X/Z = 2) dsignent la densit


conditionnelle de X respectivement Z = 1 et Z = 2

f (X) est entirement dtermin par la connaissance de


j
,
j
,

j
, j {1, 2}. On lappelle modle de mlange de densits
Gilles Gasso - Philippe LERAY Clustering 56 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Modle de mlange : illustration

Modle de mlange gaussien


f (X) =
1
N(X;
1
,
1
) +
2
N(X;
2
,
2
) avec
1
+
2
= 1
3 2 1 0 1 2 3 4 5 6
2
1
0
1
2
3
4
5
6
Donnes des deux classes et loi sousjacente
6
4
2
0
2
4
6
5
0
5
0.005
0.01
0.015
0.02
0.025
0.03
0.035
0.04
Loi en 3D
Gilles Gasso - Philippe LERAY Clustering 57 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Du modle de mlange au clustering
Intrt du modle statistique pour faire du clustering ?

Si on connait le modle de mlange, on connait les probabilits


priori
j
et les lois conditionnelles f (X/Z = j ), j {1, 2}

Daprs le thorme de Bayes, on en dduit les probabilits a


posteriori dappartenance du point X = x C
1
et C
2
Pr(Z = 1/X = x) =

1
f (X = x/Z = 1)
f (X = x)
Pr(Z = 2/X = x) =

2
f (X = x/Z = 2)
f (X = x)

Remarque : on a Pr(Z = 1/X = x) + Pr(Z = 2/X = x) = 1


Gilles Gasso - Philippe LERAY Clustering 58 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Du modle de mlange au clustering
Aectation des points aux clusters

Aectation probabiliste

Le point x est aect la classe de plus grande probabilit a


posteriori
C
1
x si Pr(Z = 1/X = x) > Pr(Z = 2/X = x)
C
2
x sinon

Ceci se gnralise aisment pour K > 2 clusters


Gilles Gasso - Philippe LERAY Clustering 59 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Du modle de mlange au clustering
Comparaison avec K-means
K-means Approche modlisation
Modle - Modle de mlanges
f (X) =

K
k=1

k
f (X/Z = k)
Paramtres Centres des clusters Proba a priori
k
estimer
k
, k = 1, , K Paramtres des lois
f (X/Z = k)
Critre Variance intra-classe Log-Vraisemblance
optimis
Indice d(x,
k
) Proba a posteriori
daectation Pr(Z = k/X = x)
Rgle Cluster dont le centre Cluster de plus grande
daectation est le plus proche proba a posteriori
de x
Gilles Gasso - Philippe LERAY Clustering 60 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Estimation des paramtres du modle
Retour lexemple

Modle de mlange gaussien


f (X) =
1
N(X;
1
,
1
) +
2
N(X;
2
,
2
)

Paramtres estimer :
1
,
2
,
1
,
1
,
2
et
2

On regroupe tous les paramtres du modle de mlange dans


le vecteur :
=
_

1
,
2
,

1
,
1
(:)

,
2
,
2
(:)

Comment estimer les paramtres partir des donnes ?


Maximiser la vraisemblance (ou le log de la vraisemblance)
Gilles Gasso - Philippe LERAY Clustering 61 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Notion de vraisemblance

Supposons des donnes {x


i
}
i =1, ,N
i.i.d. (identiquement et
indpendamment distribues). Ces donnes suivent une loi
f (X; ) de paramtres

Vraisemblance
(; x
1
, , x
N
) =
N

i =1
f (X = x
i
; )

En gnral on utilise la Log-vraisemblance


L(; x
1
, , x
N
) = log ((; x
1
, , x
N
))
=
N

i =1
log(f (X = x
i
; ))
Gilles Gasso - Philippe LERAY Clustering 62 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Maximisation de la vraisemblance

On considre de faon gnrale le problme suivant


max

L(; x
1
, , x
N
) = max

i =1
log(f (X = x
i
; ))
Approche directe

La solution

du problme prcdent vrie
L(

; x
1
, , x
N
) = 0

Pas de solution analytique en gnral

Problme doptimisation dicile en gnral

Il existe des cas simples o la solution analytique existe comme


par exemple lestimation des paramtres dune loi normale
Gilles Gasso - Philippe LERAY Clustering 63 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Maximisation de la vraisemblance
Approche directe : exemple de solution analytique

Soit des donnes {x


i
R
d
}
N
i =1
i.i.d. Elles sont tires selon une
loi de distribution gaussienne
N(X/, ) =
1
_
(2)
d
||
exp
_

1
2
(X )

1
(X )
_

La Log-vraisemblance est
L(, ; x
1
, , x
N
) =
1
2
N log((2)
d
||)
1
2
N

i =1
(x
i
)

1
(x
i
)

Estimation de la moyenne et de la matrice de covariance


max
,
L(, ; x
1
, , x
N
)
Gilles Gasso - Philippe LERAY Clustering 64 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Maximisation de la vraisemblance
Approche directe : exemple de solution analytique

Par drivation de L, on trouve lestimation des paramtres


et au sens du maximum de vraisemblance

Conditions doptimalit

L = 0
N

i =1

1
(x
i
) = 0

L = 0
N
2

1
+
1
2
N

i =1

1
(x
i
)

(x
i
)
1
= 0

Solutions analytiques
=
1
N
N

i =1
x
i
,

=
1
N
N

i =1
(x
i
)(x
i
)

Gilles Gasso - Philippe LERAY Clustering 65 / 76


Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Maximisation de la vraisemblance
Exemple o la solution analytique nexiste pas

Log-Vraisemblance du modle de mlange de deux gaussiennes


L(/x
1
, , x
N
) =
N

i =1
log(
1
N(x
i
;
1
,
1
) +
2
N(x
i
;
2
,
2
))

Solution non analytique cause du log de la somme des


termes
j
N(x/
j
,
j
)

Quel est le problme ? On ne connait pas a priori le cluster


auquel appartient le point x
i

Que se passe-t-il si on a cette information ? On peut construire


une dmarche itrative : cest lalgorithme EM
Gilles Gasso - Philippe LERAY Clustering 66 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
EM par lexemple
Existe-t-il une parade dans lexemple du mlange de
gaussiennes ?

Que se passe-t-il si on se donne arbitrairement lappartenance


de x
i
un cluster ?
On dnit la log-vraisemblance complte
L
c
(; {x
i
, z
i
}
i =1, ,N
) =
N

i =1
z
i
log(
1
N(x
i
;
1
,
1
))+(1z
i
) log(
2
N(x
i
;
2
,
2
))
avec z
i
= 1 si x
i
C
1
et z
i
= 0 si x
i
C
2
Il est alors possible de dterminer
j
,
j
et

j
analytiquement

Problme : nous avons pris arbitrairement les inconnus z


i
!
Gilles Gasso - Philippe LERAY Clustering 67 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
EM par lexemple
Comment on sen sort ?

On prend lesprance conditionnelle de L


c
Esp(L
c
/{x
i
}
i =1, ,N
) =
N

i =1
Esp(z
i
/x
i
) log(
1
N(x
i
;
1
,
1
))
+(1 Esp(z
i
/x
i
)) log(
2
N(x
i
;
2
,
2
))

Esp(z
i
/x
i
) = Pr(z
i
= 1/x
i
) est la probabilit a posteriori que
x
i
C
1

Intuition : si on tirait alatoirement la classe du point x


i
un
trs grand nombre de fois, combien de fois le point x
i
tomberait dans la classe C
1
? Ceci est traduit par Esp(z
i
/x
i
).
Gilles Gasso - Philippe LERAY Clustering 68 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
EM par lexemple
Comment on sen sort ?

Daprs la loi de Bayes


Pr(z
i
= 1/x
i
) =
Pr(z
i
= 1)f (x
i
/z
i
= 1)
f (x
i
)
Pr(z
i
= 1/x
i
) =

1
N(x
i
;
1
,
1
)

1
N(x
i
;
1
,
1
) +
2
N(x
i
;
2
,
2
)

Si on connait les paramtres, on peut calculer les probabilits a


posteriori. Connaissant Pr(z
i
= 1/x
i
), on peut calculer les
paramtres. EM : approche itrative alternant calcul des
Pr(z
i
= 1/x
i
) et calcul des paramtres
Gilles Gasso - Philippe LERAY Clustering 69 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
EM appliqu au mlange de 2 gaussiennes : Algorithme

Rpeter

Etape E (Expectation) : calcul des probabilits a posteriori


Pr(z
i
= 1/x
i
) et Pr(z
i
= 0/x
i
)

(1)
i
=

1
N(x
i
;
1
,
1
)

1
N(x
i
;
1
,
1
) +
2
N(x
i
;
2
,
2
)
, i = 1, , N
Rmq :
(2)
i
= Pr(z
i
= 0/x
i
) = 1
(1)
i
: probabilit a posteriori
que x
i
C
2

Etape M (Maximisation) : calcul des paramtres

j
=

N
i =1

(j )
i
x
i

N
i =1

(j )
i
,
j
=

N
i =1

(j )
i
N
, j {1, 2}

j
=

N
i =1

(j )
i
(x
i

j
)(x
i

j
)

N
i =1

(j )
i
, j {1, 2}

Jusqu convergence
Gilles Gasso - Philippe LERAY Clustering 70 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
EM appliqu au mlange de 2 gaussiennes : Algorithme
Initialisation de lalgorithme

Fixer les paramtres


1
et
2
tels que
1
+
2
= 1

Fixer les paramtres


1
,
1
et
2
,
2

On peut utiliser lalgo K-means pour initialiser les clusters


Du modle de mlange au clustering

Aprs convergence, on dispose des paramtres. On aecte le


point x
i
au cluster C
j
tel que
(j )
i
soit maximal
C
1
x
i
si
(1)
i
>
(1)
i
C
2
x
i
autrement
Gilles Gasso - Philippe LERAY Clustering 71 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
EM appliqu au mlange de 2 gaussiennes
Illustration [S. Sankararam]
Initialisation Init : Etape E Iteration 1
Itration 2 Itration 5 Itration 20
Gilles Gasso - Philippe LERAY Clustering 72 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Extensions au cas gnral
Modle de mlange
f (x) =
K

k=1

k
f (x;
k
) avec
K

k=1

k
= 1
Algorithme EM

A ltape E, on calcule les proba a posteriori de x


i
C
k

(k)
i
=

k
f (x
i
;
k
)

K
k=1

k
f (x;
k
)
, i = 1, , N, et k = 1, , K
Rmq :

K
k=1

(k)
i
= 1

Etape M : on calcule les paramtres


k
et
k
par maximisation
de Esp(L
c
/{x
i
}
i =1, ,N
). Si on a un modle de mlange de
K > 2 gaussiennes, on calcule les paramtres analytiquement
Gilles Gasso - Philippe LERAY Clustering 73 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Remarques sur EM

Convergence vers un extremum local (convergence globale non


garantie)

Critre de convergence : variation de la log-vraisemblance

On montre qu chaque tape, on amliore la


log-vraisemblance (la log-vraisemblance est monotone
croissante)

Initialisation : alatoire ou utilisation de rsultats a priori


(comme par lexemple faire K-means sur les donnes et utiliser
ces rsultats pour initialiser lalgorithme)

Des initialisations direntes peuvent donner des paramtres


dirents
Gilles Gasso - Philippe LERAY Clustering 74 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Variante de EM : CEM

Initialiser les paramtres


k
et
k
, k = 1, , K

Rpter

Etape E : calculer les probabilits a posteriori


(k)
i
,
i = 1, , N et k = 1, , K

Etape C : classication des points


C
k
x
i
si k = arg

max
()
i
Modication des proba a posteriori

(k)
i
= 1 et
()
i
= 0, = k

Etape M : calcul des paramtres par la procdure usuelle en


utilisant les proba a posteriori modies

Jusqu convergence
Remarque : A la n de lalgo, on obtient directement les clusters
Gilles Gasso - Philippe LERAY Clustering 75 / 76
Introduction Problmatiques Mthodes de clustering CHA K-means Mlange de gaussiennes
Conclusion

Clustering : apprentissage non-supervis

Regroupement des donnes en classes (clusters) homognes

Proprits dun bon clustering : identier des classes trs


homognes (faible variance intra-classe) et bien spares (forte
variance inter-classe)

Il existe des critres composites permettant dvaluer la qualit


dun clustering

Le nombre de clusters est un hyper-paramtre qui dpend de


lapplication mais peut tre dtermin sur la base de ces
critres composites

Algorithmes : CHA, K-means, mlange de distributions et bien


dautres
Gilles Gasso - Philippe LERAY Clustering 76 / 76