군집분석, 레이블 없이 데이터의 구조를 찾는 법
군집분석이 유사성과 거리를 기준으로 데이터를 그룹화하는 원리, 계층적·K-평균·DBSCAN·GMM의 차이, 타당성 평가 지표와 실제 응용 사례를 정리한다.
2026-08-13 · 최초 발행 2025-05-23
레이블 없이 데이터 안의 구조를 찾는 방법
군집분석(Cluster Analysis)은 데이터 내에서 유사한 특성을 가진 개체들을 그룹화하는 비지도 학습 기법이다. 명확한 레이블이 없는 상태에서 데이터의 내재된 구조를 발견하는 것이 주요 목적이며, 일정한 기준에 따라 측정된 유사성(similarity)이나 거리(distance)를 기반으로 군집을 형성한다. 동일 군집 내 개체들은 최대한 유사하게, 서로 다른 군집 간에는 최대한 상이하게 구분해 데이터의 패턴을 파악하고 의미 있는 세그먼트로 분류함으로써 인사이트를 도출한다.
비지도 학습이 실무에 갖는 의미
군집분석은 사전 레이블링이 필요 없는 비지도 학습(Unsupervised Learning)의 대표적 기법으로, 탐색적 데이터 분석(EDA)의 핵심 도구로 쓰인다. 차원 축소와 데이터 압축 효과를 내고 이상치(Outlier) 탐지에도 효과적이며, 마케팅·이미지 처리·생물정보학·문서 분류 등 다양한 응용 분야에 적용할 수 있다. 다만 적절한 군집 수를 결정하는 것이 분석 성공의 관건이다.
전처리부터 결과 해석까지 거치는 단계들
먼저 변수를 선택하고 정규화·표준화하며 결측치와 이상치를 처리하는 데이터 준비 단계를 거친다. 다음으로 유클리디안 거리(Euclidean Distance)·맨해튼 거리(Manhattan Distance)·코사인 유사도(Cosine Similarity)·마할라노비스 거리(Mahalanobis Distance)·자카드 계수(Jaccard Coefficient) 등 유사성·거리 측정 방법을 선택한다. 계층적 군집화·분할적 군집화·밀도 기반 군집화·그리드 기반 군집화·모델 기반 군집화 중 적합한 군집화 알고리즘을 선택해 적용한 뒤, 엘보우 방법(Elbow Method)·실루엣 계수(Silhouette Coefficient)·갭 통계량(Gap Statistic)·덴드로그램(Dendrogram) 분석으로 최적 군집 수를 결정한다. 마지막으로 각 군집의 특성을 파악하고 군집 간 차이점을 분석해 비즈니스 인사이트를 도출하는 해석·프로파일링 단계로 마무리한다.
계층적·분할적·밀도 기반으로 갈리는 알고리즘 계열
계층적 군집화(Hierarchical Clustering)는 개체들을 순차적으로 결합하거나 분할해 트리 구조(덴드로그램)를 형성한다. 각 개체를 개별 군집으로 시작해 점차 병합하는 응집형(Agglomerative)과 전체를 하나의 군집으로 시작해 점차 분할하는 분할형(Divisive)이 있으며, 최근접 이웃 방식인 단일 연결법(Single Linkage), 최원접 이웃 방식인 완전 연결법(Complete Linkage), 평균 연결법(Average Linkage), 와드 연결법(Ward's Linkage) 등 연결 방법(Linkage Method)에 따라 결과가 달라진다.
K-평균 군집화(K-means Clustering)는 가장 널리 쓰이는 분할적 군집화 알고리즘이다. 사전에 군집 수(K)를 지정하고 각 군집의 중심(centroid)을 기준으로 데이터를 할당하는 방식으로, 구현이 간단하고 대용량 데이터에 효율적이지만 초기 중심점에 민감하고 구형(spherical) 군집에만 적합하다는 한계가 있다.
DBSCAN(Density-Based Spatial Clustering of Applications with Noise)은 밀도 기반 군집화의 대표적 알고리즘으로, 사전 군집 수 지정 없이 데이터 밀도에 기반해 자동으로 군집을 형성한다. 이웃 반경을 뜻하는 epsilon(ε)과 핵심 포인트로 간주되기 위한 최소 이웃 수인 minPts가 핵심 파라미터이며, 데이터 포인트는 ε 반경 내에 minPts 이상의 이웃을 가진 핵심 포인트(Core Point), 핵심 포인트는 아니지만 핵심 포인트의 이웃인 경계 포인트(Border Point), 어느 군집에도 속하지 않는 잡음 포인트(Noise Point)로 분류된다. 불규칙한 모양의 군집을 발견하고 이상치를 자동으로 검출할 수 있지만, 밀도가 다양한 군집에는 취약하고 고차원 데이터에는 적용하기 어렵다.
가우시안 혼합 모델(Gaussian Mixture Model, GMM)은 데이터가 여러 가우시안 분포의 혼합으로 생성되었다고 가정하는 확률 모델 기반 군집화 알고리즘이다. EM(Expectation-Maximization) 알고리즘으로 각 포인트가 각 가우시안에 속할 확률을 계산하는 E-step과 가우시안 파라미터(평균, 공분산, 가중치)를 재추정하는 M-step을 반복하며, 각 데이터 포인트가 여러 군집에 속할 확률을 제시하는 소프트 클러스터링을 제공한다. 다양한 모양의 군집을 식별하고 불확실성 정보를 제공하지만, 초기화에 민감하고 계산 복잡도가 높다.
군집이 잘 만들어졌는지 확인하는 지표들
내부 평가(Internal Evaluation)는 군집화 결과를 데이터 자체만으로 평가한다. -1(잘못된 군집)에서 1(뛰어난 군집) 사이 값을 갖는 실루엣 계수(Silhouette Coefficient), 높을수록 좋은 칼린스키-하라바즈 지수(Calinski-Harabasz Index), 낮을수록 좋은 데이비스-볼딘 지수(Davies-Bouldin Index), 높을수록 좋은 덜레-벤틀리 지수(Dunn Index)가 대표적이다.
외부 평가(External Evaluation)는 실제 레이블이 있을 때 군집화 결과와 비교한다. 랜드 지수(Rand Index), 조정된 랜드 지수(Adjusted Rand Index), 정규화된 상호 정보량(Normalized Mutual Information), 자카드 계수(Jaccard Coefficient)가 쓰인다.
고객 세그먼트부터 이미지 분할까지, 실제로 쓰인 사례
고객 세그먼테이션(Customer Segmentation)에서는 구매 패턴, 인구통계, 행동 특성 등을 기반으로 고객을 그룹화하고 RFM(Recency, Frequency, Monetary) 분석과 결합해 마케팅 전략을 수립한다. 온라인 쇼핑몰 A사는 K-means 군집화로 고객을 5개 세그먼트로 분류해 맞춤형 프로모션 전략을 개발했고, 매출 15% 향상을 달성했다.
이상 탐지(Anomaly Detection)에서는 DBSCAN이나 Isolation Forest 알고리즘으로 정상 패턴에서 벗어난 비정상적인 데이터 포인트를 식별한다. 금융 기관 B사는 DBSCAN을 이용한 군집분석으로 비정상적인 금융 거래 패턴을 탐지해 사기 거래 식별률을 30% 향상시켰다.
문서 클러스터링(Document Clustering)에서는 TF-IDF와 코사인 유사도를 결합해 내용 유사성에 기반한 문서를 그룹화한다. 뉴스 포털 C사는 계층적 군집화를 적용해 실시간 뉴스를 주제별로 자동 분류하고 사용자 경험을 개선했다.
이미지 세그먼테이션(Image Segmentation)에서는 K-means·Mean Shift 알고리즘으로 이미지 픽셀을 유사한 특성에 따라 그룹화한다. 의료 영상 분석 회사 D사는 K-means를 활용한 MRI 이미지 세그먼테이션으로 종양 식별 정확도를 향상시켰다.
군집 수를 정하는 일의 어려움과 놓치기 쉬운 것들
적절한 K값을 결정하는 일은 도메인 지식과 다양한 검증 방법이 필요할 만큼 주관적이다. 고차원에서는 거리 측정의 의미가 퇴색하는 차원의 저주(Curse of Dimensionality)도 걸림돌이 된다. 데이터 특성에 맞는 알고리즘을 선택하는 것이 중요하고, 스케일링·정규화 방식에 따라 결과가 크게 달라지므로 데이터 전처리의 영향도 크다. 군집 결과에 의미를 부여하는 해석은 결국 도메인 전문가의 영역이라는 점도 짚어야 한다.
딥 클러스터링과 온라인 군집화로 향하는 흐름
딥러닝과 군집화를 결합한 딥 클러스터링(Deep Clustering), 고차원 데이터의 관련 차원만 선택적으로 활용하는 서브스페이스 클러스터링(Subspace Clustering), 그래프 이론 기반의 스펙트럴 클러스터링(Spectral Clustering), 스트리밍 데이터에 적용 가능한 실시간 군집화인 온라인 군집화(Online Clustering), 일부 레이블 정보를 활용하는 준지도 군집화(Semi-supervised Clustering)가 최근 발전 방향으로 꼽힌다.