In meinem vorherigen JMP-Blogbeitrag habe ich über zwei Algorithmen gesprochen, die für das Clustering verwendet werden: k-means und Normal Mixtures (unter Verwendung der Erwartungsmaximierung). Hier schaue ich mir ein hierarchisches Clustering-Beispiel an.
Während k-means im Allgemeinen harte Clusterzuweisungen liefert – jeder Datenpunkt gehört nur zu einem Cluster – liefert Normal Mixtures weiche oder probabilistische Clusterzuweisungen. Beim Clustering normaler Mischungen gehört jeder Datenpunkt – egal, ob es sich um eine Person oder eine Zellkultur handeltjedenCluster mit einer bestimmten Wahrscheinlichkeit. In ähnlicher Weise können wir durch hierarchisches Clustering Punkte als zugehörig betrachtenmehrereCluster. Aber beim hierarchischen Clustering sind die Cluster – vielleicht offensichtlich – hierarchischer Natur.
Wann sollte hierarchisches Clustering verwendet werden?
Hierarchisches Clustering ist am nützlichsten, wenn die Daten eine hierarchische Struktur aufweisen. Hierarchische Daten haben Gruppen, die ihrerseits aus Untergruppen bestehen, die aus Untergruppen bestehen ... und so weiter und so fort für immer. Wenn wir uns beispielsweise Blut ansehen, können wir rote Blutkörperchen, weiße Blutkörperchen, Plasma und Blutplättchen finden. 
In den weißen Blutkörperchen können sich Neutrophile, Basophile, Lymphozyten usw. befinden. 
In Lymphozyten gibt es T-Zellen, B-Zellen und natürliche Killerzellen.
Innerhalb von T-Zellen können Sie Helfer-T-Zellen, Gedächtnis-T-Zellen, Suppressor-T-Zellen oder Killer-T-Zellen haben. Ich könnte weitermachen, aber dies ist ein Statistik-Blog, kein Immunologie-Blog. 
Während die Betrachtung sehr spezifischer Zellgruppen oft nützlich ist, gibt es viele Situationen, in denen wir verallgemeinern und eine übergeordnete Gruppe betrachten müssen, beispielsweise wenn Ärzte die Anzahl der weißen Blutkörperchen aus einer Blutuntersuchung betrachten. 
Wenn Sie Kunden anhand ihrer Kaufgewohnheiten gruppieren, verfügen Sie möglicherweise manchmal über genügend Mittel, um 50 verschiedene Marketing-E-Mails zu erstellen, um auf die spezifischen Gewohnheiten der Käufer einzugehen. Aber manchmal haben Sie möglicherweise nur ein Budget für die Erstellung von fünf. Durch hierarchisches Clustering können Sie eine beliebige Anzahl von Clustern auswählen und gleichzeitig möglichst zusammenhängende Cluster bereitstellen.
TL;DR: Verwenden Sie hierarchisches Clustering, wenn Sie glauben, dass Ihre Daten eine hierarchische Struktur haben könnten. Es kann wirklich so einfach sein.
Agglomeratives hierarchisches Clustering
JMP verwendet HierarchischAgglomerativClustering (kurz HAC), das hierarchische Beziehungen in den Daten modelliert, indem ähnliche Cluster nacheinander zusammengeführt werden, bis sich alle Daten in einem Cluster befinden. Zunächst ist jeder Datenpunkt ein eigener Singleton-Cluster. Aber das ist furchtbar einsam, also verschmelzen wir dann die beiden nächstgelegenen Cluster zu einem neuen Cluster. Dann führen wir die zusammennächstezwei engste Cluster zusammen, und dann machen wir es noch einmal. Und wieder. Und wieder. Bis sich alle Daten in einem Cluster befinden. Wir bezeichnen HAC oft als Bottom-up-Clustering, weil wir ganz unten angefangen haben und jetzt hier sind, mit einem Cluster, der alle unsere Datenpunkte enthält. Man könnte sagen, dass das gesamte Team hier ist. 
Entfernungsmetriken
Die Entscheidung, welche Cluster nahe beieinander liegen, ist nicht immer einfach; Es gibt viele Verknüpfungskriterien, anhand derer wir bestimmen können, wie weit zwei Cluster voneinander entfernt sind.
EinzelDie Verknüpfung definiert den Abstand zwischen zwei Clustern (A und
alsMinimum Abstand zwischen einem beliebigen Punkt in A und einem beliebigen Punkt in B.
DurchschnittDie Verknüpfung definiert den Abstand zwischen zwei Clustern (A und
alsDurchschnittAbstand zwischen Punkten in A und Punkten in B. 
VollständigDie Verknüpfung definiert den Abstand zwischen zwei Clustern (A und
alsmaximalAbstand zwischen einem beliebigen Punkt in A und einem beliebigen Punkt in B.
DerSchwerpunktDie Methode definiert den Abstand zwischen zwei Clustern (A und
als den Abstand zwischen ihren jeweiligen Mittelvektoren (Schwerpunkten). 
StationDie Methode unterscheidet sich geringfügig von den oben genannten Methoden. Anstatt ein reines Distanzmaß zu verwenden, wird eine univariate ANOVA mithilfe von Clusterzuweisungen als Gruppen angepasst. Zwei Cluster (A und
werden kombiniert, wenn sie das Ergebnis ergebenam kleinstenAnstieg der Fehlerquadratsummen, wenn eine weitere ANOVA durchgeführt wird, bei der A und B in einer Gruppe zusammengefasst werden. Aus unserem ANOVA-Artikel wissen wir, dass ein Fehler vorliegtinnerhalbGruppenvariation. Wards Methode fragt also, welche zwei Gruppen wir kombinieren können und trotzdem einen niedrigen Wert habeninnerhalbGruppenvariation (d. h. welche zwei Gruppen am ähnlichsten sind). 
So lesen Sie ein Dendrogramm
Sobald wir die hierarchische Struktur unserer Daten festgelegt haben, können wir die verschiedenen Cluster auf jeder Ebene untersuchen. Wir wollen oft Beobachtungen über die Struktur machen. Der einfachste Weg, dies zu tun, ist die Betrachtung eines Dendrogramms.
Dendrogramme zeigen, wie Cluster kombiniert wurden. In JMP repräsentiert die Y-Achse Datenpunkte/Cluster und die X-Achse die Entfernung. Wenn beispielsweise zwei Cluster weiter unten im Dendrogramm (links) zusammenkommen, sind sie ähnlicher als zwei andere Cluster, die weiter oben im Dendrogramm (weiter rechts) zusammenkommen. 
Dendrogramme, die unten dicht sind (links), weisen normalerweise Cluster auf, die besser trennbar sind, wohingegen Dendrogramme, die unten nicht dicht sind (links), tendenziell weniger trennbare, stärker ausgebreitete Cluster aufweisen.
Clustering ist eher eine Kunst als eine Wissenschaft, daher erfordert die Interpretation Ihrer Cluster wahrscheinlich Domänenkenntnisse, um etwas Sinnvolles zu produzieren. Mit Ihrem Dendrogramm können Sie eine beliebige Anzahl von Clustern von 1 bis N erstellen (wobei N die Anzahl der Datenpunkte ist, die Sie haben). Wenn Sie das Dendrogramm auf einer beliebigen Ebene „ausschneiden“, erfahren Sie die Zugehörigkeit jedes Clusters. 
Im JMP
Werfen wir einen Blick auf einen Datensatz, der die durchschnittlichen Gramm Proteine, Fette und Kohlenhydrate von 150 Personen aufzeichnet. Es gibt viele Gründe, warum wir diese verschiedenen Diäten zusammenfassen möchten. Vielleicht möchten wir untersuchen, ob verschiedene Diäten unterschiedlich häufig zu Herzerkrankungen führen. Oder vielleicht möchten wir uns die Cholesterin- oder Eisenwerte jedes Clusters ansehen.
In JMP ist die Durchführung hierarchischer Clustering ziemlich einfach. Gehen Sie einfach zuAnalysieren > Clustering > Hierarchischer Clusterund wählen Sie die Spalten aus, die Sie gruppieren möchten. Wenn jeder Datenpunkt einen Namen oder eine Bezeichnung hat, wählen Sie diese aus und fügen Sie sie als hinzuEtikett. Hier können Sie auch Ihre Verknüpfungskriterien auswählen. KlickenOK, und JMP erstellt Ihre Cluster und ein Dendrogramm für Sie. 
Sobald Sie sich auf der hierarchischen Plattform befinden, können Sie Ihr Dendrogramm nach Clustern einfärben, was Ihnen dabei helfen kann, verschiedene Muster in den Clustern zu erkennen. 
Sie können auch harte Clusterzuweisungen für eine beliebige Anzahl von Clustern von 1 bis N abrufen (wobei N Ihre Stichprobengröße ist). Gehen Sie einfach zum Menü mit dem roten Dreieck und wählen Sie ausAnzahl der Clusterund geben Sie Ihre Wunschnummer ein. Sie können auch die kleine schwarze Raute auf dem Dendrogramm ziehen, um eine Reihe von Clustern auszuwählen. Gehen Sie dann zurück zum Menü mit dem roten Dreieck und wählen Sie ausCluster speichern. Wenn Sie ak (Anzahl der Cluster) auswählen, „schneidet“ JMP das Dendrogramm an der Stelle, an der es genau k Cluster gibt.
Sie können die Raute auch an der Seite des Diagramms an die Stelle im Dendrogramm ziehen, an der Sie schneiden möchten. 
Durch das Speichern unserer Cluster als Spalte können wir die Cluster besser visualisieren und die Clusterzuordnung als Gruppenvariable in weiteren Analysen verwenden (z. B. einer ANOVA, um zu sehen, ob die Clustermitgliedschaft einen signifikanten Einfluss auf die Häufigkeit von Herzerkrankungen hat).
Wenn wir nur zwei Cluster betrachten, können wir erkennen, dass es einen Cluster mit relativ hohem Proteingehalt, wenig Kohlenhydraten und wenig Fett und einen Cluster mit relativ niedrigem Proteingehalt, hohem Fett- und Kohlenhydratgehalt gibt. 
Wir könnten uns auch die Drei-Cluster-Lösung ansehen, die es uns ermöglicht, die proteinreiche, kohlenhydratarme und fettarme Gruppe in eine extreme und gemäßigtere Gruppe aufzuteilen. Die hierarchische Struktur hilft uns zu verstehen, wie diese Gruppen miteinander in Beziehung stehen, und ermöglicht uns gleichzeitig, sie bei Bedarf als getrennt zu behandeln. 
JMP wird ak für Sie auf der Grundlage des unter dem Dendrogramm angezeigten Distanzdiagramms empfehlen. Die x-Achse des Diagramms stellt jedes Mal dar, wenn zwei Cluster zusammengeführt werden. Die y-Achse stellt den Abstand zwischen den beiden zuletzt verbundenen Clustern dar. Wenn sich die Steigung dramatisch ändert, bedeutet das, dass die letzten beiden Cluster, die zusammenkamen, relativ weit voneinander entfernt waren. Dies deutet darauf hin, dass die verbleibenden Cluster relativ getrennt sind und dass die aktuelle Konfiguration eine gute Wahl für k ist.
Das Dendrogramm für diesen Datensatz ist unten (links) am dichtesten, was bedeutet, dass es wahrscheinlich einige trennbare Cluster gibt, was wir anhand dieser Diagramme oben bestätigen können.
Versuch es
Hierarchisches Clustering (und Clustering im Allgemeinen) ist kein Allheilmittel für alle Ihre unbeschrifteten Datenprobleme. Aber es ist extrem gut darin, die hierarchische Struktur in Daten tatsächlich zu modellierenhateine hierarchische Struktur. Es liefert uns Informationen, die über die nicht-hierarchische Clusterbildung hinausgehen, da es uns sagt, wie verschiedene Cluster zueinander in Beziehung stehen. Diese Informationen können von unschätzbarem Wert sein, wenn wir Cluster kombinieren oder aufteilen müssen. Hierarchisches Clustering gibt Ihnen eine gewisse Flexibilität bei der Gruppierung Ihrer Daten, und am Ende müssen wir alle etwas flexibler sein. Probieren Sie es selbst mit der diesem Beitrag beigefügten Datentabelle aus.