Určení optimálního počtu clusterů
V tomto cvičení použiješ metodu loketního kritéria (elbow criterion) k určení optimálního počtu clusterů – tedy bodu, kde se pokles součtu čtverců chyb stává zanedbatelným. Jde o důležitý krok, který ti matematicky napoví, kolik clusterů má smysl testovat. Projdeš několik hodnot k a pro každou spustíš algoritmus KMeans, pak vykreslíš chyby proti jednotlivým hodnotám k a najdeš „loket" – místo, kde se pokles chyb začíná zpomalovat.
Modul KMeans je načtený ze sklearn.cluster, knihovna seaborn je dostupná jako sns a modul matplotlib.pyplot jako plt. Škálovaná datová sada je načtená jako wholesale_scaled_df ve formě pandas DataFrame.
Toto cvičení je součástí kurzu
Machine Learning for Marketing in Python
Pokyny k cvičení
- Vytvoř prázdný slovník
sse. - Natrénuj algoritmus
KMeanspro hodnoty k od 1 do 11 a chyby ukládej do slovníkusse. - Přidej do grafu nadpis.
- Vytvoř bodový graf s klíči na ose X a hodnotami na ose Y a graf zobraz.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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.___()