출퇴근길에 공부하는 머신러닝
이번 편은 밀도 기반의 클러스터링 방법론 중의 하나인 HDBSCAN(Hierarchical Density-Based Spatial Clustering of Applications with Noise)에 대해 알아보도록 하겠다. HDBSCAN은 DBSCAN의 확장형으로, 특히 데이터의 계층적 구조를 반영할 수 있으며, 다양한 밀도를 가진 데이터 포인트들 사이에서도 클러스터를 더 정확하게 식별할 수 있는 능력을 가지고 있다.
로버스트 거리 측정: 데이터 포인트 간의 거리를 측정하는 방법으로, 이상치나 극단적인 값의 영향을 최소화하여 일관된 클러스터링을 도모하는 견고한 방식이다.
로컬 밀도: 특정 데이터 포인트 주변의 다른 데이터 포인트들의 집중도를 나타내는 척도로, 해당 지역의 데이터 분포 특성을 반영한다.
전통적인 DBSCAN 알고리즘은 데이터의 로컬 밀도를 반영하지 못하는 한계를 가지고 있다. 반면, HDBSCAN은 이러한 제약을 극복하고 각 데이터 포인트의 로컬 밀도에 따라 클러스터를 동적으로 형성한다. 이 과정에서 epsilon 파라미터는 더 이상 필요하지 않게 되며, 대신 데이터의 공간적 밀도를 기반으로 클러스터링을 진행한다.
공간 변환 : 데이터의 밀도/희소성에 따라 공간을 변환한다. 이를 통해 데이터 포인트 간의 거리가 밀도를 반영하도록 조정한다.
최소 스패닝 트리 생성 : 변환된 공간에서 가중치가 적용된 그래프의 최소 스패닝 트리를 구축한다. 이 트리는 클러스터 계층 구조의 기초가 된다.
클러스터 계층 구조 생성 : 로버스트 거리 측정 기반으로 연결된 구성 요소의 클러스터 계층 구조를 구축한다. 이는 클러스터가 어떻게 서로 연결되어 있는지를 보여주는 구조이다.
클러스터 계층 축소 : 최소 클러스터 크기를 기반으로 클러스터 계층을 축소한다. 이 단계에서 너무 작은 클러스터는 제거되며, 노이즈로 분류될 수 있다.
안정된 클러스터 추출 : 축소된 트리에서 안정된 클러스터를 식별하여 최종 클러스터를 결정한다.
고차원 데이터 처리 : HDBSCAN은 다양한 밀도의 클러스터를 식별할 수 있어, 복잡한 데이터 세트에서도 유용하게 사용된다.
파라미터 의존성 감소 : epsilon 대신 데이터의 내재된 구조를 사용하여 클러스터링을 수행하기 때문에, 사용자가 임의로 정해야 하는 파라미터의 수가 줄어든다.
노이즈 및 이상치 감지 : 클러스터링 과정에서 자연스럽게 노이즈와 이상치를 식별한다.
HDBSCAN은 클러스터링 알고리즘으로서 강력한 유연성과 높은 정확도를 제공한다. 특히 로컬 밀도의 차이를 감안할 때, 기존의 DBSCAN방식보다 더 정교한 클러스터링 결과를 얻을 수 있다. 하지만 모든 기술처럼, HDBSCAN도 모든 시나리오에 적합한 만능 알고리즘이 아니므로, 데이터의 특성과 프로젝트의 요구 사항을 고려하여 적절한 클러스터링 방법을 선택해야 할 것이다.