Wybór liczby klastrów

Segmentacja klientów w Pythonie

Karolis Urbonas

Head of Data Science, Amazon

Metody

  • Metody wizualne – kryterium łokcia
  • Metody matematyczne – współczynnik silhouette
  • Eksperymentowanie i interpretacja
Segmentacja klientów w Pythonie

Metoda kryterium łokcia

  • Wykres liczby klastrów względem sumy kwadratów odległości wewnątrzklastrowych (SSE) – suma kwadratów odległości każdego punktu od centrum klastra
  • Zidentyfikować „łokieć" na wykresie
  • Łokieć – punkt reprezentujący „optymalną" liczbę klastrów
Segmentacja klientów w Pythonie

Metoda kryterium łokcia

# Import key libraries
from sklearn.cluster import KMeans
import seaborn as sns
from matplotlib import pyplot as plt

# Fit KMeans and calculate SSE for each *k* sse = {} for k in range(1, 11): kmeans = KMeans(n_clusters=k, random_state=1) kmeans.fit(data_normalized) sse[k] = kmeans.inertia_ # sum of squared distances to closest cluster center
# Plot SSE for each *k* plt.title('The Elbow Method') plt.xlabel('k'); plt.ylabel('SSE') sns.pointplot(x=list(sse.keys()), y=list(sse.values())) plt.show()
Segmentacja klientów w Pythonie

Metoda kryterium łokcia

Wykres kryterium łokcia:

Segmentacja klientów w Pythonie

Metoda kryterium łokcia

Wykres kryterium łokcia:

Segmentacja klientów w Pythonie

Metoda kryterium łokcia

  • Najlepiej wybrać punkt łokcia lub następny
  • Traktować jako wskazówkę i testować wiele rozwiązań
  • Wykres łokcia zbudowany na datamart_rfm

Segmentacja klientów w Pythonie

Podejście eksperymentalne – analiza segmentów

  • Zbudować klastry dla rozwiązania łokcia i w jego pobliżu
  • Przeanalizować ich właściwości – średnie wartości RFM
  • Porównać i wybrać rozwiązanie najbardziej sensowne biznesowo
Segmentacja klientów w Pythonie

Podejście eksperymentalne – analiza segmentów

  • Poprzednie rozwiązanie z 2 klastrami
  • Rozwiązanie z 3 klastrami na tym samym znormalizowanym zbiorze RFM
Segmentacja klientów w Pythonie

Ćwiczmy znajdowanie optymalnej liczby klastrów!

Segmentacja klientów w Pythonie

Preparing Video For Download...