Кластеризация на основе плотности (Пространственная статистика)

Сводка

Находит кластеры точечных объектов в окружающем шуме, на основе пространственного распределения.

Более подробно о работе инструмента Кластеризация на основе плотности

Иллюстрация

Диаграмма Кластеризация на основе плотности

Использование

  • Этот инструмент извлекает кластеры из Входных точечных объектов и определяет окружающий шум.

  • Есть три опции Метода кластеризации. Алгоритм Заданное расстояние (DBSCAN) находит кластеры точек, расположенные в непосредственной близости, на основе заданного расстояния поиска. Алгоритм Автонастройка (HDBSCAN) находит кластеры точек так же, как и DBSCAN, но использует меняющиеся расстояния, позволяя определить кластеры с меняющимися плотностями, на основе вероятности кластеров (или стабильности). Алгоритм Мультимасштабный (OPTICS) упорядочивает входные точки на основе минимального расстояния до следующего объекта. Затем строится плот доступности и извлекаются кластеры, на базе наименьшего числа объектов, входящих в кластер, расстояния поиска и характеристик плота доступности (таких как уклоны и высоты пиков).

  • Этот инструмент создает выходной класс объектов с новым целочисленным полем CLUSTER_ID, где обозначается принадлежность объектов кластерам. Отображение по умолчанию основано на поле COLOR_ID. Разным кластерам присваиваются различные цвета. Цвета распределяются и повторяются таким образом, что каждый кластер визуально отличается от соседних.

  • Этот инструмент также создает сообщения и диаграммы, которые помогают понять характеристики идентифицированных кластеров. Вы можете получить доступ к сообщению, переместив курсор мыши на индикатор выполнения, щелкнув на всплывшую кнопку или развернув раздел сообщений на панели Геообработка. Также вы можете открыть сообщения, касающиеся ранее запущенного инструмента Кластеризация на основе плотности, через историю геообработки. Созданные диаграммы можно открыть с помощью панели Содержание.

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

  • Если для Метод кластеризации выбран Автонастройка (HDBSCAN), выходной класс объектов также будет содержать следующие поля: PROB, в котором хранится вероятность принадлежности объекта к группе, OUTLIER, означающее,что объект может быть выбросом в своем кластере (чем выше значение, тем больше вероятность, что объект является выбросом) и EXEMPLAR, где обозначаются объекты, наиболее характерные для данного кластера.

  • Если выбран Мультимасштабный (OPTICS) для параметра Метод кластеризации, выходной класс объектов также будет содержать следующие поля: REACHORDER, где указан способ упорядочивания Входных точечных объектов для анализа, и REACHDIST, где находится расстояние между каждым объектом и ближайшим не посещенном соседом.

  • Для обоих методов Заданное расстояние (DBSCAN) и Мультимасштабный (OPTICS), по умолчанию Расстоянием поиска является наибольшее значение основного расстояния, найденное в наборе данных, исключая те, которые попадают в верхний 1 процент (т.е., исключая наивысшие значения основных расстояний).

  • Когда Входные объекты не имеет проекции (т.е. когда координаты заданы в градусах, минутах и секундах), или когда в качестве выходной системы координат используется Географическая система координат, расстояния будут рассчитываться с помощью хордовых измерений. Измерения хордовых расстояний применяются постольку, поскольку они могут быть быстро вычислены и дают хорошие оценки истинных геодезических расстояний, по крайней мере для точек, расстояние между которыми в пределах порядка тридцати градусов. Хордовые расстояния основаны на эллипосиде вращения. Если взять две любые точки на поверхности Земли, то хордовым расстоянием между ними будет длина прямой линии, проходящей через трехмерное тело Земли и соединяющей эти две точки. Хордовые расстояния выражаются в метрах.

    Внимание:

    Рекомендуется провести проецирование данных, если область исследования превышает 30 градусов. Хордовые расстояния не обеспечивают точных оценок геодезических расстояний, превышающих 30 градусов.

  • Инструмент включает в вычисления z-значения, если они представлены, полученный результат будет в 3D.

  • Инструмент поддерживает параллельную обработку и использует до 50 % доступной мощности процессора по умолчанию. Количество используемых процессоров можно изменить при помощи параметра среды Коэффициент параллельной обработки.

Синтаксис

DensityBasedClustering(in_features, output_features, cluster_method, min_features_cluster, {search_distance}, cluster_sensitivity)
ParameterОбъяснениеТип данных
in_features

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

Feature Layer
output_features

Выходной класс объектов, получающий результаты кластеризации.

Feature Class
cluster_method

Указывает метод определения кластеров.

  • DBSCAN Использует указанное расстояние для отделения плотных кластеров от окружающего шума. DBSCAN является наиболее быстрым методом кластеризации но подходит только при наличии очень четкого расстояния,что хорошо подходит для поиска всех представленных кластеров. Это приводит к получению кластеров с похожей плотностью.
  • HDBSCAN Использует различные расстояния для отделения кластеров с различными плотностями от окружающего шума. HDBSCAN является наиболее ориентированным на данные методом кластеризации для него требуется минимум участия пользователя.
  • OPTICS Использует расстояние между окрестностями и плотом доступности для отделения кластеров с различной плотностью от окружающего шума. OPTICS предлагает наибольшую гибкость в тонких настройках определения кластеров, хотя и требует интенсивных вычислений, особенно с большим Расстоянием поиска.
String
min_features_cluster

Минимальное число объектов, которое может рассматриваться как кластер. Любой кластер с меньшим числом объектов, чем указанное количество, будет рассматриваться как шум.

Long
search_distance
(Дополнительный)

Максимальное расстояние поиска.

Для метода Заданное расстояние (DBSCAN), заданное Минимальное число объектов на кластер должно быть найдено в пределах этого расстояния, чтобы отнести объекты к данному кластеру. Отдельные кластеры будут разделяться, как минимум, этим расстоянием. Если объект расположен дальше, чем это расстояние, от следующего ближайшего объекта в кластере, он не будет включен в кластер.

Для метода Мультимасштабный (OPTICS), этот параметр является дополнительным и используется как максимальное расстояние поиска при создании плота доступности. Для OPTICS, плот доступности, скомбинированный с параметром Кластерная чувствительность, определяет принадлежность объекта к кластеру. Если расстояние не задано, инструмент будет выполнять поиск по всем расстояниям, что увеличивает время обработки.

Если оставить пустым, то будет использоваться расстояние по умолчанию, которое является наибольшим расстоянием между ядрами в наборе за исключением расстояний, попавших в максимальный и минимальный 1 процент (т.е исключаются экстремумы в расстояниях между объектами).

Linear Unit
cluster_sensitivity

Целочисленное значение от 0 до 100, которое определяет компактность кластеров. Значение, близкое к 100, позволит получить большее количество более плотно расположенных кластеров. Значение, близкое к 0, позволит получить менее компактные кластеры. Если оно пустое, инструмент найдет значение чувствительности, используя расхождение Кульбака-Лейблера, которое находит значение, при котором добавление большего количества кластеров не добавляет дополнительную информацию.

Long

Пример кода

DensityBasedClustering, пример 1 (окно Python)

В следующем скрипте окна Python показано, как используется инструмент DensityBasedClustering.

import arcpy
arcpy.env.workspace = r"C:\Analysis"
arcpy.DensityBasedClustering_stats("Chicago_Arson", "Arson_HDB", "HDBSCAN", 15)

Следующий автономный Python скрипт демонстрирует, как использовать инструмент DensityBasedClustering.

# Clustering crime incidents in a downtown area using the Density-based Clustering tool
# Import system modules
import arcpy
import os
# Overwrite existing output, by default
arcpy.env.overwriteOutput = True
# Local variables...
workspace = r"E:\working\data.gdb"
arcpy.env.workspace = workspace
# Run Density-based Clustering with the HDBSCAN Cluster Method using a minimum 
# of 15 features per cluster
arcpy.stats.DensityBasedClustering("Chicago_Arson", "Arson_HDB", "HDBSCAN", 15)
# Run Density-based Clustering again using OPTICS with a Search Distance and 
# Cluster Sensitivity to create tighter clusters
arcpy.stats.DensityBasedClustering("Chicago_Arson", "Arson_Optics", "OPTICS", 
                                   15, "1200 Meters", 70)

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы