Hier finden Sie eine Zusammenfassung mehrerer Clustering-Algorithmen, mit deren Hilfe die Frage beantwortet werden kann
"Welche Clustertechnik sollte ich verwenden?"
Es gibt keine objektiv „richtigen“ Clustering - Algorithmus Ref
Clustering-Algorithmen können anhand ihres "Cluster-Modells" kategorisiert werden. Ein Algorithmus, der für eine bestimmte Art von Modell entwickelt wurde, schlägt in der Regel bei einer anderen Art von Modell fehl. Zum Beispiel kann k-means keine nicht konvexen Cluster finden, sondern nur kreisförmige Cluster.
Daher wird das Verständnis dieser "Cluster-Modelle" der Schlüssel zum Verständnis der Auswahl zwischen den verschiedenen Cluster-Algorithmen / Methoden. Typische Cluster-Modelle umfassen:
[1] Konnektivitätsmodelle: Erstellt Modelle, die auf der Distanzkonnektivität basieren. ZB hierarchisches Clustering. Wird verwendet, wenn wir unterschiedliche Partitionen basierend auf der Schnitthöhe des Baums benötigen. R-Funktion: hclust im Statistikpaket.
[2] Schwerpunktmodelle: Erstellt Modelle, indem jeder Cluster durch einen einzelnen Mittelwertvektor dargestellt wird. Wird verwendet, wenn eine klare Partitionierung erforderlich ist (im Gegensatz zum später beschriebenen Fuzzy-Clustering). R-Funktion: km bedeutet im Statistikpaket.
[3] Verteilungsmodelle: Erstellt Modelle, die auf statistischen Verteilungen basieren, z. B. multivariate Normalverteilungen, die vom Erwartungsmaximierungsalgorithmus verwendet werden. Wird verwendet, wenn Clusterformen willkürlich sein können, im Gegensatz zu k-means, das kreisförmige Cluster annimmt. R-Funktion: Emcluster im Emcluster-Paket.
[4] Dichtemodelle: Erstellt Modelle basierend auf Clustern als verbundene dichte Regionen im Datenraum. ZB DBSCAN und OPTICS. Wird verwendet, wenn Clusterformen beliebig sein können, im Gegensatz zu k-means, das kreisförmige Cluster annimmt. R-Funktion dbscan im Paket dbscan.
[5] Subraummodelle: Erstellt Modelle, die sowohl auf Clustermitgliedern als auch auf relevanten Attributen basieren. ZB Biklustering (auch als Co-Clustering oder Two-Mode-Clustering bezeichnet). Wird verwendet, wenn gleichzeitiges Zeilen- und Spaltenclustering erforderlich ist. R-Funktion Biclust im Biclust-Paket.
[6] Gruppenmodelle: Erstellt Modelle basierend auf den Gruppierungsinformationen. ZB kollaboratives Filtern (Recommender-Algorithmus). R-Funktion Recommender im recommenderlab-Paket.
[7] Graphbasierte Modelle: Erstellt Modelle basierend auf Clique. Community-Strukturerkennungsalgorithmen versuchen, dichte Untergraphen in gerichteten oder ungerichteten Graphen zu finden. ZB R-Funktion cluster_walktrap im igraph-Paket.
[8] Kohonen Self-Organizing Feature Map: Erstellt Modelle basierend auf einem neuronalen Netzwerk. R-Funktion som im kohonen-Paket.
[9] Spectral Clustering: Erstellt Modelle auf der Grundlage einer nicht konvexen Clusterstruktur oder wenn eine Messung des Zentrums keine geeignete Beschreibung des gesamten Clusters darstellt. R-Funktion specc im Kernlab-Paket.
[10] Subraum-Clustering: Bei hochdimensionalen Daten können Distanzfunktionen problematisch sein. Cluster-Modelle enthalten die relevanten Attribute für den Cluster. ZB HDDC-Funktion im R-Paket HDclassif.
[11] Sequenz-Clustering: Gruppieren Sie verwandte Sequenzen. rBlast-Paket.
[12] Affinitätsausbreitung: Erstellt Modelle auf der Grundlage der Nachrichtenübermittlung zwischen Datenpunkten. Es ist nicht erforderlich, die Anzahl der Cluster zu bestimmen, bevor der Algorithmus ausgeführt wird. Es ist besser für bestimmte Computer Vision- und computerbiologische Aufgaben, z. B. das Zusammenfügen von Bildern menschlicher Gesichter und das Identifizieren regulierter Transkripte, als k-means, Ref Rpackage APCluster.
[13] Stream-Clustering: Erstellt Modelle auf der Grundlage von Daten, die kontinuierlich eingehen, wie Telefonaufzeichnungen, Finanztransaktionen usw. ZB R-Paket BIRCH [ https://cran.r-project.org/src/contrib/Archive/birch/]
[14] Dokument-Clustering (oder Text-Clustering): Erstellt Modelle auf Basis von SVD. Es wurde in der Themenextraktion verwendet. Beispiel: Carrot [ http://search.carrot2.org] ist eine Open-Source-Suchergebnissen-Clustering-Engine, mit der Dokumente in thematische Kategorien gruppiert werden können.
[15] Latentes Klassenmodell: Es verknüpft eine Menge beobachteter multivariater Variablen mit einer Menge latenter Variablen. Ökobilanzen können bei der kollaborativen Filterung verwendet werden. R function Recommender im recommenderlab-Paket verfügt über eine kollaborative Filterfunktion.
[16] Biclustering: Wird verwendet, um Zeilen und Spalten von Zwei-Modus-Daten gleichzeitig zu gruppieren. ZB R-Funktion Biclust im Paket Biclust.
[17] Soft Clustering (Fuzzy Clustering): Jedes Objekt gehört zu einem bestimmten Grad zu jedem Cluster. ZB R Fclust-Funktion im fclust-Paket.