CommencezCommencez gratuitement

Calculer et tracer la somme des carrés des erreurs

Vous allez maintenant calculer la somme des carrés des erreurs pour différents nombres de grappes allant de 1 à 10.

Vous utiliserez les données RFMT normalisées que vous avez créées à l'exercice précédent, stockées dans datamart_rfmt_normalized. Le module KMeans de scikit-learn est aussi importé. De plus, nous avons initialisé un dictionnaire vide pour stocker la somme des carrés des erreurs, sse = {}.

N'hésitez pas à explorer les données dans la console.

Cette activité fait partie du cours

Segmentation de la clientèle en Python

Voir le cours

Instructions de l’exercice

  • Initialisez KMeans avec k grappes et l'état aléatoire 1, puis ajustez KMeans sur l'ensemble normalisé.
  • Attribuez la somme des distances au carré à l'élément k du dictionnaire sse.
  • Ajoutez le titre du graphique « The Elbow Method », l'étiquette de l'axe des X « k » et l'étiquette de l'axe des Y « SSE ».
  • Tracez les valeurs de SSE pour chaque k stocké comme clés dans le dictionnaire.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Fit KMeans and calculate SSE for each k between 1 and 10
for k in range(1, 11):
  
    # Initialize KMeans with k clusters and fit it 
    kmeans = ____(____=____, ____=1 ).____(datamart_rfmt_normalized)
    
    # Assign sum of squared distances to k element of the sse dictionary
    ____[____] = kmeans.____   

# Add the plot title, x and y axis labels
plt.____('The Elbow Method')
plt.____('____')
plt.____('____')

# Plot SSE values for each k stored as keys in the dictionary
sns.____(x=list(sse.____()), y=list(sse.____()))
plt.show()
Modifier et exécuter le code