Kmeans
Kmeans
Kmeans
Définition
Un algorithme de classification est un algorithme qui permet d’associer
à chaque donnée une classe (une espèce de fleur, un chiffre...)
Classification supervisée/non supervisée
Définition
Un algorithme de classification est un algorithme qui permet d’associer
à chaque donnée une classe (une espèce de fleur, un chiffre...)
Définition
On distingue deux types d’algorithmes de classification :
1 Classification supervisée : on connaît les classes de certaines
Définition
Un algorithme de classification est un algorithme qui permet d’associer
à chaque donnée une classe (une espèce de fleur, un chiffre...)
Définition
On distingue deux types d’algorithmes de classification :
1 Classification supervisée : on connaît les classes de certaines
de données d’entraînement).
Exemple : algo. des k-moyennes
Algorithme des k-moyennes : Principe général
Définition
Le centre (ou : isobarycentre) d’un ensemble de vecteurs x1 , . . . , xn
est le vecteur
n
1X
x= xi
n
i=1
Algorithme des k-moyennes : Principe général
Définition
Le centre (ou : isobarycentre) d’un ensemble de vecteurs x1 , . . . , xn
est le vecteur
n
1X
x= xi
n
i=1
Question
Écrire une fonction centre(X) renvoyant le centre de la liste de
vecteurs X.
Algorithme des k-moyennes : Principe général
x∈X
i=1
Algorithme des k-moyennes : Principe général
i=1
i=1
Plus l’inertie est petite, plus les données sont proches du centre de leur
classe et plus le partitionnement est bon.
Algorithme des k-moyennes : Principe général
Théorème (HP)
L’algorithme des k-moyennes termine (pas de boucle infinie).
Preuve :
Algorithme des k-moyennes : Terminaison
Théorème (HP)
L’algorithme des k-moyennes termine (pas de boucle infinie).
Preuve :
Il existe un nombre fini de partitions de X en k classes, donc l’inertie I
peut prendre qu’un nombre fini de valeurs.
Algorithme des k-moyennes : Terminaison
Théorème (HP)
L’algorithme des k-moyennes termine (pas de boucle infinie).
Preuve :
Il existe un nombre fini de partitions de X en k classes, donc l’inertie I
peut prendre qu’un nombre fini de valeurs.
Il suffit donc de montrer que I décroît strictement à chaque itération.
Algorithme des k-moyennes : Terminaison
Preuve (suite) :
Preuve (suite) :
x∈X
minimum pour y = X .
Algorithme des k-moyennes : Implémentation
Question
Écrire une fonction plus_proche(x, centres) renvoyant le numéro i
de la classe la plus proche de x parmi centres, c’est-à-dire la classe
telle la distance de x à centres[i] soit minimum
Algorithme des k-moyennes : Implémentation
Question
Écrire une fonction calculer_classes(X, centres) renvoyant une
liste classes telle que classes[i] soit la liste des données de X dont
le centre le plus proche est centres[i].
Algorithme des k-moyennes : Implémentation
Question
Écrire une fonction kmeans(X, centres) appliquant l’algorithme des
k-moyennes à X en partant des centres centres et renvoyant la liste
des classes obtenues.
Algorithme des k-moyennes : Choix des centres initiaux
Question
Comment choisir le nombre k de classes ?
Algorithme des k-moyennes : Choisir k
Question
Comment choisir le nombre k de classes ?
Question
Comment choisir le nombre k de classes ?
Question
Comment choisir le nombre k de classes ?
Question
Donner un exemple d’exécution de l’algorithme des k-moyennes qui ne
donne pas un clustering d’inertie optimale.
Algorithme des k-moyennes : Classification de nouvelles
données
Une image est souvent représentée par une matrice dont chaque
élément (pixel) est un triplet de valeurs entre 0 et 255 (rouge, vert,
bleu).
Application à la compression d’images
Une image est souvent représentée par une matrice dont chaque
élément (pixel) est un triplet de valeurs entre 0 et 255 (rouge, vert,
bleu).
Question
Combien y a t-il de couleurs différentes possibles ?
Application à la compression d’images
Une image est souvent représentée par une matrice dont chaque
élément (pixel) est un triplet de valeurs entre 0 et 255 (rouge, vert,
bleu).
Question
Combien y a t-il de couleurs différentes possibles ?
Question
Écrire une fonction nombre_couleurs(img) qui renvoie le nombre de
couleurs différentes présentes dans l’image img.
Application à la compression d’images