[클러스터링] DB SCAN 클러스터링

YUNA AN·2024년 8월 25일

Chat GPT로 공부하기

목록 보기
3/14

1. 수업 내용 정리

👩‍🏫 DBSCAN 클러스터링이란?

DBSCAN이란 데이터가 위치하는 공간 밀집도를 기준으로 하는 클러스터링 기법입니다. DBSCAN은 보더 포인트들을 연결하며 클러스터를 정의하고, 그 외의 데이터들은 노이즈로 처리합니다. DBSCAN의 대표적인 파라미터에는 엡실론과 미니멈 포인츠가 존재하는데요, 엡실론은 코어 포인트를 기준으로 하는 반지름의 길이며, 미니멈 포인츠는 코어 포인트를 기준으로 엡실론 거리 내에 들어오는 최소 데이터의 개수입니다. 엡실론 값이 커질수록 클러스터의 개수가 줄고 클러스터의 크기는 커지며 노이즈 데이터는 줄어드는 경향이 있습니다. 반대로 미니멈 포인츠의 값이 커질수록 코어포인트가 될 수 있는 데이터의 수가 줄어들게 되며 이로 인해 클러스터가 작아지고 클러스터의 개수가 많아집니다.

👩‍🏫 DBSCAN 클러스터링 과정

DBSCAN클러스터링의 과정은 다음과 같습니다. 보통 미니멈 포인츠 값은 차원(컬럼의)수 +1 부터 차원 x 2의 값 사이의 값으로 정합니다. 예를 들어 2개의 컬럼이 있는 경우 3 또는 4를 미니멈 포인츠의 값으로 사용할 수 있습니다. 다음에는 엡실론 값을 정하는 과정인데요, 보통 k-distance plot(데이터 포인트에서 k번째로 가까운 점까지의 거리를 시각화)을 그린 뒤 기울기가 급격하게 변화하는 지점의 값을 엡실론 값으로 정합니다. 이후 DBSCAN 모델에 엡실론과 미니멈 포인츠 값을 지정하여 데이터를 학습시키면 적절한 개수의 클러스터로 클러스터링한 결과를 반환해줍니다.

2. 챗지피티한테 질문

질문 :
DB SCAN 클러스터링 기법에서도 inertia 값이 활용 돼?

DBSCAN(밀도 기반 클러스터링 기법)에서는 inertia 값이 직접적으로 활용되지 않습니다. Inertia는 KMeans와 같은 중심 기반 클러스터링 기법에서 클러스터 내부의 응집도를 측정하기 위해 사용됩니다. 그러나 DBSCAN은 클러스터의 밀도에 기반한 알고리즘이므로 inertia와 같은 중심 기반 지표는 이 알고리즘의 성격과 맞지 않습니다.

DBSCAN과 Inertia의 차이

  • KMeans의 Inertia:
    KMeans는 클러스터의 중심(centroid)을 기준으로 클러스터링을 수행하며, 각 데이터 포인트가 할당된 중심점까지의 거리를 기반으로 응집도를 측정합니다. 이때, inertia는 이 거리를 제곱하여 합산한 값으로, 클러스터의 품질을 평가하는 데 사용됩니다.
  • DBSCAN:
    DBSCAN(Density-Based Spatial Clustering of Applications with Noise)은 데이터 포인트 간의 밀도를 기준으로 클러스터를 형성합니다. 즉, 밀집된 영역의 데이터 포인트를 클러스터로 그룹화하고, 밀도가 낮은 포인트를 잡음(noise) 또는 이상치(outlier)로 간주합니다.
    DBSCAN에서는 클러스터의 중심이나 응집도를 계산하지 않기 때문에, inertia와 같은 지표는 사용할 수 없습니다.

DBSCAN에서의 평가 지표

DBSCAN에서 클러스터링 결과를 평가하기 위해서는 다른 지표들을 사용해야 합니다. 예를 들어:

  • 실루엣 계수(Silhouette Score): 클러스터 내의 데이터 포인트 간의 거리와 클러스터 간의 거리의 비율을 측정하여 클러스터링 품질을 평가합니다.
  • Adjusted Rand Index (ARI), Fowlkes-Mallows Index (FMI): 클러스터링의 정확도를 평가하는 지표입니다.
    노이즈 비율: DBSCAN의 결과에서 얼마나 많은 데이터 포인트가 노이즈로 식별되었는지를 평가할 수 있습니다.

따라서, DBSCAN에서는 inertia 값 대신, 밀도 기반 클러스터링에 더 적합한 지표를 사용하여 결과를 평가해야 합니다.

profile
Supply Chain Planning Specialist in Medical/Healthcare

0개의 댓글