DBSCAN Clusterer

Обнаружение кластеров

  • Библиотека:
  • Radar Toolbox

  • DBSCAN Clusterer block

Описание

Кластерные данные с использованием основанной на плотности пространственной кластеризации приложений с алгоритмом шума (DBSCAN). Блок DBSCAN Clusterer может кластеризировать данные любого типа. Блок может также решить для порога кластеризации (epsilon) и может выполнять значения данных в двух размерностях.

Порты

Вход

расширить все

Входные данные, заданные как матрица N -by P, где N - количество точек данных в кластер. P - количество размерностей признаков. Алгоритм DBSCAN может кластеризировать данные любого типа с соответствующими настройками Minimum number of points in a cluster и Cluster threshold epsilon.

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

Включите автоматическое обновление оценки эпсилона, заданное как false или true.

  • Когда true, порог эпсилона сначала оценивается как среднее значение колен кривых k-NN поиска. Затем оценка добавляется к буферу L размера, заданному параметром Length of cluster threshold epsilon history. Окончательное значение эпсилона вычисляется как среднее значение буфера истории L -length эпсилона. Если Length of cluster threshold epsilon history установлено на единицу, оценка не имеет памяти. Отсутствие памяти означает, что каждая оценка эпсилона немедленно используется и сглаживание скользящего среднего не происходит.

  • Когда false, используется предыдущая оценка эпсилона. Оценка эпсилона является интенсивной в вычислительном отношении и не рекомендуется для больших наборов данных.

Зависимости

Чтобы включить этот порт, установите параметр Source of cluster threshold epsilon равным Auto и установите параметр Maximum number of points for 'Auto' epsilon.

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

Пределы неоднозначности, заданные как действительный вектор 1 на 2 или вещественная матрица 2 на 2. Для одной размерности неоднозначности задайте пределы как вектор 1 на 2 [MinAmbiguityLimitDimension1, MaxAmbiguityLimitDimension1]. Для двух размерностей неоднозначности задайте пределы как матрицу 2 на 2 [MinAmbiguityLimitDimension1, MaxAmbiguityLimitDimension1; MinAmbiguityLimitDimension2, MaxAmbiguityLimitDimension2].

Кластеризация может происходить через контуры, чтобы гарантировать, что неоднозначные обнаружения надлежащим образом кластеризованы для до двух размерностей. Неоднозначные столбцы данных порта входа X определяются с помощью параметра Indices of ambiguous dimensions. Параметр AmbLims определяет минимальные и максимальные пределы неоднозначности в тех же модулях, которые используются в Indices of ambiguous dimensions столбцах входных данных X.

Зависимости

Чтобы включить этот порт, установите флажок Enable disambiguation of dimensions.

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

Выход

расширить все

Индексы кластера, возвращенные как N-на-1 целочисленный вектор-столбец. Идентификаторы кластеров представляют результаты кластеризации алгоритма DBSCAN. Значение, равное '-1', подразумевает точку шума DBSCAN. Положительное Idx значения соответствуют кластерам, которые удовлетворяют критериям кластеризации DBSCAN.

Зависимости

Чтобы включить этот порт, установите параметр Define outputs for Simulink block равным Index или Index and ID.

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

Альтернативные идентификаторы кластера, возвращенные как 1-байт- N вектор-строка положительных целых чисел. Каждое значение является уникальным идентификатором, указывающим на гипотетический целевой кластер. Этот аргумент содержит уникальные положительные идентификаторы кластера для всех точек, включая шум. Напротив, Idx выходной аргумент помечает шумовые точки как '-1'. Используйте этот выход как вход в Phased Array System Toolbox™ такие блоки, как Range Estimator и Doppler Estimator.

Зависимости

Чтобы включить этот порт, установите параметр Define outputs for Simulink block равным Cluster ID или Index and ID.

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

Параметры

расширить все

Тип выходных данных кластера, заданный как:.

  • Index and ID -- Включает Idx и Clusters выходные порты.

  • Cluster ID -- Включает Clusters только выходной порт.

  • Index -- Включает Idx только выходной порт.

Источник Epsilon для порога кластера:

  • Property - Эпсилон получается из параметра Cluster threshold epsilon.

  • Auto - Epsilon оценивается автоматически с помощью k-ближайших соседей (k -NN) поиска. Поиск вычисляется с k в диапазоне от одного меньше, чем значение Minimum number of points in a cluster, до одного меньше, чем значение Maximum number of points for 'Auto' epsilon. Вычитание единицы необходимо, потому что окрестность точки включает в себя саму точку.

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

Эпсилон задает радиус вокруг точки, внутри которой можно подсчитать количество обнаружений. Когда эпсилон является скаляром, то же самое значение применяется ко всем размерностям признаков кластеризации. Можно задать различные значения эпсилона для различных размерностей кластеризации, задав действительный вектор-строку 1 P байта. Использование вектора-строки создает многомерную область поиска эллипсов, которая используется, когда столбцы данных имеют различные физические смыслы, такие как область значений и Допплер.

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

Максимальное число точек в кластере, заданное как положительное целое число. Это свойство используется для оценки эпсилона, когда объект выполняет поиск k -NN.

Зависимости

Чтобы включить этот параметр, установите параметр Source of cluster threshold epsilon равным Auto.

Длина истории эпсилона порога кластера, заданная как положительное целое число. Когда значение установлено равным единице, история не содержит памяти. Затем каждая оценка эпсилона немедленно используется, и сглаживание скользящего среднего не происходит. Когда это больше единицы, значение эпсилона усредняется по заданной длине истории.

Пример: 5

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

Флажок для включения значения размерностей, заданный как false или true. При проверке кластеризация происходит через контуры, заданные значениями в вход порте AmbLims при выполнении. Неоднозначные обнаружения соответствующим образом кластеризованы. Используйте параметр Indices of ambiguous dimensions, чтобы задать индексы столбцов X в которых могут возникнуть неоднозначности. Допускается до двух неоднозначных размерностей. Включение значений не рекомендуется для больших наборов данных.

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

Индексы неоднозначных размерностей, заданные как положительное целое число или вектор 1 на 2 положительных целых чисел. Это свойство задает индексы столбцов данных порта входа X в которых могут иметь место значения. Положительное целое число соответствует одной неоднозначной размерности в матрице входных данных X. Вектор-строка индексов длиной 1 на 2 соответствует двум неоднозначным измерениям. Размер и порядок Indices of ambiguous dimensions должны соответствовать AmbLims вход порта.

Пример: [3 4]

Зависимости

Чтобы включить этот параметр, установите флажок Enable disambiguation of dimensions.

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

Симуляция блоков, заданное как Interpreted Execution или Code Generation. Если вы хотите, чтобы ваш блок использовал MATLAB® интерпретатор, выберите Interpreted Execution. Если вы хотите, чтобы ваш блок выполнялся как скомпилированный код, выберите Code Generation. Скомпилированный код требует времени для компиляции, но обычно запускается быстрее.

Интерпретированное выполнение полезно, когда вы разрабатываете и настраиваете модель. Блок запускает базовую системную object™ в MATLAB. Вы можете быстро изменить и выполнить модель. Когда вы удовлетворены вашими результатами, можно запустить блок с помощью Code Generation. Длинные симуляции выполняются быстрее с сгенерированным кодом, чем при интерпретированном выполнении. Можно запускать повторные выполнения без перекомпиляции, но если вы меняете какие-либо параметры блоков, то блок автоматически перекомпилируется перед выполнением.

Эта таблица показывает, как параметр Simulate using влияет на общее поведение симуляции.

Когда Simulink® модель находится в Accelerator режим блока, заданный с помощью Simulate using, переопределяет режим симуляции.

Режимы ускорения

Симуляция блоковПоведение симуляции
NormalAcceleratorRapid Accelerator
Interpreted ExecutionБлок выполняется с помощью интерпретатора MATLAB.Блок выполняется с помощью интерпретатора MATLAB.Создает независимый исполняемый файл из модели.
Code GenerationБлок скомпилирован.Все блоки в модели скомпилированы.

Для получения дополнительной информации смотрите Выбор режима симуляции (Simulink).

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

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