Оригинал: Кластеризация путем быстрого поиска и нахождения пиков плотности
Алекс Родригес и Алессандро Лайо
Источник: Наука 344.6191 (2014), 1492-1496.
Резюме
Целью кластерного анализа является классификация элементов по их сходству. В работе предлагается новый метод, основанный на идее о том, что плотность центра скопления выше, чем у его соседей, а точки с высокой плотностью находятся относительно далеко. Эта идея лежит в основе процесса кластеризации, при котором число кластеров генерируется интуитивно, автоматически обнаруживаются выбросы и исключаются из анализа, а кластеры идентифицируются независимо от их формы и размерности пространства, в которое они встроены.
текст
Различные стратегии кластеризации
дистанционный подход
существуетK-means
иK-medoids
, кластер представляет собой совокупность данных, характеризующихся небольшим расстоянием от центра кластера.
Однако, поскольку точки данных всегда назначаются ближайшему центру, этот класс алгоритмов может находить только сферические кластеры и сталкивается с трудностями при поиске кластеров произвольной формы.
намекать:
K-均值 (K-Means)
Метод K-средних имеет смысл только тогда, когда определено среднее значение в кластере, и метод K-средних не работает, когда задействованы данные с номинальными свойствами. И здесь можно использоватьK-众数 (K-Modes)
вариант , то есть с использованием基于频率
способ обновления режима кластеров, кластеризующий данные с номинальными свойствами. Конечно, естьK-Prototype
,K-Means++
и другие оптимизированные версии алгоритма.
Методы, основанные на плотности
Кластеры произвольной формы легко обнаруживаются методами, основанными на локальной плотности точек данных. Основная идея заключается в следующем: в пределах определенного поля (количества объектов или точек данных) с заданным порогом плотности точки данных, плотность которых ниже порога, отбрасываются как шум и назначаются другим прерывистым полям высокой плотности. кластер. Такие методы можно использовать для фильтрации шума или выбросов и поиска кластеров произвольной формы.
DBSCAN
(Density-Based Spatial Clustering of Applications with Noise) — это алгоритм кластеризации на основе плотности, который определяет кластер как наибольший набор точек, связанных плотностью, которые могут разделить поля с достаточно высокой плотностью на кластеры. Кластеры произвольной формы можно найти в зашумленных пространственных базах данных.
Однако, как видно из вышеизложенного, помимо выбора соответствующего порога, в нем отсутствует метод кластеризации среднего сдвига. Хотя этот метод позволяет обнаруживать несферические кластеры, он работает только для данных, определяемых набором координат.
Улучшенный метод в этой статье
Во-первых, алгоритм предполагает, что центры кластеров邻居点
в окружении и с большей плотностью任何点
Там относительно большое расстояние. Для каждой точки данных i, чтобы рассчитать两个量
: локальная плотность точеки расстояние от этой точки до точки с более высокой локальной плотностью. Оба этих значения зависят от расстояния между точками данных(евклидово расстояние, также известное как欧式距离
). Локальная плотность точек данных определяется как:
вявляется функцией 0-1, если x ;в противном случае,Является截断距离
. в основном,равно расстоянию от точки i меньше, чемколичество баллов. Алгоритмы работают только с различиямичувствителен к относительному размеру , что означает, что для больших наборов данных результаты анализаесть хороший выбор鲁棒性
.
-
рассчитывается между точками
最小距离
для измерения, то есть минимальное расстояние между точкой данных i и ее ближайшей, более плотной точкой j:Подсказка: как вы можете видеть на рис. 1-1.(A), точки данных расположены в порядке убывания плотности.
- Если точка данных i является самой плотной точкой,максимальное расстояние до точки данных i среди всех узлов:
Как показано на рисунке 1-1, он показывает основную идею алгоритма. Рисунок 1-1.(A) показывает 28 точек в двумерном пространстве,且 A 中数据点是按照密度降序排列
. На рис. 1-1.(B)как абсцисса,В качестве ординаты нарисуйте двумерную диаграмму и назовите ее диаграммой решений. можно найти в точках 1 и 10иявляется самым большим, поэтому он принимается за центр кластера.
Рисунок 1-1 Дисплей алгоритма в двумерном пространствепункт 9 и пункт 10похоже, ноЗначения совсем разные: точка 9 принадлежит кластеру точки 1, а несколько других вышеточки находятся очень близко к ней, однако точка 10 имеет более высокую плотность ближайших соседей, принадлежащих другим кластерам.
Так что, как и ожидалось, только с высокими относительно высокийДело в том
类簇中心
. Поскольку точки 26, 27, 28 изолированы, существует относительно высокаястоимость и низкаязначений, их можно рассматривать как кластеры отдельных точек, т.е.异常点
.
После того как центр кластера найден, каждая оставшаяся точка ставится в соответствие тому кластеру, к которому принадлежит ее ближайший сосед с большей плотностью. Для назначения кластера класса требуется только一步即可完成
, в отличие от других алгоритмов, которые делают迭代优化
.
В кластерном анализе важно количественно измерить надежность заданий. В этом алгоритме сначала определите边界区域
(то есть множество точек, отнесенных к этому кластеру, и расстояние от точек других кластеров меньше, чем), то для каждого кластера найти точку с наибольшей плотностью в его граничной области, а так как представляет собой плотность точки. Если отношение значений локальной плотности в кластереКрупные точки расцениваются как ядерная часть кластера (то есть надежность отнесения к кластеру высокая), остальные точки (отношение значений локальной плотности в кластеремаленькие точки) считаются кластерообразными光晕部分
(также рассматривается как шум).
(A) Распределение вероятностей для нанесенного на график распределения точек. (B и C) Распределение точек для 4000 и 1000 точек выборки соответственно. И каждая точка представлена своим цветовым кластером, а черная точка принадлежит гало-кластеру (шумовой точке). (D и E) — соответствующие решающие диаграммы (B и C), центры которых раскрашены соответствующими кластерами. (F) Оценка, присвоенная неправильно сгруппированным точкам в зависимости от размера выборки. Столбики погрешностей представляют собой стандартную ошибку среднего значения.
Как видно из рисунка 1-2.(F), доля ошибочно классифицированных точек остается ниже 1% даже в небольшой выборке, состоящей всего из 1000 точек, что указывает на хорошую надежность алгоритма.
Как видно из рис. 1-3, алгоритм может достигать хороших результатов кластеризации для различных уровней данных (результаты тестовых случаев в цитируемой литературе показаны на рисунке).
Рисунок 1-3 Результаты тестового примера из цитируемой литературыиспользованная литература
[1] Huang Z. Clustering large data sets with mixed numeric and categorical values [C]. 1997: 21-34.
[2] Huang Z. Extensions to the k-means algorithm for clustering large data sets with categorical values [J]. Data mining and knowledge discovery,
1998, 2(3): 283-304.
[3] San O M, Huynh V N, Nakamori Y. A clustering algorithm for mixed numeric and categorical data [J]. Journal of Systems Science and Complexity, 2003, 16(4): 562-571.
- Автор этой статьи: Kofe
- Ссылка на эту статью: Woohoo.KOF ES.Talent/2018/05/c олень…
- Уведомление об авторских правах:Все статьи в этом блоге, если не указано иное, используютCC BY-NC-SA 3.0соглашение. Пожалуйста, укажите источник!