CommencerCommencer gratuitement

Calculer et tracer la somme des erreurs au carré

Vous allez maintenant calculer la somme des erreurs au carré pour un nombre de clusters allant de 1 à 10.

Vous utiliserez les données RFMT normalisées créées à l’exercice précédent, stockées dans datamart_rfmt_normalized. Le module KMeans de scikit-learn est déjà importé. Nous avons également initialisé un dictionnaire vide pour stocker les sommes des erreurs au carré : sse = {}.

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

Cet exercice fait partie du cours

Customer Segmentation in Python

Afficher le cours

Instructions

  • Initialisez KMeans avec k clusters et random_state=1, puis entraînez KMeans sur l’ensemble normalisé.
  • Affectez la somme des distances au carré à l’élément k du dictionnaire sse.
  • Ajoutez le titre du graphique "The Elbow Method", le label de l’axe des X "k" et le label 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 cet exemple de code.

# 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