Yolo Vision Shenzhen
Shenzhen
Junte-se agora
Glossário

DBSCAN (Agrupamento Espacial Baseado em Densidade de Aplicações com Ruído)

Explore o DBSCAN para agrupamento baseado em densidade e deteção de anomalias. Saiba como ele identifica formas arbitrárias e ruído em conjuntos de dados juntamente com Ultralytics .

O DBSCAN (Density-Based Spatial Clustering of Applications with Noise) é um poderoso algoritmo de aprendizagem não supervisionada usado para identificar grupos distintos dentro dos dados com base na densidade. Ao contrário dos métodos tradicionais de agrupamento que assumem agrupamentos esféricos ou exigem um número predeterminado de grupos, o DBSCAN localiza regiões de alta densidade separadas por áreas de baixa densidade. Essa capacidade permite descobrir agrupamentos de formas e tamanhos arbitrários, tornando-o excepcionalmente eficaz para analisar conjuntos de dados complexos do mundo real, onde a estrutura subjacente é desconhecida. Uma vantagem fundamental desse algoritmo é a sua detecção de anomalias integrada, pois classifica automaticamente os pontos em regiões de baixa densidade como ruído, em vez de forçá-los a entrar num agrupamento.

Conceitos e parâmetros fundamentais

O algoritmo funciona definindo uma vizinhança em torno de cada ponto de dados e contando quantos outros pontos se encontram nessa vizinhança. Dois hiperparâmetros primários controlam este processo, exigindo um ajuste cuidadoso dos hiperparâmetros para corresponder às características específicas dos dados:

  • Epsilon (eps): Este parâmetro especifica o raio máximo em torno de um ponto para procurar vizinhos. Ele define a distância de «acessibilidade».
  • Pontos mínimos (minPts): define o número mínimo de pontos de dados necessários dentro do raio Epsilon para formar uma região densa ou «núcleo».

Com base nesses parâmetros, o DBSCAN categoriza cada ponto no conjunto de dados em um dos três tipos:

  1. Pontos Centrais: Pontos que têm pelo menos minPts vizinhos dentro do eps raio. Estes pontos formam o interior de um aglomerado.
  2. Pontos de Borda: Pontos que estão dentro do eps raio de um ponto central, mas têm menos que minPts próprios vizinhos. Estes formam as bordas de um agrupamento.
  3. Pontos de ruído: Pontos que não são pontos centrais nem pontos de borda. Estes são efetivamente tratados como outliers, o que é útil para tarefas como deteção de outliers.

DBSCAN vs. K-Means Clustering

Embora ambos sejam fundamentais para o aprendizado de máquina (ML), o DBSCAN oferece vantagens distintas em relação ao agrupamento K-Means em cenários específicos . O K-Means depende de centróides e distância euclidiana, muitas vezes assumindo que os clusters são convexos ou esféricos. Isso pode levar a um desempenho insatisfatório em dados alongados ou em forma de crescente. Em contrapartida, a abordagem baseada em densidade do DBSCAN permite que ele siga os contornos naturais da distribuição de dados.

Outra diferença significativa reside na inicialização. O K-Means exige que o utilizador especifique o número de clusters (k) antecipadamente, o que pode ser desafiante sem conhecimento prévio. O DBSCAN infere o número de clusters naturalmente a partir da densidade dos dados. Além disso, o K-Means é sensível a outliers porque força todos os pontos a entrarem num grupo, potencialmente distorcendo os centros dos clusters. A capacidade do DBSCAN de rotular pontos como ruído evita que anomalias nos dados contaminem clusters válidos, garantindo resultados mais limpos para tarefas posteriores, como modelagem preditiva.

Aplicações no Mundo Real

O DBSCAN é amplamente aplicado em indústrias que exigem análise espacial e tratamento robusto de ruído.

  • Análise geoespacial: No planeamento urbano e logística, os analistas utilizam o DBSCAN para agrupar coordenadas GPS de frotas de entrega ou serviços de partilha de boleias. Ao identificar zonas de entrega de alta densidade, as empresas podem otimizar o planeamento de rotas e a localização de armazéns. Por exemplo, a IA na logística envolve frequentemente o agrupamento de paragens de entrega para melhorar a eficiência.
  • Detecção de anomalias baseada em visão: Na fabricação, sistemas de inspeção visual alimentados por modelos como o YOLO26 podem detect defeitos detect . O DBSCAN pode agrupar as coordenadas desses defeitos num mapa do produto. Detecções isoladas podem ser descartadas como ruído do sensor, enquanto agrupamentos densos indicam uma falha sistemática de fabricação, acionando um alerta para inspeção de qualidade.

Exemplo de código: Detecção de centróides de agrupamento

Nos fluxos de trabalho de visão computacional, os programadores costumam usar o Plataforma Ultralytics para treinar detetores de objetos e, em seguida, pós-processar os resultados. O exemplo a seguir demonstra como usar o sklearn biblioteca para agrupar os centróides dos objetos detetados. Isso ajuda a agrupar deteções que estão espacialmente relacionadas, potencialmente mesclando múltiplas caixas delimitadoras para o mesmo objeto ou grupos de objetos identificáveis .

import numpy as np
from sklearn.cluster import DBSCAN

# Simulated centroids of objects detected by YOLO26
# [x, y] coordinates representing object locations
centroids = np.array(
    [
        [100, 100],
        [102, 104],
        [101, 102],  # Cluster 1 (Dense group)
        [200, 200],
        [205, 202],  # Cluster 2 (Another group)
        [500, 500],  # Noise (Outlier)
    ]
)

# Initialize DBSCAN with a radius (eps) of 10 and min_samples of 2
# This groups points close to each other
clustering = DBSCAN(eps=10, min_samples=2).fit(centroids)

# Labels: 0, 1 are cluster IDs; -1 represents noise
print(f"Cluster Labels: {clustering.labels_}")
# Output: [ 0  0  0  1  1 -1]

Integração com Deep Learning

Embora o DBSCAN seja um algoritmo clássico, ele combina eficazmente com o deep learning moderno. Por exemplo, características de alta dimensão extraídas de uma rede neural convolucional (CNN) podem ser reduzidas usando técnicas de redução de dimensionalidade, como PCA ou t-SNE, antes de aplicar o DBSCAN. Essa abordagem híbrida permite agrupar dados de imagens complexas com base na semelhança semântica , em vez de apenas na localização dos pixels. Isso é particularmente útil em cenários de aprendizagem não supervisionada, onde os dados de treino rotulados são escassos, ajudando os investigadores a organizar vastos arquivos de imagens não rotuladas de forma eficiente.

Junte-se à comunidade Ultralytics

Junte-se ao futuro da IA. Conecte-se, colabore e cresça com inovadores globais

Junte-se agora