Bestimme die optimale Anzahl an Clustern
Hier verwendest du das Elbow-Kriterium, um die optimale Anzahl an Clustern zu finden, ab der die Abnahme der quadrierten Fehler-Summe nur noch marginal ist. Das ist ein wichtiger Schritt, um eine mathematisch begründete grobe Anzahl von Clustern zu erhalten, mit der du starten kannst. Du iterierst über mehrere k-Werte für die Clusteranzahl und führst für jeden ein KMeans-Verfahren aus. Anschließend plottest du die Fehler gegen jedes k, um den „Elbow“ zu identifizieren, also den Punkt, an dem die Fehlerabnahme abflacht.
Das KMeans-Modul ist aus sklearn.cluster geladen, die Bibliothek seaborn ist als sns geladen, und das Modul matplotlib.pyplot ist als plt geladen. Außerdem ist der skalierte Datensatz als wholesale_scaled_df als pandas DataFrame geladen.
Diese Übung ist Teil des Kurses
Machine Learning für Marketing mit Python
Anleitung zur Übung
- Erstelle ein leeres
sse-Dictionary. - Fitte ein
KMeans-Verfahren auf k-Werte zwischen 1 und 11 und speichere die Fehler imsse-Dictionary. - Füge dem Plot den Titel hinzu.
- Erstelle ein Streudiagramm mit den Keys auf der X-Achse und den Values auf der Y-Achse und zeige die Grafik an.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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.___()