클러스터 수 선택

Python을 활용한 고객 세분화

Karolis Urbonas

Head of Data Science, Amazon

방법

  • 시각적 방법: 엘보 기준
  • 수학적 방법: 실루엣 계수
  • 실험과 해석
Python을 활용한 고객 세분화

엘보 기준 방법

  • 클러스터 수와 클러스터 내 제곱오차합(SSE)을 플로팅합니다 — 각 데이터 포인트와 클러스터 중심 간 제곱거리 합
  • 플롯에서 “엘보”를 찾습니다
  • 엘보: “최적” 클러스터 수를 나타내는 지점
Python을 활용한 고객 세분화

엘보 기준 방법

# 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()
Python을 활용한 고객 세분화

엘보 기준 방법

엘보 기준 차트:

Python을 활용한 고객 세분화

엘보 기준 방법

엘보 기준 차트:

Python을 활용한 고객 세분화

엘보 기준 사용하기

  • 엘보 지점 또는 그다음 지점을 선택하는 것이 가장 좋습니다
  • 지표로 사용하되 여러 해를 검증하십시오
  • 엘보 플롯은 datamart_rfm 기반입니다

Python을 활용한 고객 세분화

실험적 접근: 세그먼트 분석

  • 엘보 해 및 인접 k에서 클러스터링 구성
  • 속성 분석: 평균 RFM 값
  • 서로 비교하고 비즈니스 관점에서 가장 적합한 해 선택
Python을 활용한 고객 세분화

실험적 접근: 세그먼트 분석

  • 이전 2-클러스터 해
  • 동일한 정규화 RFM 데이터셋의 3-클러스터 해
Python을 활용한 고객 세분화

최적 클러스터 수를 찾아 봅시다!

Python을 활용한 고객 세분화

Preparing Video For Download...