Il s'agit d'une implémentation Python de l'algorithme k-means comprenant la méthode du coude et la méthode de la silhouette pour sélectionner le K optimal.
K-means est un algorithme de clustering populaire utilisé pour partitionner les données en K clusters. Il fonctionne en attribuant de manière itérative chaque point de données au centroïde de cluster le plus proche, puis en recalculant le centroïde de chaque cluster en fonction des points de données qui lui sont attribués. Le processus est répété jusqu'à convergence.
L'objectif de k-means est de minimiser la somme des carrés des distances entre chaque point de données et le centroïde de cluster qui lui est attribué. La fonction objectif peut s’écrire : i-th
point de données du cluster j
, μj
est le centroïde du cluster j
et N
est le nombre total de points de données.
La méthode Elbow est une heuristique utilisée pour déterminer le nombre optimal de clusters dans le clustering K-Means. La méthode trace la somme des carrés des distances entre chaque observation et son centroïde attribué en fonction du nombre de clusters. Le point « coude » sur le tracé indique le nombre de grappes pour lesquelles l'ajout de grappes supplémentaires n'entraîne pas de réduction significative de la somme des carrés des distances.
La méthode Elbow peut être résumée par les étapes suivantes :
La méthode Silhouette est une autre heuristique utilisée pour déterminer le nombre optimal de clusters dans le clustering K-Means. La méthode mesure la qualité de l'affectation des clusters de chaque observation en calculant son coefficient de silhouette. Le coefficient de silhouette varie de -1 à 1, où une valeur de 1 indique que l'observation est bien regroupée et une valeur de -1 indique que l'observation est mal classée. La formule de calcul du coefficient de silhouette pour un point de données i
est : a(i)
est la distance moyenne entre i
et tous les autres points de données de son cluster, et b(i)
est la distance moyenne minimale entre i
et tous les autres clusters (c'est-à-dire le cluster avec le centre de gravité le plus proche). Le coefficient de silhouette pour l'ensemble du clustering est la moyenne des coefficients de silhouette pour tous les points de données.
La méthode Silhouette peut être résumée par les étapes suivantes :