Partionnement non-supervis´ ee
Intelligence Artificielle et Syst`emes Formels Master 1 I2L
S´ebastien Verel verel@lisic.univ-littoral.fr
http://www-lisic.univ-littoral.fr/∼verel
Universit´e du Littoral Cˆote d’Opale Laboratoire LISIC Equipe CAMOME
Objectifs de la s´ eance 11
Connaitre l’algorithme du k-means
Introduction Partitionnement automatique Algorithme k-means
Plan
1 Introduction
2 Partitionnement automatique
3 Algorithme k-means
Types d’apprentissage
Apprentissage supervis´e :
Apprentissage sur un ensemble d’exemples ´etiquet´es : (entr´ee, sortie d´esir´ee)
Apprentissage non supervis´e :
Apprentissage sur un ensemble d’exemples non ´etiquet´es (cf. clustering)
Apprentissage semi-supervis´e :
Apprentissage sur un ensemble d’exemples ´etiquet´es / non
´
etiquet´es
Apprentissage par renforcement :
Apprentissage o`u les actions sur l’environnement se mesurent par une r´ecompense
...
Introduction Partitionnement automatique Algorithme k-means
Exemple intuitif
id Qualit´e Prix
1 30 100
2 40 120
3 10 20
4 10 25
5 35 90
6 38 110
Peut-on partitionner l’ensemble de ces produits en k = 2 classes ?
Si oui, proposer un partition.
Un nouveau produit arrive (Q,P) = (32,92).
Dans quelle classe l’affecter ? Pourquoi ?
Exemples graphiques
-4 -2 0 2 4 6 8 10 12 14
2 3 4 5 6 7 8 9 10 11 12 13 2
3 4 5 6 7 8 9 10 11 12 13
0 1 2 3 4 5 6 7 8 9 10
Introduction Partitionnement automatique Algorithme k-means
Exemples graphiques
-4 -2 0 2 4 6 8 10 12 14
2 3 4 5 6 7 8 9 10 11 12 13 2
3 4 5 6 7 8 9 10 11 12 13
0 1 2 3 4 5 6 7 8 9 10
Pourquoi partitionner ?
Pour comprendre les donn´ees, Pour classifier des donn´ees, Pour pr´edire.
Quelques exemples issus du LISIC :
Monitoring System of Phytoplankton Blooms by using unsupervised classifier and time modeling. K.
Rousseeuw, ´E. Poisson Caillault, A. Lefebvre, D. Hamad. IEEE International Geoscience and Remote Sensing Symposium, IGARSS 2013. Melbourne, Australia, 21-26 July.
Constrained Spectral Embedding for K-Way Data Clustering. Guillaume Wacquet ; Emilie Poisson Caillault ; Denis Hamad ; Pierre-Alexandre H´ebert Pattern Recognition Letters, Available online 19 February 2013, Detection of contrasted physico-chemical and biological environmental status using unsupervised classification tools. ROUSSEEUW Kevin, LEFEBVRE Alain, CAILLAULT Emilie, HAMAD Denis 5th FerryBox Worshop, Helsinki, Finland, 24-25 April 2013.
A new benchmark image test suite for evaluating color texture classification schemes A. POREBSKI, N.
VANDENBROUCKE, L. MACAIRE, D. HAMAD Multimedia Tools and Applications Journal, 2013.
...
Introduction Partitionnement automatique Algorithme k-means
Position du probl` eme
Partitionnement entr´ee:
Ensemble den points / exemples / observations
E ={e1,e2, . . . ,en}
sortie:
Partition de E
P ={P1,P2, . . . ,Pk}
´equivalent `a une fonction c :E → {1, . . . ,k}
Combien de partitions aveck clusters ?
kn/k!
Beaucoup mˆeme pour n= 100 et k= 2, comment choisir ?...
Introduction Partitionnement automatique Algorithme k-means
Position du probl` eme
Partitionnement entr´ee:
Ensemble den points / exemples / observations
E ={e1,e2, . . . ,en}
sortie:
Partition de E
P ={P1,P2, . . . ,Pk}
´equivalent `a une fonction c :E → {1, . . . ,k}
Combien de partitions aveck clusters ?
Beaucoup mˆeme pour n= 100 et k= 2, comment choisir ?...
Introduction Partitionnement automatique Algorithme k-means
Position du probl` eme
Partitionnement entr´ee:
Ensemble den points / exemples / observations
E ={e1,e2, . . . ,en}
sortie:
Partition de E
P ={P1,P2, . . . ,Pk}
´equivalent `a une fonction c :E → {1, . . . ,k}
Combien de partitions aveck clusters ?
kn/k!
Beaucoup mˆeme pour n= 100 et k= 2, comment choisir ?...
Probl` eme d’optimisation associ´ e
Probl`eme d’optimisation
Crit`ere de la qualit´e d’une partition : U :P(E)→IR
Trouver une bonne partition revient `a maximiser le crit`ere : argmaxP∈P(E)U(P)
Utilisation de m´ethodes d’optimisation (locale, greedy, etc.)...
Introduction Partitionnement automatique Algorithme k-means
Crit` ere de qualit´ e
Forme
En g´en´eral, le crit`ere est de la forme :
U(P) =
k
X
i∈1
w(Pi)
avecw une mesure de la qualit´e d’un cluster.
Exemples
Somme des carr´es des distances entre les points du cluster : w(Pi) = X
x∈Pi
X
y∈Pi
d2(x,y)
Probabilit´e d’observation des points du cluster : w(Pi) = Y
x∈Pi
Pr(x|θi)
Remarque : des fois, le crit`ere optimis´e est implicite...
Algorithmes de partitionnement
Diff´erentes approches :
Partitionnement hi´erarchique :
Regroupement (ou s´eparation) de clusters selon un crit`ere Dendrogramme
Partitionnement contro¨ıde :
Utilisation de centres pour param`etrer les clusters k-means (cf. plus loin)
Partitionnement fond´e sur des distributions de probabilit´e Un cluster est repr´esent´e par une distribution de probabilit´e dont il faut trouver les param`etres
Algorithme E-M, Gaussian mixture models Partitionnement fond´e sur la densit´e :
Selon la densit´e locale de points, croissance du cluster DBSCAN
Introduction Partitionnement automatique Algorithme k-means
Pseudo-code
k-means
Choisir (al´eatoirement) k centresµ(1)1 , . . . , µ(1)k repeat
Affecter chaque observations au centre le plus proche : Pi(t)={ej : d(ej, µ(t)i )≤d(ej, µ(t)a ) ∀a= 1..k} Mettre `a jour les centres (moyenne des clusters) :
µ(t+1)i = 1
]Pi(t)
P
ej∈Pi(t)ej
until plus de changement (convergence)
Le k-means est un algorithme local tel que U(P(t+1))<U(P(t+1)), d’o`u optima local...
Avantages / Inconv´ enients
Avantages
Facile `a interpr´eter Facile `a coder
Complexit´e polynomiale
Inconv´enients
Fixer le nombre de clusters k
La forme des clusters est suppos´ee ”sph´erique” et les clusters s´eparables