Como determino algoritmicamente os valores de T1 e T2 para agrupamento de dossel?


8

Estou tentando usar o agrupamento de dossel para fornecer clusters iniciais para o KMeans no mahout.

Existe uma maneira de determinar / aproximar os valores dos limites de distância T1 e T2 algoritmicamente? No momento, tenho T1 = 100 e T2 = 1, o que não parece estar fazendo nada de bom.


Essa referência sugere vagamente que T1 e T2 podem ser configurados com "validação cruzada". Observe que esses limites dependem intimamente da natureza da métrica, da dimensão do problema e até da distribuição dos dados.
whuber

Eu tenho um conjunto de dados bastante grande, com dimensões> 100K (alguns shows), existe uma maneira de estimar a técnica de distribuição / amostragem que funcionaria?
Rohan Monga

Portanto, possui algumas centenas de k dimensões. Quantas linhas? É contínuo ou categórico? Quão escasso é? Por que você está agrupando nele - qual é o objetivo? Você já tentou k-means normais? Se você não gosta da sua dimensionalidade - observou a redução da dimensionalidade ou a importância variável?
EngrStudent

Respostas:


1

Como observa whuber, os autores do algoritmo de agrupamento de dossel sugerem que T1 e T2 podem ser configurados com validação cruzada. No entanto, esses parâmetros podem ser ajustados da mesma maneira que qualquer outro hiperparâmetro. Uma das técnicas mais comuns é a pesquisa em grade, em que um intervalo é especificado para cada parâmetro e um tamanho da etapa de como os parâmetros são alterados a cada iteração. Por exemplo, suponha que especificamos T1 para ter um intervalo de valores de 25 a 100 com um tamanho de etapa 25. Isso significaria que os possíveis valores de T1 para tentar seriam (25, 50, 75, 100). Da mesma forma, poderíamos definir T2 para ter valores possíveis entre 1-4, com um tamanho de etapa 1, de modo que os valores possíveis sejam (1,2,3,4). Isso significaria que havia 16 conjuntos possíveis de parâmetros para tentar. Como em qualquer outro algoritmo de classificação ou clustering, você avalia sua eficácia calculando sua pontuação F1, precisão / erro ou outra métrica de desempenho para determinar o melhor conjunto dos 16 conjuntos de parâmetros. Além da pesquisa em grade, outros algoritmos de otimização de hiperparâmetros incluem Nelder-Mead ,algoritmos genéticos , recozimento simulado e otimização de enxame de partículas , entre muitos outros. Esses algoritmos ajudarão você a determinar valores apropriados para T1 e T2 de maneira automatizada.

Você notou acima que você tem um conjunto de dados com 100 mil dimensões. Você está se referindo ao número de linhas ou ao número de colunas nos seus dados? Se você estiver se referindo ao número de colunas, sugiro executar uma combinação de seleção de recursos com base na variação de recursos individuais e extração de recursos por meio da análise de componentes principais (PCA) ou Kernel-PCA . Mesmo que muitos de seus recursos sejam úteis (por exemplo, forneça um ganho de informação para discriminar entre valores de variáveis ​​de clusters / classes / saída), ter muitos recursos pode significar que seu algoritmo de clustering é incapaz de determinar distâncias apropriadas entre instâncias.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.