Eu quero agrupar ~ 22000 pontos. Muitos algoritmos de agrupamento funcionam melhor com suposições iniciais de maior qualidade. Quais ferramentas existem para me dar uma boa idéia da forma aproximada dos dados?
Eu quero poder escolher minha própria métrica de distância, para que um programa no qual eu possa alimentar uma lista de distâncias em pares seja ótimo. Gostaria de poder fazer algo como destacar uma região ou cluster no visor e obter uma lista de quais pontos de dados estão nessa área.
O software livre é preferido, mas eu já tenho SAS e MATLAB.
fonte
A exploração dos resultados do clustering em grandes dimensões pode ser feita no R usando os pacotes clusterfly e gcExplorer . Procure mais aqui .
fonte
(Meses depois), uma boa maneira de visualizar os clusters k e ver o efeito de vários k é construir uma Árvore de Abrangência Mínima e observar as arestas mais longas. Por exemplo,
Aqui existem 10 clusters, com 9 arestas mais longas 855 899 942 954 1003 1005 1069 1134 1267.
Para 9 clusters, reduza a aresta ciana 855; para 8, o roxo 899; e assim por diante.
- Wayne, algoritmos gananciosos .
22000 pontos, distâncias 242M em pares, leva ~ 1 gigabyte (float32): pode caber.
Para visualizar uma árvore ou gráfico de alta dimensão em 2d, consulte Escala multidimensional (também da Kruskal) e a enorme literatura sobre redução de dimensão. No entanto, em dim> 20, a maioria das distâncias estará próxima da mediana, por isso acredito que a redução de dimensão não pode funcionar lá.
fonte
Eu tive uma boa experiência com o KNIME durante um dos meus projetos. É uma excelente solução para mineração e gráficos exploratórios rápidos. Além disso, fornece integração perfeita dos módulos R e Weka.
fonte
Veja também o ELKI , um software de mineração de dados de código aberto. O Wikimedia commons possui uma galeria com imagens produzidas com ELKI , muitas das quais relacionadas à análise de cluster.
fonte
Dê uma olhada no Cluster 3.0 . Não tenho certeza se fará tudo o que você deseja, mas está muito bem documentado e permite escolher entre algumas métricas de distância. A parte de visualização é feita através de um programa separado chamado Java TreeView ( captura de tela ).
fonte
GGobi parece interessante para isso. Outra abordagem poderia ser tratar suas matrizes de similaridade / distância inversa como matrizes de adjacência da rede e inseri-las em uma rotina de análise de rede (por exemplo, igraph em R ou talvez Pajek). Com essa abordagem, eu tentaria cortar o corte das distâncias dos nós em um empate binário em vários pontos de corte.
fonte
Weka é um programa de código aberto para mineração de dados (wirtten e extensível em Java), Orange é um programa de código aberto e biblioteca para mineração de dados e aprendizado de máquina (escrito em Python). Ambos permitem uma exploração visual conveniente e eficiente de dados multidimensionais
fonte
O software numérico gratuito do DataMelt inclui a biblioteca Java chamada JMinHep. Por favor, consulte o manual na seção "Cluster de dados". Ele fornece uma GUI para visualizar pontos de dados multidimensionais em XY e executar vários algoritmos de agrupamento de dados.
fonte