Oblicz i zwizualizuj sumę kwadratów błędów
Teraz obliczysz sumę kwadratów błędów dla różnych liczb klastrów – od 1 do 10.
Skorzystasz ze znormalizowanych danych RFMT utworzonych w poprzednim ćwiczeniu, przechowywanych jako datamart_rfmt_normalized. Moduł KMeans z biblioteki scikit-learn jest już zaimportowany. Zainicjalizowaliśmy też pusty słownik do przechowywania sum kwadratów błędów: sse = {}.
Możesz swobodnie eksplorować dane w konsoli.
To ćwiczenie jest częścią kursu
Segmentacja klientów w Pythonie
Instrukcje do ćwiczenia
- Zainicjalizuj KMeans z
kklastrami i losowym ziarnem 1, a następnie dopasuj model do znormalizowanego zbioru danych. - Przypisz sumę kwadratów odległości do elementu
ksłownikasse. - Dodaj tytuł wykresu "The Elbow Method", etykietę osi X "k" oraz etykietę osi Y "SSE".
- Wykreśl wartości SSE dla każdego
kprzechowanego jako klucz w słowniku.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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()