選擇叢集數量

Python 的客群分群

Karolis Urbonas

Head of Data Science, Amazon

方法

  • 視覺法-肘部準則
  • 數學法-silhouette 係數
  • 實驗與詮釋
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 的客群分群

實驗法-分析分群

  • 在肘部解附近建立多個叢集模型
  • 分析其特性:平均 RFM 值
  • 互相比較,選最符合商業意義者
Python 的客群分群

實驗法-分析分群

  • 先前的 2 叢集解
  • 對同一標準化 RFM 資料集的 3 叢集解
Python 的客群分群

一起來練習吧!

Python 的客群分群

Preparing Video For Download...