GIS

QGIS: DBSCAN 클러스터링 기능 소개

유병혁 2023. 8. 20. 20:20

안녕하세요? 이번 글은 QGIS에서 제공하는 DBSCAN 클러스터링 기능을 소개해 보겠습니다. DBSCAN(Density-Based Spatial Clustering of Applications with Noise, 디비스캔)은 QGIS에서 제공하는 클러스터링 알고리즘 중 하나로, 주로 공간 데이터에서 밀도 기반 클러스터링을 수행하기 위해 사용됩니다.

 

DBSCAN은 데이터 포인트를 클러스터로 그룹화하는 알고리즘으로, 주변에 있는 데이터 포인트의 밀도를 기반으로 클러스터를 식별합니다.

 

데이터 포인트의 주변에 있는 다른 데이터 포인트의 수를 기반으로 클러스터를 형성하기 때문에 데이터 포인트의 밀도가 높은 영역을 클러스터로 정의하며, 이를 통해 밀도가 낮은 노이즈 데이터를 구분할 수 있습니다. 밀도가 낮은 지역에 있는 데이터 포인트는 클러스터에 속하지 않고 노이즈(Noise)로 처리됩니다.

 

여기서는 가축질병발생 포인트를 DBSCAN으로 클러스터링해 보겠습니다. DBSCAN은 데이터의 밀도를 기준으로 클러스터를 형성하기 때문에, 질병 발생이 높은 지역들이 자연스럽게 더 밀집된 클러스터로 형성될 것입니다. 이를 통해 지역별로 질병발생패턴을 식별하고, 고밀도 지역에서의 질병 확산 경향을 파악할 수 있습니다.

 

이 알고리즘에는 최소 클러스터 크기(Minimum cluster size)클러스터된 포인트간 최대 거리(Maximum distance between clustered points)의 두 가지 매개 변수가 필요합니다.

 

최소 클러스터 크기: 한 클러스터를 형성하기 위해 필요한 최소 데이터 포인트의 수를 나타냅니다. 이 값은 DBSCAN 알고리즘이 얼마나 작은 클러스터를 무시할지를 결정하는데 영향을 미칩니다.

1) Core Point (핵심 포인트): 주어진 데이터 포인트 주변에 있는 이웃 포인트의 개수가 "최소 클러스터 크기"보다 크거나 같다면, 해당 데이터 포인트는 핵심 포인트로 간주됩니다. 핵심 포인트는 클러스터의 중심 역할을 하며, 주변의 이웃 포인트들과 함께 같은 클러스터에 속하게 됩니다.

2) Border Point (경계 포인트): 주어진 데이터 포인트 주변의 이웃 포인트의 개수는 "최소 클러스터 크기"보다 작지만, 핵심 포인트에 속한 클러스터에 속하는 경우 해당 데이터 포인트는 경계 포인트로 분류됩니다.

 

클러스터 포인트 간 최대 거리: 한 클러스터 내의 데이터 포인트 간의 최대 거리를 나타냅니다. 이 값은 각 클러스터 내의 데이터 포인트가 얼마나 멀리 떨어져 있는지를 제한하는 역할을 합니다. 주어진 클러스터 내의 모든 데이터 포인트들은 서로의 거리가 "클러스터 포인트 간 최대 거리" 값보다 작거나 같아야 해당 클러스터에 속할 수 있습니다. 이를 통해 클러스터 내의 데이터 포인트들이 일정한 밀도와 근접성을 유지하게 됩니다.

 

경계 지점을 노이즈로 처리 (DBSCAN *): 만약 이 옵션이 선택되어 있다면, 클러스터의 경계에 있는 포인트들은 클러스터링되지 않은 포인트로 취급되며, 클러스터의 내부에 있는 포인트만이 클러스터링된 것으로 표시됩니다.