Projet 2 : Algorithme des k-moyennes
Vous devez rendre ce travail pour le 20 avril 2011, sous forme d’un rapport manuscrit
retra¸cant l’´etude d´ecrite ci-dessous. Ce rapport doit comporter l’analyse demand´ee des
fichiers de donn´ees, et les figures correspondantes.
1 Principe de l’algorithme
L’algorithme des k-moyennes, plus commun´ement appel´e k-means, est une m´ethode
couramment utilis´ee en analyse de donn´ees. Elle permet de partitionner une collection
d’individus en Kclasses, K´etant un nombre fix´e au pr´ealable par l’utilisateur. On
supposera dans la suite que les individus xℓ,ℓ= 1,...,N, sont des vecteurs de IRq.
L’algorithme des k-moyennes se d´eroule de la fa¸con suivante :
1. Choisir kindividus au hasard. On note m1,...,mKces derniers. Ils constituent
les repr´esentants des Kclasses C1,...,CK, suppos´ees vides `a l’initialisation.
2. Affecter chaque individu `a l’une des classes, not´ee k0, en fonction du repr´esentant
le plus proche :
k0= arg min
1≤k≤Kd(xℓ,mk)
o`u d(·,·) est une m´etrique `a d´efinir soigneusement. Il peut s’agir par exemple de la
distance de Mahalanobis, d´efinie par
d(xℓ,mk) = [(xℓ−mk)⊤Σ−1(xℓ−mk)]1
2
o`u Σest la matrice de covariance des donn´ees. On choisira Σ=Idans la suite,
except´e dans la derni`ere question de l’´enonc´e.
3. Calculer les nouveaux repr´esentants de chaque classe. Ils peuvent ˆetre d´efinis comme
´etant le barycentre des ´el´ements de chaque classe :
mk=1
|Ck|X
ℓ∈Ck
xℓ(1)
4. Retourner `a l’´etape 2 si la condition d’arrˆet, `a d´efinir, n’est pas satisfaite.
La partition obtenue par l’algorithme des k-moyennes d´epend des repr´esentants de classe
initialement choisis. De fa¸con `a s’affranchir en partie de cette d´ependance, on ex´ecute
l’algorithme des k-moyennes, k´etant fix´e, avec des configurations initiales diff´erentes, et
on retient la meilleure partition. La qualit´e de la partition peut ˆetre mesur´ee par diverses
quantit´es, par exemple :
D=
K
X
i=1
X
xℓ∈Ck
(xℓ−mk)⊤Σ−1(xℓ−mk)
o`u Σest la matrice de covariance des donn´ees pour ce qui concerne la distance de Ma-
halanobis. Cette quantit´e peut ˆetre utilis´ee pour d´efinir le crit`ere d’arrˆet de l’algorithme.
1