Analyse de clustering : choisir le nombre optimal de clusters

S’entraîner aux questions d’entretien en Machine Learning avec Python

Lisa Stuart

Data Scientist

Méthodes pour choisir k

  • Méthode de la silhouette
  • Méthode du coude
S’entraîner aux questions d’entretien en Machine Learning avec Python

Coefficient de silhouette

  • Composé de 2 scores
    • Distance moyenne entre chaque observation et toutes les autres :
      • dans le même cluster
      • dans le cluster le plus proche
S’entraîner aux questions d’entretien en Machine Learning avec Python

Valeurs du coefficient de silhouette

  • Entre -1 et 1
    • 1
      • proche des autres du même cluster
      • très éloigné des autres des autres clusters
    • -1
      • peu proche des autres du même cluster
      • proche des autres des autres clusters
    • 0
      • indique des clusters qui se chevauchent
S’entraîner aux questions d’entretien en Machine Learning avec Python

Score de silhouette

Graphique du score de silhouette

1 https://scikit-learn.org/stable/auto_examples/cluster/plot_kmeans_silhouette_analysis.html
S’entraîner aux questions d’entretien en Machine Learning avec Python

Méthode du coude

Graphique de la méthode du coude

1 https://www.datanovia.com/en/lessons/determining-the-optimal-number-of-clusters-3-must-know-methods/
S’entraîner aux questions d’entretien en Machine Learning avec Python

Fonctions pour choisir k

Fonction/méthode renvoie
sklearn.cluster.KMeans algorithme de clustering K-Means
sklearn.metrics.silhouette_score score entre -1 et 1 mesurant la stabilité des clusters
kmeans.inertia_ somme des carrés des distances aux centres de cluster les plus proches
range(start, stop) liste de valeurs à partir de start, jusqu'à mais sans inclure stop
list.append(kmeans.inertia_) ajoute la valeur d'inertie à la liste
S’entraîner aux questions d’entretien en Machine Learning avec Python

Passons à la pratique !

S’entraîner aux questions d’entretien en Machine Learning avec Python

Preparing Video For Download...