IniziaInizia gratis

Determina il numero ottimale di cluster

Qui userai il metodo del gomito (elbow criterion) per individuare il numero ottimale di cluster, ovvero il punto in cui la diminuzione della somma degli errori al quadrato diventa marginale. È un passaggio importante per ottenere una stima numerica di riferimento da cui iniziare a fare test. Itererai su più valori di k e lancerai un algoritmo KMeans per ciascuno, quindi traccerai gli errori rispetto a ogni k per identificare il "gomito", dove la riduzione degli errori rallenta.

Il modulo KMeans è caricato da sklearn.cluster, la libreria seaborn è caricata come sns e il modulo matplotlib.pyplot è caricato come plt. Inoltre, l'insieme di dati scalato è caricato come wholesale_scaled_df in un DataFrame di pandas.

Questo esercizio fa parte del corso

Machine Learning per il marketing con Python

Visualizza il corso

Istruzioni dell'esercizio

  • Crea un dizionario sse vuoto.
  • Esegui il fit di un algoritmo KMeans su valori di k tra 1 e 11 e salva gli errori nel dizionario sse.
  • Aggiungi il title al grafico.
  • Crea uno scatter plot con le chiavi sull'asse X e i valori sull'asse Y e visualizza il grafico.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Create empty sse dictionary
sse = {}

# Fit KMeans algorithm on k values between 1 and 11
for k in ___(1, 11):
    kmeans = ___(n_clusters=___, random_state=333)
    kmeans.___(wholesale_scaled_df)
    sse[k] = kmeans.inertia_

# Add the title to the plot
plt.___('Elbow criterion method chart')

# Create and display a scatter plot
sns.pointplot(x=list(sse.___()), y=list(sse.___()))
plt.___()
Modifica ed esegui il codice