Je veux regrouper ~ 22 000 points. De nombreux algorithmes de clustering fonctionnent mieux avec des suppositions initiales de meilleure qualité. Quels outils existent qui peuvent me donner une bonne idée de la forme approximative des données?
Je veux pouvoir choisir ma propre métrique de distance, donc un programme que je peux alimenter une liste de distances par paire serait très bien. J'aimerais pouvoir faire quelque chose comme mettre en évidence une région ou un cluster sur l'écran et obtenir une liste des points de données dans cette zone.
Logiciel libre préféré, mais j'ai déjà SAS et MATLAB.
L'exploration des résultats de clustering dans des dimensions élevées peut être effectuée dans R à l'aide des packages clusterfly et gcExplorer . Cherchez plus ici .
la source
(Des mois plus tard), une bonne façon d'imaginer les k-clusters et de voir l'effet de divers k est de construire un arbre couvrant minimum et de regarder les bords les plus longs. Par exemple,
Ici, il y a 10 groupes, avec 9 bords les plus longs 855 899 942 954 1003 1005 1069 1134 1267.
Pour 9 groupes, réduisez le bord cyan 855; pour 8, le violet 899; etc.
- Wayne, Algorithmes gourmands .
22000 points, 242M de distance par paire, prendre ~ 1 gigaoctet (float32): pourrait convenir.
Pour afficher un arbre ou un graphique de grande dimension dans 2d, voir Mise à l'échelle multidimensionnelle (également de Kruskal) et la vaste documentation sur la réduction de dimension. Cependant, en dim> 20, la plupart des distances seront proches de la médiane, donc je pense que la réduction de dimension ne peut pas fonctionner là-bas.
la source
J'ai eu une bonne expérience avec KNIME lors d'un de mes projets. C'est une excellente solution pour une exploration et une exploration graphiques rapides. En plus de cela, il offre une intégration transparente des modules R et Weka.
la source
Jetez également un œil à ELKI , un logiciel d'exploration de données open source. Wikimedia commons possède une galerie d' images produites avec ELKI , dont beaucoup sont liées à l'analyse des clusters.
la source
Jetez un oeil à Cluster 3.0 . Je ne sais pas si cela fera tout ce que vous voulez, mais il est assez bien documenté et vous permet de choisir parmi quelques métriques de distance. La pièce de visualisation se fait via un programme distinct appelé Java TreeView ( capture d'écran ).
la source
GGobi semble intéressant pour cela. Une autre approche pourrait être de traiter vos matrices de similitude / distance inverse comme des matrices d'adjacence de réseau et de les intégrer dans une routine d'analyse de réseau (par exemple, soit igraph dans R ou peut-être Pajek). Avec cette approche, j'expérimenterais la réduction de la distance des nœuds en une liaison binaire à différents points de coupure.
la source
Weka est un programme open source pour l'exploration de données (wirtten et extensible en Java), Orange est un programme open source et une bibliothèque pour l'exploration de données et l'apprentissage automatique (écrit en Python). Ils permettent tous deux une exploration visuelle pratique et efficace des données multidimensionnelles
la source
Le logiciel numérique gratuit DataMelt comprend une bibliothèque Java appelée JMinHep. Veuillez consulter le manuel dans la section "Groupement de données". Il fournit une interface graphique pour visualiser les points de données multidimensionnels dans XY et exécuter un certain nombre d'algorithmes de regroupement de données.
la source