K-Means는 가장 널리 사용되는 군집 알고리즘이지만 몇 가지 중요한 전제를 가지고 있습니다. 원형에 가까운 군집, 비슷한 크기, 그리고 미리 알고 있는 군집 수(k)입니다. 하지만 실제 데이터는 이러한 가정을 만족하지 않는 경우가 훨씬 많습니다.
이 글에서는 기본적인 군집분석만으로는 해결하기 어려운 상황에서 활용하는 기법들을 살펴봅니다. 앙상블과 소프트 할당, 밀도·계층, 그리고 신뢰성 있는 평가입니다.
Note
왜 알고리즘 하나로는 부족한가
K-Means는 구형(원형)에 가까운 군집을 가정하고 선형적인 경계로 군집을 구분합니다. 그래서 동심원이나 초승달 모양의 데이터에서는 좋은 결과를 얻기 어렵습니다. 데이터에 구조가 없어서가 아니라, 알고리즘이 데이터의 실제 형태를 충분히 반영하지 못하기 때문입니다.
왜 알고리즘 하나로는 부족한가
K-Means는 동심원을 직선 경계로 잘라버리지만(왼쪽), 밀도 기반·스펙트럴 방법은 실제 고리를 복원합니다(오른쪽).
밀도 기반 방법(DBSCAN, HDBSCAN)과 스펙트럴 클러스터링은 기존 분할 기반 알고리즘이 찾지 못하는 형태의 군집을 발견합니다. 데이터 특성에 따라 적절한 알고리즘을 선택하는 것이 중요하며, 간단한 의사결정 흐름만으로도 대부분의 경우를 해결할 수 있습니다:
데이터가 원형이고 잘 분리되어 있는가?
├─ 예 -> K-Means
└─ 아니오
노이즈가 많은가?
├─ 예 -> HDBSCAN
└─ 아니오
군집이 겹치는가?
├─ 예 -> GMM
└─ 아니오 -> Spectral / 계층적
서로 다른 방법(또는 시드)이 엇갈리는가? -> Ensemble
Tip
앙상블(합의) 클러스터링
단일 군집 결과에 의존하는 대신, 앙상블 클러스터링은 여러 번의 실행 결과를 결합합니다. 서로 다른 알고리즘·k·시드로 여러 개의 군집 결과를 만든 뒤, 이를 하나의 안정적인 최종 군집으로 병합합니다.
Note
실제 연구에서도 설문·행동 데이터에서 특정 초기값에 의존한 단일 K-Means보다, 여러 K-Means 실행의 합의 결과가 눈에 띄게 더 안정적인 경우가 많습니다.
동작 방식
- 여러 알고리즘과 설정으로 군집을 반복 수행 (알고리즘·k·초기값을 변화)
- Co-association Matrix(동시 군집화 행렬) 구성: 각 데이터 쌍이 같은 군집에 묶이는 빈도
- 그 행렬을 바탕으로 최종 군집을 생성
이 글 상단의 동시 군집화 행렬이 그 아이디어를 보여줍니다. 짙은 블록은 반복해서 같이 묶인 쌍들로, 모든 실행이 동의하는 구조입니다.
Tip
소프트·확률 기반 클러스터링
일반적인 군집분석(Hard Clustering)은 모든 데이터를 정확히 하나의 그룹에만 배정합니다. 하지만 예를 들어 한 고객이 "가격 민감형" 군집에 60%, "충성 단골" 군집에 40%의 확률로 속할 수 있습니다. 소프트 방법은 이러한 불확실성을 그대로 유지합니다.
- 가우시안 혼합 모델(GMM): 각 점이 군집별 소속 확률을 가짐
- 퍼지 C-Means: 소속도의 합이 1이며 부분적 소속을 표현
- 군집이 겹치거나 경계가 실제로 모호할 때 유용
밀도와 계층
HDBSCAN
일반 DBSCAN은 두 파라미터 ε(이웃 반경)와 MinPts 선택에 매우 민감합니다. 조금만 잘못 설정해도 군집이 합쳐지거나 사라집니다. HDBSCAN은 이러한 파라미터 설정 부담을 크게 줄여줍니다. 다양한 밀도를 계층적으로 탐색한 뒤, 그 범위에 걸쳐 안정성이 높은 군집만 최종 결과로 선택합니다.
실무적 이점은 두 가지입니다. 밀도가 서로 다른 군집을 찾을 수 있고(DBSCAN의 단일 ε로는 불가능), 파라미터 튜닝 부담이 훨씬 적습니다. 그래서 군집 수를 미리 모르고 노이즈가 예상될 때 매우 좋은 선택지가 됩니다.
계층적 / 다층 분석
계층적 클러스터링은 트리 구조를 만들어, 군집 수(k)를 미리 확정하지 않고도 여러 수준에서 구조를 읽을 수 있습니다. 위쪽에는 큰 세그먼트가, 세부적으로 내려갈수록 세밀한 하위 그룹이 나타납니다.
군집 평가: 내부 vs 외부
알고리즘이 결과를 냈다고 해서 그 군집화가 좋다는 뜻은 아닙니다. 군집 검증은 두 계열로 나뉘며, 어느 쪽을 쓰는지가 숫자 자체만큼 중요합니다.
내부 평가 (정답 라벨 불필요)
내부 지표는 데이터의 구조, 즉 군집이 얼마나 촘촘하고 얼마나 잘 분리됐는지만으로 군집화를 판단합니다. 정답 라벨이 없을 때(비지도 작업의 일반적인 경우) 사용합니다.
- 실루엣(Silhouette): 각 데이터의 응집도와 분리도 비교 (높을수록 좋음)
- Davies-Bouldin: 군집 간 평균 중첩 (낮을수록 좋음)
외부 평가 (정답 라벨 필요)
외부 지표는 군집화 결과를 알려진 정답과 비교합니다. 실제 그룹을 이미 아는 데이터에서 알고리즘의 성능을 비교할 때 유용합니다.
- 조정 랜드 지수(ARI): 우연을 보정한 정답과의 일치도
- 정규화 상호정보(NMI): 정답 라벨과 공유하는 정보량
| 유형 | 지표 | 정답 필요? |
|---|---|---|
| 내부 평가 | Silhouette, Davies-Bouldin | 아니오 |
| 외부 평가 | ARI, NMI | 예 |
Watch out
SKARI로 하기
SKARI가 앙상블을 대신 실행합니다. 여러 알고리즘과 설정을 병렬로 수행하고, 합의 결과와 평가 지표를 나란히 보여주므로 복잡한 실행 코드를 작성하지 않아도 됩니다.
- 같은 데이터에 K-Means, GMM, HDBSCAN 등을 자동 실행
- 합의를 구성하고 지표 일치도를 보고
- 알고리즘 간 결과가 다른 부분을 표시해 어떤 군집을 신뢰할지 알려줌
Takeaway
자주 묻는 질문
앙상블 클러스터링이 항상 더 좋나요?
항상은 아닙니다. 연산량이 늘고 복잡도가 커지기 때문입니다. 단일 실행 결과가 불안정하거나 실제 군집 형태를 모를 때 사용하세요.
소프트 클러스터링은 언제?
경계가 실제로 겹쳐서 하나의 하드 라벨이 오해를 부를 때 사용합니다. 예를 들어 겹치는 고객 페르소나 같은 경우입니다.
K-Means와 HDBSCAN 중?
군집이 둥글고 k를 알 때는 K-Means, 밀도가 다르거나 노이즈가 있거나 k를 모를 때는 HDBSCAN입니다.
결론
고급 군집분석의 핵심은 특정 알고리즘 하나가 아니라, 여러 방법을 결합하고 신뢰성 있게 검증하는 데 있습니다. 전체 워크플로는 하나의 순환 구조를 따릅니다:
데이터 특성
-> 알고리즘 선택
-> 평가 (내부 / 외부)
-> 안정성 확인 (실행/방법이 동의하는가?)
앙상블은 안정성을 높이고, 소프트 방법은 불확실성을 표현하며, 좋은 지표는 신뢰성을 뒷받침합니다. 실제 연구에서는 여러 알고리즘과 여러 시드에서 일관되게 발견되는 군집이야말로 신뢰할 수 있는 군집입니다.
Takeaway
군집분석 완벽 가이드
기초: K-Means, DBSCAN, SOM
데이터 정규화 가이드
이 모든 것 전에 반드시 잡아야 할 스케일링
SKARI로 시작하기
첫 군집분석 프로젝트를 5분 안에