DBSCAN 클러스터링 알고리즘
기술노트
DBSCAN 클러스터링 알고리즘
DBSCAN(Density-Based Spatial Clustering of Applications with Noise)은 데이터가 밀집된 정도(밀도)에 따라 군집(클러스터)을 나누는 알고리즘이다.
쉽게 말해, 데이터가 많이 몰려 있는 곳을 하나의 군집으로 판단하는 방법이다.
기본 개념
군집화를 위해 다음 두 가지 값을 정한다.
- Epsilon(ε): 특정 점을 기준으로 주변을 확인할 반경
- MinPts: 하나의 군집을 이루기 위한 최소 점 개수
DBSCAN의 세 가지 핵심 요소
- 1. 중심점 (Core Point)
- 한 점을 중심으로 Epsilon 반경 안에 MinPts 개 이상의 점이 존재할 때 중심점이 된다.
- 예) 반경 5m 내에 4명 이상의 사람이 있다면 중심점이다.
- 2. 경계점 (Border Point)
- Epsilon 반경 내에 MinPts보다 적은 수의 점이 존재하는 경우 경계점이 된다.
- 군집의 외곽을 구성하며 중심점이 아니다.
- 예) 반경 5m 내에 3명 이하만 있다면 경계점이다.
- 3. 잡음점 (Noise Point)
- Epsilon 반경 내에 점이 전혀 없거나, 군집에서 떨어진 경우 잡음점으로 분류된다.
- 예) 반경 5m 내에 아무도 없다면 잡음점이다.
시각적 예시
중심점(Core Point) | 경계점(Border Point) | 잡음점(Noise Point) |
---|---|---|
군집의 중심 주변 점이 많음 |
군집의 경계 주변 점이 적음 |
군집 외부 주변 점이 없음 |
- 파란색: 중심점(Core Point)
- 노란색: 경계점(Border Point)
- 빨간색: 잡음점(Noise Point)
※ 이미지 업로드 방법: 위키 메뉴의 [파일 올리기]를 통해 이미지를 업로드한 후, 위와 같이 이미지 이름으로 불러오세요.
알고리즘 동작 과정 요약
- Epsilon 반경 안에 MinPts 이상의 점 존재 → 중심점 → 군집 형성 시작
- 중심점에서 연결된 점들 중 MinPts 미만 → 경계점 → 군집 확장 중지
- 어느 군집에도 연결되지 않음 → 잡음점 (군집에서 제외)
DBSCAN의 장점
- 군집의 개수를 사전에 정하지 않아도 된다.
- 다양한 형태의 군집을 찾아낼 수 있다.
- 이상치(잡음점) 탐지가 쉽다.
DBSCAN의 단점
- 반경(Epsilon) 설정에 민감하다.
- Epsilon이 너무 작으면 군집이 잘게 나누어진다.
- Epsilon이 너무 크면 군집이 하나로 뭉쳐버린다.
참고 자료
한 줄 요약
> DBSCAN은 데이터가 밀집된 부분을 중심으로 군집을 형성하는 밀도 기반 클러스터링 알고리즘이다.