Es ist ziemlich schwierig, eine eindeutige Lösung für die Auswahl der "besten" Anzahl von Clustern in Ihren Daten zu finden, unabhängig von der von Ihnen verwendeten Cluster-Methode, da die Cluster-Analyse versucht, Gruppen statistischer Einheiten (Einzelpersonen oder Variablen) zu isolieren ) zu explorativen oder beschreibenden Zwecken. Daher müssen Sie auch die Ausgabe Ihres Clustering-Schemas interpretieren, und mehrere Cluster-Lösungen können gleichermaßen interessant sein.
Was nun die üblichen statistischen Kriterien anbelangt, die verwendet werden, um zu entscheiden, wann die Aggregation von Daten beendet werden soll, sind die meisten von @ars angegebenen visuell geführten Kriterien , einschließlich der Analyse des Dendrogramms oder der Inspektion von Clusterprofilen, auch Silhouette- Plots genannt (Rousseeuw, 1987). . Verschiedene numerische Kriterien , auch als Validitätsindizes bekannt, wurden ebenfalls vorgeschlagen, z. B. Dunns Validitätsindex, Davies-Bouldin-Validitätsindex, C-Index, Huberts Gamma, um nur einige zu nennen. Hierarchisches Clustering wird häufig zusammen mit k-means ausgeführt (in der Tat mehrere Instanzen von k-means, da es sich um einen stochastischen Algorithmus handelt), um die gefundenen Clustering-Lösungen zu unterstützen. Ich weiß nicht, ob all diese Dinge in Python leicht verfügbar sind, aber in R ist eine große Anzahl von Methoden verfügbar (sieheCluster- Task-Ansicht, die bereits von @mbq für eine verwandte Frage zitiert wurde: Welche Tools können zum Anwenden von Cluster-Algorithmen auf MovieLens verwendet werden? ). Andere Ansätze umfassen Fuzzy-Clustering und modellbasiertes Clustering ( in der psychometrischen Community auch Latent Trait Analysis genannt ), wenn Sie nach einer zuverlässigeren Methode suchen, um die Anzahl der Cluster in Ihren Daten zu bestimmen.
Übrigens, ich bin gerade auf diese Webseite gestoßen , scipy-cluster , eine Erweiterung von Scipy zum Generieren, Visualisieren und Analysieren von hierarchischen Clustern . Vielleicht beinhaltet es andere Funktionalitäten? Ich habe auch von PyChem gehört, das ziemlich gutes Material für multivariate Analysen bietet.
Die folgende Referenz kann ebenfalls hilfreich sein:
Steinley, D. & Brusco, MJ (2008). Variablenauswahl in der Clusteranalyse: Ein empirischer Vergleich von acht Verfahren. Psychometrika , 73 , 125 & ndash; 144.