Sobes.tech
Middle — Senior

Cos'è DBSCAN e come aiuta a trovare gli outlier?

sobes.tech AI

Risposta dell'AI

DBSCAN (Clustering Spaziale Basata sulla Densità con Rumore) è un algoritmo di clustering che raggruppa i punti dati in base alla densità. Evidenzia i cluster come aree con alta densità di punti e segna i punti che non appartengono a nessun cluster come valori anomali (rumore).

L'algoritmo utilizza due parametri principali:

  • eps — raggio della vicinanza del punto;
  • minPts — numero minimo di punti nella vicinanza eps per formare un cluster.

Se un punto nella vicinanza eps ha meno di minPts vicini, viene considerato un valore anomalo. In questo modo, DBSCAN aiuta a individuare valori anomali, separando automaticamente punti rari o isolati da gruppi di dati densi senza dover definire in anticipo il numero di cluster.

Esempio di utilizzo in Python con la libreria 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_)
# Output: etichette dei cluster, -1 indica un valore anomalo