Sobes.tech
Middle — Senior

Какво е DBSCAN и как помага при откриването на аутлайъри?

sobes.tech AI

Отговор от AI

DBSCAN (Плътност-базирано пространствено групиране с шум) е алгоритъм за групиране, който групира точки от данни въз основа на плътността. Той идентифицира клъстери като области с висока плътност на точки и маркира точките, които не принадлежат към нито един клъстер, като отклонения (шум).

Алгоритъмът използва два основни параметъра:

  • eps — радиус на околността на точката;
  • minPts — минимален брой точки в околността eps за формиране на клъстер.

Ако точка в околността eps има по-малко от minPts съседи, тя се счита за отклонение. Така DBSCAN помага автоматично да се открият отклонения, като отделя редки или изолирани точки от плътните групи данни без необходимост от предварително задаване на броя на клъстерите.

Пример за използване в Python с библиотеката scikit-learn:

from sklearn.cluster import DBSCAN
import numpy as np

X = np.array([[1, 2], [2, 2], [2, 3], [8, 7], [8, 8], [25, 80]])

clustering = DBSCAN(eps=3, min_samples=2).fit(X)
print(clustering.labels_)
# Изход: етикети на клъстерите, -1 означава отклонение