Wie wähle ich eine Clustering-Methode aus? Wie validiere ich eine Cluster-Lösung (um die Wahl der Methode zu rechtfertigen)?

35

Eines der größten Probleme bei der Clusteranalyse ist, dass wir möglicherweise unterschiedliche Schlussfolgerungen ziehen müssen, wenn wir auf unterschiedlichen verwendeten Clustering-Methoden (einschließlich unterschiedlicher Verknüpfungsmethoden bei hierarchischem Clustering) basieren.

Ich möchte Ihre Meinung dazu wissen - welche Methode Sie wählen, und wie. Man könnte sagen "Die beste Methode zum Clustering ist die richtige Antwort"; Ich kann jedoch die Frage stellen, ob die Clusteranalyse eine unbeaufsichtigte Technik sein soll. Woher weiß ich, welche Methode oder Verknüpfung die richtige Antwort ist?

Generell gilt: Ist ein Clustering allein robust genug, um sich darauf zu verlassen? Oder brauchen wir eine zweite Methode, um ein gemeinsames Ergebnis zu erzielen, das auf beiden basiert?

Meine Frage bezieht sich nicht nur auf mögliche Methoden zur Validierung / Bewertung der Clusterleistung, sondern ist auch umfassender: Auf welcher Grundlage wählen / bevorzugen wir eine Clustermethode / einen Clusteralgorithmus gegenüber einer anderen. Gibt es außerdem allgemeine Warnungen , nach denen wir suchen sollten, wenn wir eine Methode zum Clustering unserer Daten auswählen?

Ich weiß, dass es eine sehr allgemeine Frage ist und sehr schwer zu beantworten ist. Ich würde nur gerne wissen, ob Sie Kommentare, Ratschläge oder Vorschläge haben, um mehr darüber zu erfahren.

Lerner
quelle
Überprüfen Sie auch diese ähnliche Frage.
TTNPHNS
Und dieser hier .
TTNPHNS
2
Einige Links speziell zur internen und externen Validierung: dies . Und das hier . Und das . Und das . Und das . Und das hier . Und dort drüben . Und suche nach mehr.
TTNPHNS

Antworten:

50

Oft wird gesagt, dass es keine andere Analysetechnik gibt, die so stark ist wie die Clusteranalyse.

Ich kann mir einige Dimensionen oder Aspekte der "Richtigkeit" dieser oder jener Clustering-Methode vorstellen :

  1. Cluster-Metapher . „Ich zog es diese Methode , weil es bildet Cluster solche (oder eine solche Art und Weise) , die mit meinem Konzept eines Clusters in meinem speziellen Projekt erfüllt“ . Jeder Cluster-Algorithmus oder Subalgorithmus / Methode impliziert die entsprechende Struktur / Build / Form eines Clusters. In Bezug auf hierarchische Methoden habe ich dies an einem der Punkte hier und auch hier beobachtet. Das heißt, einige Methoden geben Cluster an, die prototypisch "Typen" sind, andere geben "Kreise [nach Interesse]", noch andere "[politische] Plattformen", "Klassen", "Ketten" usw. Wählen Sie die Methode aus, die zu Ihnen passt. Wenn ich zum Beispiel meine Kundensegmente als Typen sehe - mehr oder weniger kugelförmige Formen mit Verdichtung (en) in der Mitte - wähle ich klar die Verbindungsmethode von Ward oder die K-Methode, aber niemals die einzelne Verbindungsmethode. Wenn ich einen zentralen Repräsentanten brauche, kann ich die medoide Methode anwenden. Wenn ich Punkte darauf überprüfen muss, ob sie Vertreter von Kern- und Peripheriegebieten sind, könnte ich den DBSCAN-Ansatz verwenden.

  2. Annahmen zu Daten / Methoden . "Ich habe diese Methode bevorzugt, weil meine Datennatur oder mein Format dafür prädisponiert sind" . Dieser wichtige und weite Punkt wird auch in meinem obigen Link erwähnt. Unterschiedliche Algorithmen / Methoden können unterschiedliche Arten von Daten erfordern, oder unterschiedliche Annäherungsmaße können auf die Daten angewendet werden, und umgekehrt können unterschiedliche Daten unterschiedliche Methoden erfordern. Es gibt Methoden für quantitative und Methoden für qualitative Daten. Durch die Mischung quantitativer und qualitativer Merkmale wird der Auswahlbereich der Methoden drastisch eingeschränkt. Wards oder K-Mittelbasieren - explizit oder implizit - nur auf einem (quadratischen) euklidischen Distanz-Näherungsmaß und nicht auf einem willkürlichen Maß. Binärdaten können spezielle Ähnlichkeitsmaße erfordern, die wiederum die Verwendung einiger Methoden, beispielsweise von Ward's oder K-Mitteln, für sie stark in Frage stellen. Big Data erfordert möglicherweise spezielle Algorithmen oder Implementierungen.

  3. 1about), so hohe Validität kann teilweise auf zufällige Besonderheiten des gegebenen Datensatzes zurückzuführen sein; Ein Testdatensatz ist immer von Vorteil.]

  4. Externe Gültigkeit . „Ich zog diese Methode , weil es mir Cluster gab , die von ihrem Hintergrund oder Cluster unterscheiden , die mit den wahren denen übereinstimmen , ich weiß“ . Wenn eine Cluster-Partition Cluster darstellt, die sich auf einem wichtigen Hintergrund deutlich unterscheiden (dh nicht an der Cluster-Analyse beteiligt sind), ist dies ein Aktivposten für die Methode, die die Partition erstellt hat. Verwenden Sie eine Analyse, um den Unterschied zu überprüfen. Es gibt auch eine Reihe nützlicher externer Clustering-Kriterien(Rand, F-Measure usw. usw.). Eine andere Variante des externen Validierungsfalls besteht darin, dass Sie die wahren Cluster in Ihren Daten irgendwie kennen ("Grundwahrheit" kennen), z. B. als Sie die Cluster selbst generiert haben. Wie genau Ihre Clustering-Methode in der Lage ist, die realen Cluster aufzudecken, ist dann das Maß für die externe Gültigkeit.

  5. Gegenseitige Gültigkeit . "Ich habe diese Methode bevorzugt, weil sie mir sehr ähnliche Cluster für äquivalente Stichproben der Daten liefert oder gut auf solche Stichproben extrapoliert . " Es gibt verschiedene Ansätze und ihre Hybriden, von denen einige mit Clustering-Methoden und andere mit anderen Methoden praktikabler sind. Zwei Hauptansätze sind Stabilitätsprüfung und Generalisierbarkeitprüfen. Wenn die Stabilität einer Clustering-Methode überprüft wird, werden die Daten in sich teilweise überschneidende oder vollständig nicht zusammenhängende Mengen aufgeteilt oder neu abgetastet, und es wird jeweils das Clustering durchgeführt. Anschließend werden die Lösungen mit einer bestimmten Eigenschaft des entstehenden Clusters verglichen (z. B. der zentralen Tendenzposition eines Clusters), um festzustellen, ob sie über die Mengen hinweg stabil sind. Um die Generalisierbarkeit zu überprüfen, müssen Sie ein Clustering für einen Zugsatz durchführen und anschließend dessen auftauchende Cluster-Charakteristik oder -Regel verwenden, um Objekte eines Testsatzes zuzuweisen. Außerdem müssen Sie ein Clustering für den Testsatz durchführen. Die Zuordnungsergebnisse und die Clustermitgliedschaften der Clusterergebnisse der Testgruppenobjekte werden dann verglichen.

  6. Interpretation . „Ich zog diese Methode , weil es mir Cluster gab, die erklärt, sind die meisten überzeugend , dass es in der Welt bedeutet“ . Es ist nicht statistisch - es ist Ihre psychologische Bestätigung. Wie aussagekräftig sind die Ergebnisse für Sie, die Domain und möglicherweise das Publikum / den Kunden? Wählen Sie eine Methode, die die interpretierbarsten und würzigsten Ergebnisse liefert.

  7. Geselligkeit . Einige Untersuchungen regelmäßig und alle Untersuchungen gelegentlich sagten: "Ich habe diese Methode bevorzugt, weil sie mit meinen Daten ähnliche Ergebnisse mit einer Reihe anderer Methoden unter all den von mir untersuchten ergab . " Dies ist eine heuristische, aber fragwürdige Strategie, die davon ausgeht, dass ganz universelle Daten oder ganz universelle Methoden existieren.

Die Punkte 1 und 2 sind theoretisch und gehen dem Erhalt des Ergebnisses voraus. Das ausschließliche Verlassen auf diese Punkte ist die hochmütige, selbstbewusste Erkundungsstrategie. Die Punkte 3, 4 und 5 sind empirisch und folgen dem Ergebnis. Das ausschließliche Verlassen auf diese Punkte ist die zappelige, alles versuchende Erkundungsstrategie. Punkt 6 ist kreativ, was bedeutet, dass er jedes Ergebnis ablehnt, um zu versuchen, es zu korrigieren. Punkt 7 ist loyale Mauvaise foi.

Die Punkte 3 bis 7 können auch bei der Auswahl der "besten" Anzahl von Clustern als Richter herangezogen werden .


1

ttnphns
quelle
1
Ich mag die internen Validitätsmaße, wie die Summe der Intra-Cluster-Varianzen in K-Means und Ward Hierarchical Clustering, sowie die Dunn-Indizes, sehr. Sie sind datenunabhängig und manchmal sogar unabhängig vom Clustering-Algorithmus, obwohl einige davon nur mit bestimmten Algorithmen sinnvoll sind.
Douglas De Rizzo Meneghetti
2
@DouglasDeRizzoMeneghetti Ich bin anderer Meinung. Sie sind weder datenunabhängig (sie machen sehr starke Annahmen zu Ihren Daten, wie Linearität und Äquivalenz von Attributen) noch unabhängig vom Clustering-Algorithmus. Tatsächlich ist jede interne Kennzahl ein eigener Clustering-Algorithmus (Sie können diese Funktion optimieren - in der Regel zu teuer).
Anony-Mousse
1
Ich verstehe, dass einige interne Validitätsmessungen, wie die Summe der Intra-Cluster-Varianzen, bessere Ergebnisse erzielen, wenn die Cluster-Mitgliedschaften durch eine Cluster-Methode erworben wurden, die die Summe der Intra-Cluster-Varianzen tendenziell minimiert, und dass eine Validitätsmessung wie die Dunn Indizes setzen voraus, dass gute Cluster kompakt und weit voneinander entfernt sind (obwohl die Interpretationen von "kompakt" und "weit voneinander entfernt" interpretiert werden können), dass Sie diese Kennzahlen jedoch nur mit den Merkmalswerten und den Clustermitgliedschaften des berechnen können Elemente machen sie sehr vielseitig.
Douglas De Rizzo Meneghetti
9

Es gibt meistens Rote-Fahne- Kriterien. Eigenschaften von Daten, aus denen hervorgeht, dass ein bestimmter Ansatz mit Sicherheit fehlschlägt.

  1. Wenn Sie keine Ahnung haben, was Ihre Daten bedeuten , hören Sie auf, sie zu analysieren. Sie raten nur Tiere in Wolken.

  2. wenn die Attribute unterschiedlich skaliert und nichtlinear oder schief sind. Dies kann Ihre Analyse ruinieren, es sei denn, Sie haben eine sehr gute Vorstellung von einer geeigneten Normalisierung. Halten Sie inne und lernen Sie, Ihre Funktionen zu verstehen. Für Clustering ist es zu früh.

  3. Wenn jedes Attribut äquivalent (gleiche Skalierung) und linear ist und Sie Ihren Datensatz quantisieren möchten (und der Fehler der kleinsten Fehlerquadrate eine Bedeutung für Ihre Daten hat), ist k-means einen Versuch wert. Wenn Ihre Attribute von unterschiedlicher Art und Größe sind, ist das Ergebnis nicht genau definiert. Gegenbeispiel: Alter und Einkommen. Das Einkommen ist sehr verzerrt und x years = y dollarist Unsinn.

  4. Wenn Sie eine genaue Vorstellung davon haben, wie Ähnlichkeit oder Distanz quantifiziert werden können (auf sinnvolle Weise; die Fähigkeit, eine Zahl zu berechnen, reicht nicht aus), sind hierarchisches Clustering und DBSCAN eine gute Wahl. Wenn Sie keine Ahnung haben, wie Sie die Ähnlichkeit quantifizieren können, lösen Sie zuerst dieses Problem.

Sie sehen, dass das häufigste Problem darin besteht, dass Benutzer versuchen, ihre Rohdaten in Cluster zu speichern, wenn sie sie zuerst verstehen und normalisieren und Ähnlichkeiten herausfinden müssen.

Beispiele:

  1. Pixel eines Bildes im RGB-Raum. Kleinste Quadrate machen Sinn und alle Attribute sind vergleichbar - k-means ist eine gute Wahl.

  2. Geografische Daten: Die kleinsten Quadrate sind nicht sehr geeignet. es wird Ausreißer geben. aber entfernung ist sehr bedeutsam. Verwenden Sie DBSCAN bei starkem Rauschen oder HAC (Hierarchical Agglomerative Clustering) bei sehr sauberen Daten.

  3. Arten, die in verschiedenen Lebensräumen beobachtet werden. Kleinste Quadrate sind zweifelhaft, aber zB Jaccard Ähnlichkeit ist sinnvoll. Sie haben wahrscheinlich nur wenige Beobachtungen und keine "falschen" Lebensräume - verwenden Sie HAC.

Anony-Mousse
quelle
+1. Ich bitte Sie stattdessen nur, einen anderen Ausdruck zu finden stop criteria. Wie Sie wissen, ist "Stoppregeln" oder "Stoppkriterien" ein Synonym für "interne Clusterkriterien" in der Domäne der hierarchischen Clusterbildung. Also, es ist ein beschäftigter Begriff. Aber Sie meinen diese Wörter in der Antwort in einem anderen Sinne, und dies kann einen Leser verwirren.
ttnphns
1
Wie wäre es mit "Rote-Fahne-Kriterien"? Stoppschwelle für HAC, ich verstehe Ihren Standpunkt.
Anony-Mousse
Für mich großartig, gute Wahl.
ttnphns
In Pkt. 2,3 sagst du (non)linear attributes. Was meinst du? Inwiefern ein "lineares" Attribut? Oder sprechen Sie von linearen Beziehungen , dh ellipsoiden (und nicht gekrümmten) Formen von Clustern?
TTNPHNS
Daten mit zB einer Exponentialverteilung.
Anony-Mousse
3

Ich glaube nicht, dass es einen guten formalen Weg gibt, dies zu tun. Ich denke, dass die guten Lösungen diejenigen sind, die inhaltlich Sinn machen.

Natürlich können Sie versuchen, die Daten zu teilen und mehrere Male zu gruppieren, aber dann bleibt die Frage, welches nützlich ist.

Peter Flom - Wiedereinsetzung von Monica
quelle
2
Ich denke, der Begriff Sinn kann nicht genug betont werden. Das ist auch der Kernpunkt meiner Antwort - Sie müssen zuerst einen Sinn für Ihre Daten haben.
Anony-Mousse
@ Anony-Mousse, es ist ein Overkill von deiner Seite. Ich wette, Leute, die nicht wissen, wie oder vergessen, "Sinn" ihrer Daten zu machen, besuchen diese Site kaum und sie stellen nicht so gute Fragen wie die hier gestellte.
TTNPHNS
@ttnphns Ich weiß nicht, wie oft solche Leute diese Site besuchen, und sie stellen solche Fragen sicher nicht. Viele Menschen erwarten jedoch, dass die Clusteranalyse wie eine Excel-Funktion funktioniert. Wählen Sie die Daten aus, klicken Sie auf "Cluster" und kommen Sie zu den magischen Kundensegmenten. Was nie viel besser zu funktionieren scheint als zufällig. Und dieser Benutzer hat zB
Anony-Mousse