Як зрозуміти недоліки ієрархічної кластеризації?


19

Чи може хтось пояснити плюси та мінуси ієрархічної кластеризації?

  1. Чи мають ієрархічні кластери такі ж недоліки, що і K?
  2. Які переваги ієрархічної кластеризації перед K означає?
  3. Коли ми повинні використовувати засоби K над ієрархічною кластеризацією та навпаки?

Відповіді на цю посаду дуже добре пояснюють недоліки k означає. Як зрозуміти недоліки К-засобів


2
У цій відповіді я торкнувся деяких потенційно проблемних аспектів ієрархічного агломераційного аналізу кластерів. Основним "недоліком" є те, що це нетиповий, однопрохідний жадібний алгоритм. Завдяки жадібному алгоритму ви оптимізуєте завдання поточного кроку, який - для більшості методів ХК - не обов'язково гарантує найкращий розділ на віддаленому майбутньому кроці. Основна перевага HC полягає в тому, що він є гнучким щодо вибору міри близькості для використання. @Mic вже дав хорошу відповідь нижче, тому я просто лунаю.
ttnphns

Відповіді:


13

В той час, як k -мейн намагається оптимізувати глобальну мету (дисперсія кластерів) і досягає локального оптимального, агломераційна ієрархічна кластеризація має на меті знайти найкращий крок у кожному злитті кластера (жадібний алгоритм), який робиться точно, але призводить до потенційно неоптимального рішення .

Слід використовувати ієрархічну кластеризацію, коли базові дані мають ієрархічну структуру (як кореляція на фінансових ринках), і ви хочете відновити ієрархію. Ви все ще можете застосувати k для цього, але ви можете закінчити з розділами (від найбільш грубого (усі точки даних у кластері) до найтоншого (кожна точка даних є кластером)), які не вкладаються, і таким чином не належна ієрархія.

Якщо ви хочете зануритися в більш тонкі властивості кластеризації, ви, можливо, не захочете протиставити плоскі кластеризації, такі як k -значення, ієрархічній кластеризації, такі як Одинична, Середня, Повна Зв'язки. Наприклад, всі ці кластеризації зберігають простір, тобто, коли ви створюєте кластери, ви не спотворюєте простір, тоді як ієрархічна кластеризація, наприклад Ward, не зберігає простір, тобто на кожному кроці об'єднання вона буде спотворювати метричний простір.

На закінчення, недоліки ієрархічних алгоритмів кластеризації можуть сильно відрізнятися один від одного. Деякі можуть поділяти властивості, схожі на k -медіа. Але вони також можуть мати різні властивості: Уорд розширює простір, тоді як одинарний зв'язок зберігає простір, як k -значення.

- редагування для точного властивостей, що зберігають простір, і розширення простору

Збереження простору: де D i j - відстань між кластерами C i і C j, які потрібно об'єднати, і d

Dij[minxCi,yCjd(x,y),maxxCi,yCjd(x,y)]
DijCiCjd - відстань між точками даних.

Розширення простору: тобто шляхом злиття C i і C j алгоритм відсуне далі кластер C k .

D(CiCj,Ck)max(Dik,Djk),
CiCjCk

Чи можете ви надати ще кілька прикладів даних, що мають ієрархічну структуру? Не наслідував приклад фінансового ринку.
GeorgeOfTheRF

Звичайно. пор. arxiv.org/pdf/cond-mat/9802256.pdf або просто малюнок 7 в arxiv.org/pdf/1506.00976.pdf , який зображує матрицю кореляції , яка має ( високий рівень шуму) ієрархічну структуру кореляції блоків: ви можете помітити блоки на основному діагоналі, які розділені на більше блоків, кожен розділений на ще більше блоків. Це приблизно відповідає підрозділу в регіонах (Європа, США, Азія, колишня Японія, Японія), потім кожен регіон розділений на якість активів (скажімо, висока якість проти мотлоху), потім розділений на великі промислові сектори (роздріб, промисловість, медіа), далі підрозділити на (аерокосмічний, авто ...)
мікрофон

3
+1. Однак should use hierarchical clustering when underlying data has a hierarchical structure... and you want to recover the hierarchyне обов’язково. У більшості випадків навпаки. Ієрархія ХК - це скоріше історія альго, ніж структура даних . І все-таки це питання є зрештою філософським / логічним, не таким статистичним.
ttnphns

Ward is not space-conserving, i.e. at each merging step it will distort the metric space. Можете написати про це більше? Це не дуже зрозуміло.
ttnphns

Ward is space-dilating, whereas Single Linkage is space-conserving like k-means. Ви хотіли сказати, що укладання контракту на одне з'єднання?
ttnphns

13

Масштабованість

означає, тут явний переможець. Про ( п K d я ) набагато кращеніж O ( п 3 г ) (в деяких випадках O ( п 2 д ) ) масштабованість ієрархічної кластеризаціїтому щоправилоі до і я і д невеликі (на жаль, я , як правило, ростуть з п , тому O ( п ) робитьНЕkO(nkdi)O(n3d)O(n2d)kidinO(n)зазвичай тримають). Також споживання пам’яті лінійне, на відміну від квадратичного (зазвичай існують спеціальні лінійні випадки).

Гнучкість

-засоби в застосуванні надзвичайно обмежені. Він по суті обмежений евклідовими відстанями (включаючи евклідові в ядрах простору і розбіжності Брегмана, але це досить екзотично, і ніхто насправді їх не використовує з k -засобами). Що ще гірше, k -менів працює лише на числових даних (які насправді повинні бути безперервними та щільними, щоб добре підходити для k -медіа).kkkk

Ієрархічна кластеризація - явний переможець тут. Він навіть не вимагає відстані - будь-який захід можна використовувати, включаючи функції подібності, просто віддаючи перевагу високим значенням низьким значенням. Категоричні дані? обов'язково використовуйте, наприклад, Жакард. Струни? Спробуйте відстань Левенштейна. Часовий ряд? впевнений. Дані змішаного типу? Відстань на говер. Є мільйони наборів даних, де можна використовувати ієрархічну кластеризацію, але де ви не можете використовувати -means.k

Модель

Тут немає переможця. -значить високий показник, оскільки він дозволяє значно скоротити дані. Центроїди легко зрозуміти та використовувати. З іншого боку, ієрархічна кластеризація виробляє дендрограму. Дендрограма також може бути дуже корисною для розуміння набору даних.k


Чи ієрархічна невдача, як k означає, коли кластери 1) не сферичні 2) мають різний радіус 3) мають різну щільність?
GeorgeOfTheRF

2
Обидва можуть працювати, і обидва можуть провалюватися. Ось чому такі речі, як дендрограми, корисні. Ніколи не довіряйте результату кластеризації "правильним".
Anonymous-Mousse -Встановити Моніку

Ієрархічна кластеризація може давати локальні оптимізації кластерів, оскільки вона базується на жадібному підході, але K означає дає кластери, оптимізовані глобально. Я також переконався, що пояснення ієрархічної кластеризації відносно легко для ділових людей порівняно із засобами K.
Arpit Sisodia

7

Я просто хотів трохи додати до інших відповідей про те, як у певному сенсі є сильна теоретична причина віддати перевагу певним ієрархічним методам кластеризації.

Поширене припущення в кластерному аналізі полягає в тому, що дані вибираються з деякої основної щільності ймовірності якої ми не маємо доступу. Але припустимо, ми мали до нього доступ. Як ми визначаємо кластери з е ?ff

Дуже природним та інтуїтивно зрозумілим є підхід сказати, що кластери - це області високої щільності. Наприклад, розглянемо нижню пікову щільність нижче:f

enter image description here

Намалювавши лінію на графіку, ми спонукаємо набір кластерів. Наприклад, якщо ми намалюємо лінію при , отримаємо два кластери. Але якщо провести лінію на λ 3 , отримаємо єдиний кластер.λ1λ3

Щоб зробити це більш точним, припустимо, що у нас є довільне . Які кластери f на рівні λ ? Вони є сполученою складовою множини суперрівень { x : f ( x ) λ } .λ>0fλ{x:f(x)λ}

λ λff

fXC1{x:f(x)λ1}C2{x:f(x)λ2}C1λ1, and C2 is a cluster at level λ2. Then if λ2<λ1, then either C1C2, or C1C2=. This nesting relationship holds for any pair of clusters in our collection, so what we have is in fact a hierarchy of clusters. We call this the cluster tree.

So now I have some data sampled from a density. Can I cluster this data in a way that recovers the cluster tree? In particular, we'd like a method to be consistent in the sense that as we gather more and more data, our empirical estimate of the cluster tree grows closer and closer to the true cluster tree.

Hartigan was the first to ask such questions, and in doing so he defined precisely what it would mean for a hierarchical clustering method to consistently estimate the cluster tree. His definition was as follows: Let A and B be true disjoint clusters of f as defined above -- that is, they are connected components of some superlevel sets. Now draw a set of n samples iid from f, and call this set Xn. We apply a hierarchical clustering method to the data Xn, and we get back a collection of empirical clusters. Let An be the smallest empirical cluster containing all of AXn, and let Bn be the smallest containing all of BXn. Then our clustering method is said to be Hartigan consistent if Pr(AnBn)=1 as n for any pair of disjoint clusters A and B.

Essentially, Hartigan consistency says that our clustering method should adequately separate regions of high density. Hartigan investigated whether single linkage clustering might be consistent, and found that it is not consistent in dimensions > 1. The problem of finding a general, consistent method for estimating the cluster tree was open until just a few years ago, when Chaudhuri and Dasgupta introduced robust single linkage, which is provably consistent. I'd suggest reading about their method, as it is quite elegant, in my opinion.

So, to address your questions, there is a sense in which hierarchical cluster is the "right" thing to do when attempting to recover the structure of a density. However, note the scare-quotes around "right"... Ultimately density-based clustering methods tend to perform poorly in high dimensions due to the curse of dimensionality, and so even though a definition of clustering based on clusters being regions of high probability is quite clean and intuitive, it often is ignored in favor of methods which perform better in practice. That isn't to say robust single linkage isn't practical -- it actually works quite well on problems in lower dimensions.

Lastly, I'll say that Hartigan consistency is in some sense not in accordance with our intuition of convergence. The problem is that Hartigan consistency allows a clustering method to greatly over-segment clusters such that an algorithm may be Hartigan consistent, yet produce clusterings which are very different than the true cluster tree. We have produced work this year on an alternative notion of convergence which addresses these issues. The work appeared in "Beyond Hartigan Consistency: Merge distortion metric for hierarchical clustering" in COLT 2015.


This is an interesting way of thinking about hierarchical clustering. I find it strongly reminiscent of clustering by nonparametric density estimation (pdf), which is implemented in R in the pdfCluster package. (I discuss it here.)
gung - Reinstate Monica

HDBSCAN* uses a similar approach.
Anony-Mousse -Reinstate Monica

3

An additional practical advantage in hierarchical clustering is the possibility of visualising results using dendrogram. If you don't know in advance what number of clusters you're looking for (as is often the case...), you can the dendrogram plot can help you choose k with no need to create separate clusterings. Dedrogram can also give a great insight into data structure, help identify outliers etc. Hierarchical clustering is also deterministic, whereas k-means with random initialization can give you different results when run several times on the same data. In k-means, you also can choose different methods for updating cluster means (although the Hartigan-Wong approach is by far the most common), which is no issue with hierarchical method.

EDIT thanks to ttnphns: One feature that hierarchical clustering shares with many other algorithms is the need to choose a distance measure. This is often highly dependent on the particular application and goals. This might be seen as an additional complication (another parameter to select...), but also as an asset - more possibilities. On the contrary, classical K-means algorithm specifically uses Euclidean distance.


3
I suppose "problem" in your last paragraph would be seen positively as an asset. K-means, however, is based implicitly on euclidean distance only.
ttnphns

Many possible choices can be a problem as well as an asset, indeed :) Thanks for the comment on k-means, I'll improve that paragraph.
Jacek Podlewski

@ttnphns Actually, " k-means " can be used with any Bregman divergences jmlr.org/papers/volume6/banerjee05b/banerjee05b.pdf ; I mean this is the case when considering that k-means is what results when considering the limiting case of Gaussian mixture models (from soft to hard), then by replacing Gaussian by another member of the exponential family, you replace the Euclidean distance by another Bregman divergence associated with the member of the family you picked. You end up with a similar algorithm scheme that aims to find a maximum likelihood with an expectation-maximization.
mic

I believe the original question was made with regard to "classical' K-means and not a slightest intention to delve into Bregman divergences. Nice remark though, I'll check out this paper more thoroughly for sure.
Jacek Podlewski

@mic nobody uses Bregman divergences beyond variations of Euclidean distance... it is a tiny tiny class only. But people would like to use e.g. Manhattan distance, Gower etc. which are not Bregman divergences for all I know.
Anony-Mousse -Reinstate Monica
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.