Descubra o DBSCAN: um algoritmo de agrupamento robusto para identificar padrões, lidar com o ruído e analisar conjuntos de dados complexos na aprendizagem automática.
O DBSCAN (Density-Based Spatial Clustering of Applications with Noise) é um algoritmo popular de aprendizagem não supervisionada utilizado para agrupar pontos de dados que estão muito próximos, marcando como outliers pontos que se encontram isolados em regiões de baixa densidade. Ao contrário de outros métodos de agrupamento, o DBSCAN não requer que o número de clusters seja especificado antecipadamente. A sua capacidade de encontrar agrupamentos de forma arbitrária e a sua robustez ao ruído fazem dele uma ferramenta poderosa para a extração e análise de dados. O algoritmo foi introduzido pela primeira vez num artigo de 1996 de Martin Ester, Hans-Peter Kriegel, Jörg Sander e Xiaowei Xu, que se tornou um trabalho fundamental neste domínio.
O DBSCAN define clusters com base na densidade dos pontos de dados num determinado espaço. Funciona com base em dois parâmetros-chave:
eps
): Este parâmetro define o raio de uma vizinhança à volta de um ponto de dados. Todos os pontos dentro desta distância são considerados vizinhos.Com base nestes parâmetros, o DBSCAN categoriza cada ponto de dados num de três tipos:
MinPts
no seu eps
vizinhança. Estes pontos são o interior de um agrupamento.eps
A vizinhança de um ponto central mas não tem vizinhos suficientes para ser um ponto central. Estes pontos formam a borda de um cluster.O algoritmo começa com um ponto arbitrário e recupera a sua vizinhança. Se for um ponto central, é criado um novo cluster. Em seguida, o algoritmo expande iterativamente o agrupamento, adicionando-lhe todos os vizinhos diretamente alcançáveis, um processo que continua até não ser possível adicionar mais pontos a qualquer agrupamento. Pode ver uma implementação visual na documentação do scikit-learn.
A capacidade do DBSCAN para identificar ruído e descobrir clusters não lineares torna-o altamente valioso em vários domínios:
O ecossistema Ultralytics centra-se principalmente em modelos de aprendizagem supervisionada, como o Ultralytics YOLO, para tarefas que incluem a deteção de objectos, a classificação de imagens e a segmentação de instâncias. Embora o DBSCAN seja um método não supervisionado, os seus princípios são relevantes no contexto mais alargado da visão computacional (CV).
Por exemplo, depois de efetuar a deteção de objectos com um modelo como o YOLO11 num vídeo de uma rua movimentada, o DBSCAN pode ser aplicado às coordenadas centrais das caixas delimitadoras detectadas. Este passo de pós-processamento pode agrupar as detecções individuais de peões em grupos distintos, proporcionando um nível mais elevado de compreensão da cena. A compreensão da distribuição dos dados também é crucial quando se preparam conjuntos de dados para treino. A análise exploratória de dados utilizando o DBSCAN pode revelar padrões ou anomalias no conjunto de dados, que podem ser geridos e visualizados utilizando plataformas como o Ultralytics HUB.
k
) previamente, enquanto o DBSCAN determina o número de clusters automaticamente. O K-Means também tem dificuldades com clusters não esféricos e é sensível a outliers, uma vez que força cada ponto para um cluster. O DBSCAN é excelente a encontrar clusters de forma arbitrária e isola eficazmente os outliers como ruído.