Escolhendo o número de clusters

Segmentação de Clientes em Python

Karolis Urbonas

Head of Data Science, Amazon

Métodos

  • Métodos visuais: critério do cotovelo
  • Métodos matemáticos: coeficiente de silhueta
  • Experimentação e interpretação
Segmentação de Clientes em Python

Método do cotovelo

  • Plote o número de clusters vs. SSE (soma dos erros quadráticos intra-cluster) - soma das distâncias quadradas de cada ponto ao centro do cluster
  • Identifique um “cotovelo” no gráfico
  • Cotovelo: ponto que representa um número “ótimo” de clusters
Segmentação de Clientes em Python

Método do cotovelo

# 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()
Segmentação de Clientes em Python

Método do cotovelo

O gráfico do critério do cotovelo:

Segmentação de Clientes em Python

Método do cotovelo

O gráfico do critério do cotovelo:

Segmentação de Clientes em Python

Usando o método do cotovelo

  • Melhor escolher o ponto do cotovelo ou o seguinte
  • Use como guia, mas teste várias soluções
  • Gráfico do cotovelo feito com datamart_rfm

Segmentação de Clientes em Python

Abordagem experimental - analisar segmentos

  • Construa clusters no cotovelo e ao redor
  • Analise as propriedades: médias de RFM
  • Compare e escolha a que faz mais sentido para o negócio
Segmentação de Clientes em Python

Abordagem experimental - analisar segmentos

  • Solução anterior com 2 clusters
  • Solução com 3 clusters no mesmo RFM normalizado
Segmentação de Clientes em Python

Vamos praticar!

Segmentação de Clientes em Python

Preparing Video For Download...