통계 실험실 차트
넘스탯 로고
넘스탯
LEARN · SIMULATE · VERIFY

확률부터 LLM까지, 원리부터 제대로 배우는 자기주도 학습 플랫폼

로그인
학습 메뉴
도움말

K-Means 종합 실습실

"K가 몇 개야?" → Elbow와 Silhouette로 객관적으로 결정

원하는 개념·랩·가이드를 검색해보세요

Ctrl K
기계학습 이론으로상세 이론 학습

비슷한 것끼리 묶어라 — 단, 정답은 아무도 알려주지 않는다

고객을 몇 개의 그룹으로 나누고 싶은데, 어떤 그룹이 정답인지는 아무도 모릅니다. K-means는 정답 없이 비슷한 데이터끼리 K개의 군집으로 묶습니다. 다만 'K를 몇으로 할지'와 '어디서 시작할지'가 결과를 좌우하죠. 직접 조작하며 그 민감함을 확인해 보세요.
이 페이지에서 배우고 나면
  • 데이터가 K개의 군집으로 나뉘는 과정을 단계별로 관찰할 수 있습니다.
  • K를 바꾸면 결과가 어떻게 달라지고, 적절한 K를 어떻게 고르는지(엘보우 등) 이해할 수 있습니다.
  • 초기 중심점 위치에 따라 결과가 달라질 수 있음을 직접 확인할 수 있습니다.
📉 Elbow Method — WCSS의 꺾이는 지점

WCSS(K) = Σᵢ Σx∈Cᵢ ‖x − μᵢ‖²는 각 cluster 내 점-중심 거리의 제곱합입니다. K가 증가하면 항상 감소하지만, 감소율이 급격히 줄어드는 지점("팔꿈치")이 자연스러운 K입니다.

Elbow Method — WCSS의 꺾이는 지점이 최적 KElbow Method — WCSS의 꺾이는 지점이 최적 K
Silhouette 정의 — a(i), b(i), s(i)

Rousseeuw (1987)의 Silhouette는 점 i에 대해 두 거리를 비교합니다: a(i)는 자기 cluster 내 평균 거리(응집), b(i)는 가장 가까운 다른 cluster까지 평균 거리(분리). s(i) = (b(i) − a(i)) / max(a(i), b(i))는 [−1, 1] 범위로 1에 가까울수록 잘 분리된 cluster입니다.

Silhouette Coefficient 정의 — Rousseeuw (1987)Silhouette Coefficient 정의 — Rousseeuw (1987)
Silhouette Plot — 클래식 시각화

각 점의 s(i)를 cluster별로 정렬해 가로 막대로 그린 것이 Silhouette Plot입니다. "두께가 균일한 칼날 모양"이 좋은 클러스터링, 어떤 cluster가 짧거나 s(<0)인 점이 많으면 K 조정 또는 다른 알고리즘이 필요합니다.

Silhouette Plot — Rousseeuw의 클래식 시각화Silhouette Plot — Rousseeuw의 클래식 시각화
K별 Silhouette Score 비교

여러 K로 K-Means를 돌린 뒤 평균 Silhouette Score를 비교합니다. 최댓값을 갖는 K가 권장됩니다. Kaufman & Rousseeuw (1990)의 해석 기준: >0.7 강한 구조 / 0.5~0.7 합리적 / 0.25~0.5 약함 / <0.25 구조 거의 없음.

K별 Silhouette Score — 최댓값을 갖는 K가 권장K별 Silhouette Score — 최댓값을 갖는 K가 권장
Elbow + Silhouette 결합 평가

두 지표가 같은 K를 가리킬 때 결정의 신뢰도가 높아집니다. 다를 때는 데이터 구조 점검·도메인 지식·Gap Statistic(Tibshirani et al. 2001) 등의 보조 지표를 추가로 사용합니다.

Elbow + Silhouette 결합 — 일치 시 신뢰도 ↑Elbow + Silhouette 결합 — 일치 시 신뢰도 ↑
예측 먼저 — 실험 전에 답을 정해 보세요
예측 → 실험 → 확인

정답을 몰라도 괜찮습니다 — 먼저 예측을 정해야 시뮬레이션 결과가 기억에 남습니다. 예측을 고른 뒤 아래 시뮬레이션으로 직접 확인하고, 그다음 결과를 열어 보세요.

1. K-Means의 중심점(centroid)은 어디서 출발할까요?
2. 군집 수 K를 아주 크게(데이터 수에 가깝게) 잡으면 어떻게 될까요?
로그인하면 예측 기록이 계정에 저장됩니다

어느 기기에서든 이어서 학습하고, 오답 기반 복습 추천을 받을 수 있습니다.

카카오로 시작하기네이버로 시작하기구글로 시작하기
회원가입 절차 없음 — 닉네임만 저장하며, 이메일·연락처는 수집하지 않습니다.
K-Means 평가 인터랙티브 — Elbow + Silhouette

데이터셋을 선택하고 K=1~10 범위에서 두 평가지표를 동시 비교하세요. 두 방법이 같은 K를 가리키면 신뢰도가 높습니다. (Rousseeuw 1987의 Silhouette 정의 사용)

데이터셋 (실제 군집 수)
K 최댓값 = 10
Elbow (WCSS)
Silhouette Score
Elbow 권장 K = 2
Silhouette 권장 K = 4 (s = 0.781)
품질: 강한 구조
두 방법이 다른 K — 데이터 구조 검토 필요
실측 요약 — 이 실습이 보여주는 것

위쪽 평가 랩은 시드 고정 합성 데이터(3/4/5군집·무작위, 각 200점)에 K=1~10의 K-Means(k-means++ 초기화)를 전부 돌려 Elbow(WCSS)와 Silhouette 두 평가지표를 동시 비교하고, 아래 알고리즘 랩은 할당→중심 갱신 반복과 중심점 이동을 애니메이션으로 보여주는 실험입니다.

  • '3 군집' 데이터 실측: WCSS가 K=2→3에서 1,793→164로 급락하고 silhouette도 K=3에서 최대 0.828("강한 구조") — Elbow와 Silhouette이 정답 K=3에서 일치한다. 반면 기본 '4 군집' 데이터에서는 Silhouette은 정답 K=4(0.781)를 찾지만 단순 Elbow 휴리스틱은 K=2를 가리켜 두 방법이 갈린다 — "다르면 검토 필요" 경고가 기본 화면에서 실제로 재현된다
  • 구조가 전혀 없는 '무작위' 데이터에서도 silhouette 최댓값은 0.368 — 억지로 나누면 나뉘지만 "약한 구조" 판정이 나온다. 같은 데이터의 WCSS는 K를 올리면 3,069(K=1)→536(K=8)으로 기계적으로 계속 줄어들어, WCSS 최소화만으로는 K를 정할 수 없다
  • 알고리즘 랩의 수렴 판정은 "모든 중심점의 이동 거리 < 0.01" — 네 덩어리가 뚜렷한 데이터에서도 기본 K=3을 주면 두 덩어리가 강제로 한 군집으로 묶인다. K는 데이터가 알려주는 값이 아니라 사용자가 정하는 값이고, 무작위 초기화 때문에 실행마다 결과가 달라질 수 있다

바로잡는 오개념: "관성(WCSS)이 낮을수록 좋은 군집화이니 K는 클수록 좋다"는 착각 — WCSS는 K가 늘면 기계적으로 줄어 K=데이터 수에서 0이 되지만, 점 하나짜리 군집은 아무것도 요약하지 못한다. 그래서 Elbow의 꺾임과 Silhouette의 최댓값 같은 별도 기준으로 K를 고른다.

🎮 K-Means 알고리즘 시각화 랩 (Lloyd's Algorithm)

위 평가지표로 K를 정한 뒤, 실제 K-Means 알고리즘이 step-by-step으로 어떻게 수렴하는지 아래에서 시각적으로 확인하세요.

AI 튜터에게 물어보기
베타

— 정답 대신 힌트로 유도합니다. 지금 화면의 실험 상태를 알고 답해요.

예: “방금 결과가 이론과 다른데 왜죠?”, “이 값을 올렸는데 왜 반대로 변하죠?”

AI 답변은 부정확할 수 있습니다. 핵심 개념은 반드시 시뮬레이션 실측으로 확인하세요. 질문 0/5 · 하루 질문 한도가 있습니다
K 선택 휴리스틱 비교
Elbow Method

장점: 직관적, 계산 빠름. 단점: "꺾이는 지점"이 주관적이고, 매끄러운 데이터에서는 명확한 elbow가 없음.

O(nK)
주관적
Silhouette Score

장점: 객관적 수치 비교 가능. 단점: O(n²) 거리 계산으로 느림. 큰 데이터에서는 샘플링 사용.

O(n²)
객관적
Gap Statistic

Tibshirani et al. (2001) — null reference 분포와 WCSS 차이를 통계적으로 비교. 가장 엄밀하지만 비용 큼.

통계적
비싼 계산
BIC / AIC (GMM)

확률 모델 가정 시 적용 가능. K-Means는 결정론적이라 직접 적용 불가, GMM에서는 표준.

GMM 전용
직접 해보기 — 실습 과제
  1. 정답 K 맞히기: '4 군집' 선택. Elbow와 Silhouette 모두 K=4를 가리키는지 확인
  2. 구조 없는 데이터의 한계: '무작위' 선택. Silhouette 점수가 모든 K에서 낮게 유지 → K-Means가 적합하지 않은 신호
  3. 두 방법 비교: 동일 데이터에서 Elbow와 Silhouette의 권장 K가 다른 경우가 있다면 — 어느 쪽을 따를지 결정 근거 정리
  4. 알고리즘 시각화: 평가지표로 K=4를 선택한 뒤 아래 K-Means Lab에서 K=4로 실제 알고리즘이 어떻게 수렴하는지 step-by-step 관찰
📖 더 깊이 학습하기
  • Rousseeuw (1987): "Silhouettes: a graphical aid to the interpretation and validation of cluster analysis", Journal of Computational and Applied Mathematics
  • Kaufman & Rousseeuw (1990): "Finding Groups in Data" — Silhouette 해석 기준 표준 교재
  • Tibshirani, Walther, Hastie (2001): "Estimating the number of clusters in a data set via the gap statistic", JRSS-B
  • Hastie, Tibshirani, Friedman, ESL (2009) — Ch.14.3: 클러스터링 평가 종합
  • scikit-learn 문서: sklearn.metrics.silhouette_score, KMeans