Middle — Senior
O que é o DBSCAN e como ele ajuda a encontrar outliers?
sobes.tech IA
Resposta da IA
O DBSCAN (Agrupamento Espacial Baseado em Densidade com Ruído) é um algoritmo de agrupamento que agrupa pontos de dados com base na densidade. Ele identifica clusters como áreas de alta densidade de pontos e marca pontos que não pertencem a nenhum cluster como valores discrepantes (ruído).
O algoritmo usa dois parâmetros principais:
- eps — raio da vizinhança do ponto;
- minPts — número mínimo de pontos na vizinhança eps para formar um cluster.
Se um ponto na vizinhança eps tiver menos de minPts vizinhos, é considerado um valor discrepante. Assim, o DBSCAN ajuda a detectar valores discrepantes, separando automaticamente pontos raros ou isolados de grupos densos de dados sem precisar definir previamente o número de clusters.
Exemplo de uso em Python com a biblioteca 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_)
# Saída: etiquetas de clusters, -1 indica um valor discrepante