cours - LISIC

publicité
Partionnement non-supervisée
Intelligence Artificielle et Systèmes Formels
Master 1 I2L
Sébastien Verel
[email protected]
http://www-lisic.univ-littoral.fr/∼verel
Université du Littoral Côte d’Opale
Laboratoire LISIC
Equipe CAMOME
Introduction
Partitionnement automatique
Objectifs de la séance 11
Connaitre l’algorithme du k-means
Algorithme k-means
Introduction
Partitionnement automatique
Plan
1
Introduction
2
Partitionnement automatique
3
Algorithme k-means
Algorithme k-means
Introduction
Partitionnement automatique
Algorithme k-means
Types d’apprentissage
Apprentissage supervisé :
Apprentissage sur un ensemble d’exemples étiquetés :
(entrée, sortie désirée)
Apprentissage non supervisé :
Apprentissage sur un ensemble d’exemples non étiquetés
(cf. clustering)
Apprentissage semi-supervisé :
Apprentissage sur un ensemble d’exemples étiquetés / non
étiquetés
Apprentissage par renforcement :
Apprentissage où les actions sur l’environnement se
mesurent par une récompense
...
Introduction
Partitionnement automatique
Algorithme k-means
Exemple intuitif
id
1
2
3
4
5
6
Qualité
30
40
10
10
35
38
Prix
100
120
20
25
90
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 ?
Introduction
Partitionnement automatique
Algorithme k-means
Exemples graphiques
14
13
12
12
11
10
10
8
9
6
8
4
7
6
2
5
0
4
-2
3
-4
2
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
14
13
12
12
11
10
10
8
9
6
8
4
7
6
2
5
0
4
-2
3
-4
2
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
Pourquoi partitionner ?
Pour comprendre les données,
Pour classifier des données,
Pour prédire.
Quelques exemples issus du LISIC :
Monitoring System of Phytoplankton Blooms by using unsupervised classifier and time modeling. K.
Rousseeuw, É. 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ébert 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ème
Partitionnement
entrée :
Ensemble de n points / exemples / observations
E = {e1 , e2 , . . . , en }
sortie :
Partition de E
P = {P1 , P2 , . . . , Pk }
équivalent à une fonction c : E → {1, . . . , k}
Introduction
Partitionnement automatique
Algorithme k-means
Position du problème
Partitionnement
entrée :
Ensemble de n points / exemples / observations
E = {e1 , e2 , . . . , en }
sortie :
Partition de E
P = {P1 , P2 , . . . , Pk }
équivalent à une fonction c : E → {1, . . . , k}
Combien de partitions avec k clusters ?
Introduction
Partitionnement automatique
Algorithme k-means
Position du problème
Partitionnement
entrée :
Ensemble de n points / exemples / observations
E = {e1 , e2 , . . . , en }
sortie :
Partition de E
P = {P1 , P2 , . . . , Pk }
équivalent à une fonction c : E → {1, . . . , k}
Combien de partitions avec k clusters ?
k n /k!
Beaucoup même pour n = 100 et k = 2, comment choisir ?...
Introduction
Partitionnement automatique
Algorithme k-means
Problème d’optimisation associé
Problème d’optimisation
Critère de la qualité d’une partition :
U : P(E ) → IR
Trouver une bonne partition revient à maximiser le critère :
argmaxP∈P(E ) U(P)
Utilisation de méthodes d’optimisation (locale, greedy, etc.)...
Introduction
Partitionnement automatique
Algorithme k-means
Critère de qualité
Forme
En général, le critère est de la forme :
k
X
w (Pi )
U(P) =
i∈1
avec w une mesure de la qualité d’un cluster.
Exemples
Somme des carrés des distances entre les points du cluster :
X X
d 2 (x, y )
w (Pi ) =
x∈Pi y ∈Pi
Probabilité d’observation des points du cluster :
Y
w (Pi ) =
Pr (x|θi )
x∈Pi
Introduction
Partitionnement automatique
Algorithme k-means
Algorithmes de partitionnement
Différentes approches :
Partitionnement hiérarchique :
Regroupement (ou séparation) de clusters selon un critère
Dendrogramme
Partitionnement controı̈de :
Utilisation de centres pour paramètrer les clusters
k-means (cf. plus loin)
Partitionnement fondé sur des distributions de probabilité
Un cluster est représenté par une distribution de probabilité
dont il faut trouver les paramètres
Algorithme E-M, Gaussian mixture models
Partitionnement fondé sur la densité :
Selon la densité locale de points, croissance du cluster
DBSCAN
Introduction
Partitionnement automatique
Algorithme k-means
Pseudo-code
k-means
(1)
(1)
Choisir (aléatoirement) k centres µ1 , . . . , µk
repeat
Affecter chaque observations au centre le plus proche :
(t)
(t)
(t)
Pi = {ej : d(ej , µi ) ≤ d(ej , µa ) ∀a = 1..k}
Mettre à jour les centres (moyenne des clusters) :
P
(t+1)
µ1
= 1(t) e ∈P (t) ej
]Pi
j
i
until plus de changement (convergence)
Le k-means est un algorithme local tel que
U(P (t+1) ) < U(P (t+1) ), d’où optima local...
Introduction
Partitionnement automatique
Algorithme k-means
Avantages / Inconvénients
Avantages
Facile à interpréter
Facile à coder
Complexité polynomiale
Inconvénients
Fixer le nombre de clusters k
La forme des clusters est supposée ”sphérique” et les clusters
séparables
Téléchargement