clusterDBSCAN.discoverClusters

Поиск иерархии кластеров в данных

Описание

пример

[order,reachdist] = clusterDBSCAN.discoverClusters(X,maxepsilon,minnumpoints) возвращает упорядоченный по кластерам список точек, order, и расстояния достижимости, reachdist, для каждой точки в данных X. Задайте максимальный эпсилон, maxepsilonи минимальное число точек, minnumpoints. Метод реализует упорядоченное расположение Points To Identify the Clustering Structure (OPTICS). Алгоритм OPTICS полезен, когда кластеры имеют различную плотность.

clusterDBSCAN.discoverClusters(X,maxepsilon,minnumpoints) отображает штриховой график, представляющий иерархию кластера.

Примеры

свернуть все

Создайте целевые данные со случайными обнаружениями в xy Декартовых координатах. Используйте clusterDBSCAN.discoverClusters функции объекта, чтобы раскрыть базовую иерархию кластера.

Во-первых, установите clusterDBSCAN.discoverClusters параметры.

maxEpsilon = 10;
minNumPoints = 6;

Создайте случайные целевые данные.

X = [randn(20,2) + [11.5,11.5]; randn(20,2) + [25,15]; randn(20,2) + [8,20]; 10*rand(10,2) + [20,20]];
plot(X(:,1),X(:,2),'.')
axis equal
grid

Figure contains an axes. The axes contains an object of type line.

Постройте график иерархии кластеров.

clusterDBSCAN.discoverClusters(X,maxEpsilon,minNumPoints)

Figure Reachability Distances contains an axes. The axes with title Reachability Distances contains an object of type bar.

При визуальном осмотре графика выберите Epsilon как 2, а затем выполните кластеризацию с помощью clusterDBSCAN объект и график результирующих кластеров.

clusterer = clusterDBSCAN('MinNumPoints',6,'Epsilon',2, ...
    'EnableDisambiguation',false);
[idx,cidx] = clusterer(X);
plot(clusterer,X,idx)

Figure Clusters contains an axes. The axes with title Clusters contains 5 objects of type line, scatter, text.

Входные параметры

свернуть все

Входные данные функции, заданные как матрица N -by P. Строки N соответствуют точкам функций в P -мерном пространстве функций. Столбцы P содержат значения функций, над которыми происходит кластеризация. Алгоритм DBSCAN может кластеризировать данные любого типа с соответствующими MinNumPoints и Epsilon настройки. Для примера двухколоночный вход может содержать xy Декартовы координаты или диапазон и Доплер.

Типы данных: double

Максимальный размер эпсилона для поиска иерархии кластеров, заданный как положительная скалярная величина. Параметр epsilon задает окрестность кластеризации вокруг точки. Уменьшение maxepsilon приводит к сокращению времени выполнения. Настройка maxepsilon на inf определяет все возможные кластеры.

Алгоритм OPTICS относительно нечувствителен к настройкам параметра, но выбор больших параметров может улучшить результаты.

Пример: 5.0

Типы данных: double

Минимальное число точек, используемых в качестве порога, задается как положительное целое число. Этот порог устанавливает минимальное число точек для кластера.

Алгоритм OPTICS относительно нечувствителен к настройкам параметра, но выбор больших параметров может улучшить результаты.

Пример: 10

Типы данных: double

Выходные аргументы

свернуть все

Упорядоченный по кластеру список выборочных индексов, возвращаемый как целочисленный вектор-строка 1 N байта N. Количество строк в матрице входных данных X.

Расстояние достижимости, возвращенное как положительный, реальный 1-байт- N вектор-строка. N - количество строк в матрице входных данных X.

Типы данных: double

Алгоритмы

Выходные выходы clusterDBSCAN.discoverClusters позволяет вам создать график достижимости, из которого можно визуализировать иерархическую структуру кластеров. График достижимости содержит упорядоченные точки на оси x и расстояния достижимости на оси y. Используйте выходы, чтобы изучить структуру кластера в широкой области значений настроек параметра. Можно использовать выход, чтобы помочь оценить соответствующие пороги эпсилоновой кластеризации для алгоритма DBSCAN. Точки, принадлежащие кластеру, имеют небольшие расстояния до ближайшего соседа, и кластеры появляются как оврагов на графике достижимости. Более глубокие овраги соответствуют более плотным кластерам. Определить эпсилон по ординате дна оврагов.

OPTICS предполагает, что плотные кластеры полностью содержатся в менее плотных кластерах. OPTICS обрабатывает данные в правильном порядке путем отслеживания районов плотности точек. Этот процесс выполняется путем упорядочивания точек данных по кратчайшим расстояниям достижимости, гарантируя, что кластеры с более высокой плотностью идентифицируются первыми.

Расширенные возможности

.
Введенный в R2021a