클러스터는 몇 개?

Python으로 배우는 군집 분석

Shaumik Daityari

Business Analyst

적절한 k를 찾는 방법

  • k-평균에서 올바른 클러스터 수(k)를 찾는 절대적인 방법은 없습니다
  • 엘보 방법

Python으로 배우는 군집 분석

왜곡 다시 보기

  • 왜곡(distortion): 점들이 클러스터 중심에서 떨어진 거리 제곱합
  • 클러스터 수가 늘수록 감소합니다
  • 클러스터 수가 점의 수와 같으면 0이 됩니다
  • 엘보 플롯: 클러스터 수와 왜곡의 선 그래프

Python으로 배우는 군집 분석

엘보 방법

  • 엘보 플롯: 클러스터 수와 왜곡의 플롯
  • 엘보 플롯은 데이터의 클러스터 수를 가늠하는 데 도움 됩니다
Python으로 배우는 군집 분석

파이썬으로 엘보 방법

# Declaring variables for use
distortions = []

num_clusters = range(2, 7)
# Populating distortions for various clusters
for i in num_clusters:
    centroids, distortion = kmeans(df[['scaled_x', 'scaled_y']], i)
    distortions.append(distortion)
# Plotting elbow plot data
elbow_plot_data = pd.DataFrame({'num_clusters': num_clusters,
                                'distortions': distortions})

sns.lineplot(x='num_clusters', y='distortions', 
             data = elbow_plot_data)
plt.show()
Python으로 배우는 군집 분석

Python으로 배우는 군집 분석

엘보 방법 사용에 대한 최종 정리

  • 최적의 k(클러스터 수)를 대략적으로만 제시합니다
  • 정확한 k(클러스터 수)를 항상 특정하진 못합니다
  • 기타 방법: 평균 실루엣, 갭 통계량
Python으로 배우는 군집 분석

다음: 실습

Python으로 배우는 군집 분석

Preparing Video For Download...