Jump to content

Иерархическая кластеризация

В анализе данных и статистике интеллектуальном иерархическая кластеризация (также называемая иерархическим кластерным анализом или HCA ) — это метод кластерного анализа , целью которого является построение иерархии кластеров. Стратегии иерархической кластеризации обычно делятся на две категории:

  • Агломеративный : это подход « снизу вверх »: каждое наблюдение начинается в своем собственном кластере, и пары кластеров объединяются по мере продвижения вверх по иерархии.
  • Разделение : это подход « сверху вниз »: все наблюдения начинаются с одного кластера, а разделения выполняются рекурсивно по мере продвижения вниз по иерархии.

В общем, слияния и разделения определяются жадным способом. Результаты иерархической кластеризации [ 1 ] обычно представляются в виде дендрограммы .

Иерархическая кластеризация имеет явное преимущество: можно использовать любую действительную меру расстояния. Фактически, сами наблюдения не требуются: используется лишь матрица расстояний . С другой стороны, за исключением частного случая односвязного расстояния, ни один из алгоритмов (кроме исчерпывающего перебора по ) можно гарантированно найти оптимальное решение.

Сложность

[ редактировать ]

Стандартный алгоритм иерархической агломеративной кластеризации (HAC) имеет временную сложность и требует памяти, что делает ее слишком медленной даже для средних наборов данных. Однако в некоторых частных случаях оптимально эффективные агломеративные методы (сложности ) известны: SLINK [ 2 ] для однорычажного и CLINK [ 3 ] для кластеризации с полной связью . С кучей время выполнения в общем случае можно сократить до , улучшение вышеупомянутой границы , за счет дальнейшего увеличения требований к памяти. Во многих случаях затраты памяти при таком подходе слишком велики, чтобы его можно было использовать на практике. Существуют методы, использующие квадродеревья , демонстрирующие общее время работы с космос. [ 4 ]

Разделительная кластеризация с исчерпывающим поиском , но для выбора разделения обычно используются более быстрые эвристики, такие как k -means .

Кластерная связь

[ редактировать ]

Чтобы решить, какие кластеры следует объединить (для агломеративного) или где кластер следует разделить (для разделительного), требуется мера несходства между наборами наблюдений. В большинстве методов иерархической кластеризации это достигается за счет использования соответствующего расстояния d , такого как евклидово расстояние, между отдельными наблюдениями набора данных и критерия связи, который определяет несходство наборов как функцию парных расстояний. наблюдений в наборах. Выбор метрики, а также связи могут оказать существенное влияние на результат кластеризации, при этом метрика нижнего уровня определяет, какие объекты наиболее похожи , тогда как критерий связи влияет на форму кластеров. Например, полная связь имеет тенденцию образовывать больше сферических кластеров, чем одинарная связь.

Критерий связи определяет расстояние между наборами наблюдений как функцию попарных расстояний между наблюдениями.

Некоторые часто используемые критерии связи между двумя наборами наблюдений A и B и расстоянием d : [ 5 ] [ 6 ]

Имена Формула
Кластеризация с максимальной или полной связью
Минимальная кластеризация или кластеризация с одной связью
Кластеризация невзвешенных средних связей (или UPGMA )
Кластеризация средневзвешенных связей (или WPGMA )
Кластеризация центроидных связей, или UPGMC где и являются центроидами A соотв. Б.
Медианная кластеризация связей, или WPGMC где
Универсальная кластеризация связей [ 7 ]
Связь с палатой , [ 8 ] Минимальное увеличение суммы квадратов (MISSQ) [ 9 ]
Минимальная сумма квадратов ошибок (MNSSQ) [ 9 ]
Минимальное увеличение дисперсии (МИВАР) [ 9 ]
Минимальная дисперсия (MNVAR) [ 9 ]
Хаусдорфова связь [ 10 ]
Минимальная сумма Медоидная связь [ 11 ] такой, что m — медоид полученного кластера
Увеличение минимальной суммы Связь Medoid [ 11 ]
Медоидная связь [ 12 ] [ 13 ] где , являются медоидами предыдущих кластеров
Минимальная энергетическая кластеризация

Некоторые из них можно пересчитать только рекурсивно (WPGMA, WPGMC), для многих рекурсивные вычисления с помощью уравнений Лэнса-Вильямса более эффективны, тогда как для других (Хаусдорф, Медоид) расстояния приходится вычислять с помощью более медленной полной формулы. Другие критерии связи включают в себя:

  • Вероятность того, что кластеры-кандидаты возникают из одной и той же функции распределения (V-связь).
  • Произведение входной и исходящей степени на графе k-ближайших соседей (связь степеней графа). [ 14 ]
  • Приращение некоторого дескриптора кластера (т. е. величины, определенной для измерения качества кластера) после слияния двух кластеров. [ 15 ] [ 16 ] [ 17 ]

Пример агломеративной кластеризации

[ редактировать ]
Необработанные данные

Например, предположим, что эти данные должны быть кластеризованы, а евклидово расстояние является метрикой расстояния .

иерархической кластеризации Дендрограмма будет такой:

Традиционное представление

Обрезка дерева на заданной высоте даст кластеризацию разделения с выбранной точностью. В этом примере разрез после второй строки (сверху) дендрограммы даст кластеры {a} {bc} {de} {f}. Разрезание после третьей строки даст кластеры {a} {bc} {def}, что представляет собой более грубую кластеризацию с меньшим количеством, но более крупными кластерами.

Этот метод строит иерархию из отдельных элементов путем постепенного объединения кластеров. В нашем примере у нас есть шесть элементов {a} {b} {c} {d} {e} и {f}. Первый шаг — определить, какие элементы объединить в кластер. Обычно мы хотим взять два ближайших элемента в соответствии с выбранным расстоянием.

При желании на этом этапе также можно построить матрицу расстояний , где число в i -й строке j -го столбца представляет собой расстояние между i -м и j -м элементами. Затем, по мере кластеризации, строки и столбцы объединяются по мере объединения кластеров и обновления расстояний. Это распространенный способ реализации такого типа кластеризации, преимуществом которого является кэширование расстояний между кластерами. Простой алгоритм агломеративной кластеризации описан на странице кластеризации с одной связью ; его можно легко адаптировать к различным типам связей (см. ниже).

Предположим, мы объединили два ближайших элемента b и c . Теперь у нас есть следующие кластеры { a }, { b , c }, { d }, { e } и { f }, и мы хотим объединить их дальше. Для этого нам нужно взять расстояние между {a} и {bc} и, следовательно, определить расстояние между двумя кластерами. Обычно расстояние между двумя кластерами и является одним из следующих:

  • Среднее расстояние между элементами каждого кластера (также называемое кластеризацией средней связи, используемое, например, в UPGMA ):
  • Сумма всех внутрикластерных дисперсий.
  • Увеличение дисперсии для объединяемого кластера ( метод Уорда [ 8 ] )
  • Вероятность того, что кластеры-кандидаты возникают из одной и той же функции распределения (V-связь).

В случае связанных минимальных расстояний пара выбирается случайным образом, что позволяет создать несколько структурно различных дендрограмм. Альтернативно, все связанные пары могут быть объединены одновременно, создавая уникальную дендрограмму. [ 18 ]

Всегда можно принять решение прекратить кластеризацию, когда количество кластеров достаточно мало (критерий числа). Некоторые связи могут также гарантировать, что агломерация происходит на большем расстоянии между кластерами, чем предыдущая агломерация, и тогда можно остановить кластеризацию, когда кластеры находятся слишком далеко друг от друга, чтобы их можно было объединить (критерий расстояния). Однако это не относится, например, к центроидной связи, где так называемые развороты [ 19 ] (инверсии, отклонения от ультраметричности).

Разделительная кластеризация

[ редактировать ]

Основной принцип разделительной кластеризации был опубликован как алгоритм DIANA (кластеризация DIvisive ANAанализ). [ 20 ] Первоначально все данные находятся в одном кластере, а самый большой кластер разделяется до тех пор, пока каждый объект не станет отдельным. Потому что существуют способы разделения каждого кластера, необходимы эвристики. ДИАНА выбирает объект с максимальным средним отличием, а затем перемещает в этот кластер все объекты, которые больше похожи на новый кластер, чем на остальные.

Неформально, DIANA — это не столько процесс «разделения», сколько «выделения»: на каждой итерации существующий кластер (например, начальный кластер всего набора данных) выбирается для формирования нового кластера внутри него. Объекты постепенно перемещаются в этот вложенный кластер и опустошают существующий кластер. В конце концов, внутри кластера остаются только вложенные кластеры, выросшие там, без каких-либо отдельных объектов.

Формально ДИАНА действует следующим образом:

  1. Позволять быть набором всех индексы объектов и совокупность всех сформировавшихся на данный момент кластеров.
  2. Повторяйте следующее до тех пор, пока :
    1. Найдите текущий кластер с двумя или более объектами наибольшего диаметра:
    2. Найдите в этом кластере объект, наиболее непохожий на остальную часть кластера:
    3. Поп из старого кластера и поместить его в новую отколовшуюся группу .
    4. Пока не пусто, продолжайте мигрировать объекты из чтобы добавить их в . Чтобы выбрать, какие объекты мигрировать, не учитывайте только их непохожесть. , но и с поправкой на непохожесть на отколовшуюся группу: пусть где мы определяем , то либо прекратите итерацию, когда или мигрировать .
    5. Добавлять к .

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

Дендрограмму ДИАНЫ можно построить, позволив отколовшейся группе быть ребенком опустошенного кластера каждый раз. Это создает дерево с как его корень и уникальные однообъектные кластеры в качестве его листьев.

Программное обеспечение

[ редактировать ]

Реализации с открытым исходным кодом

[ редактировать ]
иерархической кластеризации Дендрограмма набора данных Iris (с использованием R ). Источник
Иерархическая кластеризация и интерактивная визуализация дендрограмм в пакете интеллектуального анализа данных Orange .
  • ALGLIB реализует несколько алгоритмов иерархической кластеризации (однозвенная, полная ссылка, Ward) на C++ и C# с памятью O(n²) и временем выполнения O(n³).
  • ELKI включает в себя несколько алгоритмов иерархической кластеризации, различные стратегии связывания, а также эффективный SLINK, [ 2 ] КЛИНК [ 3 ] и алгоритмы Андерберга, гибкое извлечение кластеров из дендрограмм и различные другие кластерного анализа . алгоритмы
  • У Джулии есть реализация внутри пакета Clustering.jl. [ 21 ]
  • Octave , GNU аналог MATLAB, реализует иерархическую кластеризацию в функции «linkage».
  • Orange , пакет программного обеспечения для интеллектуального анализа данных, включает в себя иерархическую кластеризацию с интерактивной визуализацией дендрограмм.
  • R имеет встроенные функции [ 22 ] и пакеты, предоставляющие функции для иерархической кластеризации. [ 23 ] [ 24 ] [ 25 ]
  • SciPy реализует иерархическую кластеризацию на Python, включая эффективный алгоритм SLINK.
  • scikit-learn также реализует иерархическую кластеризацию в Python.
  • Weka включает в себя иерархический кластерный анализ.

Коммерческие реализации

[ редактировать ]
  • MATLAB включает иерархический кластерный анализ.
  • SAS включает иерархический кластерный анализ в PROC CLUSTER.
  • Mathematica включает пакет иерархической кластеризации.
  • NCSS включает иерархический кластерный анализ.
  • SPSS включает иерархический кластерный анализ.
  • Qlucore Omics Explorer включает иерархический кластерный анализ.
  • Stata включает в себя иерархический кластерный анализ.
  • CrimeStat включает алгоритм иерархического кластера ближайшего соседа с графическим выводом для географической информационной системы.

См. также

[ редактировать ]
  1. ^ Нильсен, Франк (2016). «8. Иерархическая кластеризация» . Введение в HPC с MPI для науки о данных . Спрингер. стр. 195–211. ISBN  978-3-319-21903-5 .
  2. ^ Эппштейн, Дэвид (31 декабря 2001 г.). «Быстрая иерархическая кластеризация и другие применения динамических ближайших пар» . Журнал экспериментальной алгоритмики ACM . 5 : 1–с. arXiv : cs/9912014 . дои : 10.1145/351827.351829 . ISSN   1084-6654 .
  3. ^ «Процедура CLUSTER: методы кластеризации» . Руководство пользователя SAS/STAT 9.2 . Институт САС . Проверено 26 апреля 2009 г.
  4. ^ Секели, Г.Дж.; Риццо, МЛ (2005). «Иерархическая кластеризация с помощью соединения между-внутри расстояний: расширение метода минимальной дисперсии Уорда». Журнал классификации . 22 (2): 151–183. дои : 10.1007/s00357-005-0012-9 . S2CID   206960007 .
  5. ^ Фернандес, Альберто; Гомес, Серхио (2020). «Универсальная связь: семейство экономящих пространство стратегий агломеративной иерархической кластеризации». Журнал классификации . 37 (3): 584–597. arXiv : 1906.09222 . дои : 10.1007/s00357-019-09339-z . S2CID   195317052 .
  6. ^ Jump up to: а б Уорд, Джо Х. (1963). «Иерархическая группировка для оптимизации целевой функции». Журнал Американской статистической ассоциации . 58 (301): 236–244. дои : 10.2307/2282967 . JSTOR   2282967 . МР   0148188 .
  7. ^ Jump up to: а б с д Подани, Янош (1989), Мучина, Л.; Дейл, МБ (ред.), «Новые методы комбинаторной кластеризации» , Численная синтаксономия , Дордрехт: Springer Нидерланды, стр. 61–77, doi : 10.1007/978-94-009-2432-1_5 , ISBN  978-94-009-2432-1 , получено 4 ноября 2022 г.
  8. ^ Базальт, Николас; Беллотти, Роберто; Де Карло, Франческо; Факки, Паоло; Панталео, Эстер; Паскацио, Саверио (15 июня 2007 г.). «Хаусдорфская кластеризация финансовых временных рядов» . Физика А: Статистическая механика и ее приложения . 379 (2): 635–644. arXiv : физика/0504014 . Бибкод : 2007PhyA..379..635B . дои : 10.1016/j.physa.2007.01.011 . ISSN   0378-4371 . S2CID   27093582 .
  9. ^ Jump up to: а б Шуберт, Эрих (2021). HACAM: Иерархическая агломеративная кластеризация вокруг медоидов – и ее ограничения (PDF) . LWDA'21: Обучение, знания, данные, анализ, 1–03 сентября 2021 г., Мюнхен, Германия. стр. 191–204 – через CEUR-WS.
  10. ^ Миямото, Садааки; Кайдзу, Юске; Эндо, Ясунори (2016). Иерархическая и неиерархическая кластеризация медоидов с использованием асимметричных мер сходства . 2016 Совместная 8-я Международная конференция по мягким вычислениям и интеллектуальным системам (SCIS) и 17-й Международный симпозиум по передовым интеллектуальным системам (ISIS). стр. 400–403. дои : 10.1109/SCIS-ISIS.2016.0091 .
  11. ^ Герр, Доминик; Хан, Ци; Ломанн, Штеффен; Эртл, Томас (2016). Уменьшение визуального беспорядка посредством иерархического проецирования многомерных размеченных данных (PDF) . Графический интерфейс. Графический интерфейс . дои : 10.20380/gi2016.14 . Проверено 4 ноября 2022 г.
  12. ^ Чжан, Вэй; Ван, Сяоган; Чжао, Дели; Тан, Сяоу (2012). «Связь степеней графа: агломеративная кластеризация на ориентированном графе». В Фитцгиббоне, Эндрю; Лазебник Светлана ; Перона, Пьетро; Сато, Йоичи; Шмид, Корделия (ред.). Компьютерное зрение – ECCV 2012 . Конспекты лекций по информатике. Том. 7572. Шпрингер Берлин Гейдельберг. стр. 428–441. arXiv : 1208.5092 . Бибкод : 2012arXiv1208.5092Z . дои : 10.1007/978-3-642-33718-5_31 . ISBN  9783642337185 . S2CID   14751 . См. также: https://github.com/waynezhanghk/gacluster.
  13. ^ Чжан, В.; Чжао, Д.; Ван, X. (2013). «Агломеративная кластеризация с помощью максимального инкрементального интеграла по пути». Распознавание образов . 46 (11): 3056–65. Бибкод : 2013PatRe..46.3056Z . CiteSeerX   10.1.1.719.5355 . дои : 10.1016/j.patcog.2013.04.013 .
  14. ^ Чжао, Д.; Тан, X. (2008). «Циклизация кластеров с помощью дзета-функции графа». NIPS'08: Материалы 21-й Международной конференции по нейронным системам обработки информации . Курран. стр. 1953–60. CiteSeerX   10.1.1.945.1649 . ISBN  9781605609492 .
  15. ^ Может.; Дерксен, Х.; Хонг, В.; Райт, Дж. (2007). «Сегментация многомерных смешанных данных посредством кодирования и сжатия данных с потерями». Транзакции IEEE по анализу шаблонов и машинному интеллекту . 29 (9): 1546–62. дои : 10.1109/TPAMI.2007.1085 . hdl : 2142/99597 . ПМИД   17627043 . S2CID   4591894 .
  16. ^ Фернандес, Альберто; Гомес, Серхио (2008). «Решение неоднозначности в агломеративной иерархической кластеризации с использованием мультидендрограмм». Журнал классификации . 25 (1): 43–65. arXiv : cs/0608049 . дои : 10.1007/s00357-008-9004-x . S2CID   434036 .
  17. ^ Лежандр, П.; Лежандр, LFJ (2012). «Кластерный анализ §8.6 Развороты» . Численная экология . Развитие экологического моделирования. Том. 24 (3-е изд.). Эльзевир. стр. 376–7. ISBN  978-0-444-53868-0 .
  18. ^ Кауфман, Л.; Руссиу, П.Дж. (2009) [1990]. «6. Дивизионный анализ (Программа ДИАНА)» . Поиск групп в данных: введение в кластерный анализ . Уайли. стр. 253–279. ISBN  978-0-470-31748-8 .
  19. ^ «Иерархическая кластеризация · Clustering.jl» . Сайт juliastats.org . Проверено 28 февраля 2022 г.
  20. ^ «функция hclust — RDocumentation» . www.rdocumentation.org . Проверено 7 июня 2022 г.
  21. ^ Галили, Таль; Бенджамини, Йоав; Симпсон, Гэвин; Джефферис, Грегори (28 октября 2021 г.), dendextend: Расширение функциональности «дендрограммы» в R , получено 7 июня 2022 г.
  22. ^ Паради, Эммануэль; и др. «Обезьяна: анализ филогенетики и эволюции» . Проверено 28 декабря 2022 г.
  23. ^ Фернандес, Альберто; Гомес, Серхио (12 сентября 2021 г.). «mdendro: расширенная агломеративная иерархическая кластеризация» . Проверено 28 декабря 2022 г.

Дальнейшее чтение

[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: a07576077b747c248aa8056e9d6a86a4__1721929800
URL1:https://arc.ask3.ru/arc/aa/a0/a4/a07576077b747c248aa8056e9d6a86a4.html
Заголовок, (Title) документа по адресу, URL1:
Hierarchical clustering - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)