Alguém pode explicar os prós e os contras do cluster hierárquico?
- O cluster hierárquico tem as mesmas desvantagens que K significa?
- Quais são as vantagens do cluster hierárquico sobre o K significa?
- Quando devemos usar os meios K sobre o cluster hierárquico e vice-versa?
As respostas a este post explicam muito bem as desvantagens de k. Como entender as desvantagens do K-means
clustering
k-means
unsupervised-learning
hierarchical-clustering
GeorgeOfTheRF
fonte
fonte
Respostas:
Considerando que -means tenta otimizar um objetivo global (variação dos clusters) e alcança um cluster hierárquico aglomerado ideal local, visando encontrar a melhor etapa em cada fusão de cluster (algoritmo ganancioso), que é feita exatamente, mas resultando em uma solução potencialmente subótima .k
Deve-se usar o cluster hierárquico quando os dados subjacentes tiverem uma estrutura hierárquica (como as correlações nos mercados financeiros) e você desejar recuperar a hierarquia. Você ainda pode aplicar os meiosk para fazer isso, mas pode acabar com partições (do mais grosseiro (todos os pontos de dados de um cluster) até o mais fino (cada ponto de dados é um cluster)) que não está aninhado e, portanto, não é uma hierarquia adequada.
Se você deseja se aprofundar nas propriedades mais refinadas do cluster, talvez não queira opor o cluster simples, como -eans, ao cluster hierárquico, como os Links Único, Médio e Completo. Por exemplo, todos esses clusters economizam espaço, ou seja, quando você está construindo clusters, não distorce o espaço, enquanto um cluster hierárquico como Ward não economiza espaço, ou seja, a cada etapa da fusão, distorce o espaço métrico.k
Para concluir, as desvantagens dos algoritmos hierárquicos de clustering podem ser muito diferentes entre si. Alguns podem compartilhar propriedades semelhantes ak -means: Ward visa otimizar a variação, mas o Single Linkage não. Mas eles também podem ter propriedades diferentes: Ward é dilatador de espaço, enquanto o Single Linkage é conservador de espaço, como k médias.
- edite para precisar as propriedades de conservação e dilatação de espaço
Dilatação de espaço: ou seja, mediante a fusão C i e C j o algoritmo vai empurrar mais longe do cluster. C k
fonte
should use hierarchical clustering when underlying data has a hierarchical structure... and you want to recover the hierarchy
não necessariamente. Na maioria dos casos, pelo contrário. A hierarquia do HC é mais uma história do algo do que uma estrutura dos dados . Ainda assim, essa questão é filosófica / lógica, não tão estatística.Ward is not space-conserving, i.e. at each merging step it will distort the metric space
. Você pode escrever mais sobre isso? Isso não está muito claro.Ward is space-dilating, whereas Single Linkage is space-conserving like k-means
. Você gostaria de contratar contratos de espaço para ligação única?Escalabilidade
significa é o vencedor claro aqui. O ( n ⋅ k ⋅ d ⋅ i ) é muito melhor do que o S ( n 3 d ) (em um dos casos alguns O ( n 2 d ) ) escalabilidade de agrupamento hierárquico porque geralmente ambos k e i e d são pequenos (infelizmente, i tende a crescer com n , então S ( n ) faznãok O ( n ⋅ k ⋅ d⋅ i ) O ( n3d) O ( n2d) k Eu d Eu n O ( n ) normalmente segure). Além disso, o consumo de memória é linear, ao contrário de quadrático (geralmente existem casos especiais lineares).
Flexibilidade
método k é extremamente limitado em aplicabilidade. É essencialmente limitado a distâncias euclidianas (incluindo euclidianas em espaços de núcleo e divergências de Bregman, mas são bastante exóticas e ninguém as usa com k- médias). Pior ainda, k- significa apenas funciona em dados numéricos (que na verdade devem ser contínuos e densos para ser um bom ajuste para k- significa).k k k k
O cluster hierárquico é o vencedor claro aqui. Nem sequer requer uma distância - qualquer medida pode ser usada, incluindo funções de similaridade, simplesmente preferindo valores altos a valores baixos. Dados categoriais? Certifique-se de usar, por exemplo, Jaccard. Cordas? Experimente a distância de Levenshtein. Séries temporais? certo. Dados do tipo misto? Distância de Gower. Existem milhões de conjuntos de dados nos quais você pode usar o cluster hierárquico, mas onde não pode usar -means.k
Modelo
Nenhum vencedor aqui. significa pontuação alta porque gera uma grande redução de dados. Os centróides são fáceis de entender e usar. O agrupamento hierárquico, por outro lado, produz um dendrograma. Um dendograma também pode ser muito, muito útil para entender seu conjunto de dados.k
fonte
Eu só queria acrescentar às outras respostas um pouco sobre como, em certo sentido, há uma forte razão teórica para preferir certos métodos hierárquicos de agrupamento.
Uma suposição comum na análise de cluster é que os dados são amostrados de alguma densidade de probabilidade subjacente qual não temos acesso. Mas suponha que tivéssemos acesso a ele. Como definiríamos os grupos de f ?f f
Uma abordagem muito natural e intuitiva é dizer que os grupos def são as regiões de alta densidade. Por exemplo, considere a densidade de dois picos abaixo:
Ao desenhar uma linha no gráfico, induzimos um conjunto de clusters. Por exemplo, se traçarmos uma linha em , obteremos os dois clusters mostrados. Mas se traçarmos a linha em λ 3λ1 λ3 , obteremos um único cluster.
Para tornar isso mais preciso, suponha que temos um arbitrário . Quais são os clusters de f no nível λ ? Eles são o componente conectado ao conjunto de superníveis { x : f ( x ) ≥ λ } .λ>0 f λ {x:f(x)≥λ}
Então agora eu tenho alguns dados amostrados de uma densidade. Posso agrupar esses dados de maneira a recuperar a árvore do cluster? Em particular, gostaríamos que um método fosse consistente no sentido de que, à medida que reunimos mais e mais dados, nossa estimativa empírica da árvore de cluster se aproxima cada vez mais da verdadeira árvore de cluster.
Essencialmente, a consistência de Hartigan diz que nosso método de agrupamento deve separar adequadamente regiões de alta densidade. Hartigan investigou se o clustering de ligação única pode ser consistente e descobriu que é não consistente em dimensões> 1. O problema de encontrar um método geral e consistente para estimar a árvore de cluster estava aberto até poucos anos atrás, quando Chaudhuri e Dasgupta introduziram ligação única robusta , comprovadamente consistente. Eu sugiro ler sobre o método deles, como é bastante elegante, na minha opinião.
Portanto, para responder às suas perguntas, há um sentido em que cluster hierárquico é a coisa "certa" a ser feita ao tentar recuperar a estrutura de uma densidade. No entanto, observe as aspas em torno de "corretas" ... Em última análise, os métodos de agrupamento com base na densidade tendem a apresentar um desempenho ruim em altas dimensões devido à maldição da dimensionalidade e, mesmo assim, uma definição de agrupamento com base em agrupamentos sendo regiões de alta probabilidade é bastante limpo e intuitivo, geralmente é ignorado em favor de métodos com melhor desempenho na prática. Isso não quer dizer que a ligação única robusta não seja prática - ela realmente funciona muito bem em problemas de dimensões inferiores.
Por fim, direi que, em certo sentido, a consistência de Hartigan não está de acordo com nossa intuição de convergência. O problema é que a consistência Hartigan permite que um método de agrupamento ultrapasse os clusters de maneira muito segmentada , de modo que um algoritmo possa ser consistente com o Hartigan, mas produza agrupamentos muito diferentes da verdadeira árvore de agrupamentos. Este ano, produzimos trabalhos sobre uma noção alternativa de convergência que aborda essas questões. O trabalho apareceu em "Além da consistência de Hartigan: métrica de distorção de mesclagem para cluster hierárquico" no COLT 2015.
fonte
R
no pdfCluster pacote. (Discuto aqui .)EDITAR graças ao ttnphns: Um recurso que o cluster hierárquico compartilha com muitos outros algoritmos é a necessidade de escolher uma medida de distância. Isso geralmente depende muito da aplicação e dos objetivos específicos. Isso pode ser visto como uma complicação adicional (outro parâmetro para selecionar ...), mas também como um ativo - mais possibilidades. Pelo contrário, o algoritmo K-means clássico usa especificamente a distância euclidiana.
fonte