Откройте для себя DBSCAN: надежный алгоритм кластеризации для выявления закономерностей, обработки шумов и анализа сложных наборов данных в машинном обучении.
DBSCAN (Density-Based Spatial Clustering of Applications with Noise) - популярный алгоритм неконтролируемого обучения, используемый для группировки точек данных, которые тесно упакованы, отмечая как промахи точки, одиноко лежащие в областях с низкой плотностью. В отличие от других методов кластеризации, DBSCAN не требует заранее задавать количество кластеров. Способность находить кластеры произвольной формы и устойчивость к шуму делают его мощным инструментом для добычи и анализа данных. Впервые алгоритм был представлен в 1996 году в работе Мартина Эстера, Ханса-Петера Кригеля, Йорга Зандера и Сяовэя Сюя, которая стала основополагающей в этой области.
DBSCAN определяет кластеры на основе плотности точек данных в заданном пространстве. Он оперирует двумя ключевыми параметрами:
eps
): Этот параметр определяет радиус окрестности вокруг точки данных. Все точки в пределах этого расстояния считаются соседними.Основываясь на этих параметрах, DBSCAN относит каждую точку данных к одному из трех типов:
MinPts
в пределах своего eps
окрестности. Эти точки являются внутренним пространством кластера.eps
соседствует с основной точкой, но не имеет достаточного количества соседей, чтобы самой стать основной точкой. Такие точки образуют край кластера.Алгоритм начинает с произвольной точки и ищет ее окрестности. Если точка является ядром, создается новый кластер. Затем алгоритм итеративно расширяет кластер, добавляя в него всех непосредственно достижимых соседей, и этот процесс продолжается до тех пор, пока ни одна точка не может быть добавлена в кластер. Визуальную реализацию можно посмотреть в документации по scikit-learn.
Способность DBSCAN выявлять шумы и обнаруживать нелинейные кластеры делает ее очень ценной в различных областях:
Экосистема Ultralytics в первую очередь ориентирована на модели контролируемого обучения, такие как Ultralytics YOLO, для решения таких задач, как обнаружение объектов, классификация изображений и сегментация экземпляров. Хотя DBSCAN - это метод без надзора, его принципы применимы в более широком контексте компьютерного зрения (КВ).
Например, после обнаружения объектов с помощью модели YOLO11 на видео с оживленной улицы можно применить DBSCAN к центральным координатам обнаруженных ограничительных блоков. Этот шаг постобработки позволяет сгруппировать отдельные обнаруженные пешеходы в отдельные толпы, обеспечивая более высокий уровень понимания сцены. Понимание распределения данных также очень важно при подготовке наборов данных для обучения. Эксплораторный анализ данных с помощью DBSCAN позволяет выявить закономерности или аномалии в наборе данных, которыми можно управлять и визуализировать с помощью таких платформ, как Ultralytics HUB.
k
) заранее, в то время как DBSCAN определяет количество кластеров автоматически. K-Means также не справляется с несферическими кластерами и чувствителен к провалам, поскольку заставляет каждую точку попадать в кластер. DBSCAN отлично справляется с поиском кластеров произвольной формы и эффективно изолирует промахи как шум.