Clustering ist eine unbeaufsichtigte Technik des maschinellen Lernens, die bei der Datenanalyse verwendet wird, um ähnliche Objekte zu erkennen und zu gruppieren. Die hierarchische Clusteranalyse (HCA) oder hierarchisches Clustering gruppiert Objekte in einer Clusterhierarchie, ohne eine lineare Reihenfolge zwischen ihnen zu erzwingen. Viele Disziplinen wie Biologie, Bildanalyse und Sozialwissenschaften verwenden hierarchische Clustering-Methoden, um Muster in Datensätzen zu ermitteln und zu erkennen. Zu den Anwendungsfällen gehören die Kategorisierung von Bevölkerungen in der klinischen Forschung, die Kundensegmentierung und die Erkennung von Knotengemeinschaften in Netzwerkmodellen.
Es gibt zwei Arten von hierarchischem Clustering:
- Agglomerativer oder Bottom-Up-Ansatz1, bei dem Cluster immer wieder zu größeren zusammengeführt werden, bis ein einziger Cluster entsteht.
- Spaltender oder Top-Down-Ansatz, der2 mit allen Daten in einem einzelnen Cluster beginnt und Cluster weiter aufteilt, bis alle Cluster Singletons sind.
Hierarchische Clusteranalysen haben hohe Rechenkosten. Die Verwendung eines Heaps kann zwar die Rechenzeit reduzieren, aber die Speicheranforderungen werden erhöht. Sowohl die spaltende als auch die agglomerative Art des Clusterings sind „greedy“, was bedeutet, dass der Algorithmus entscheidet, welche Cluster zusammenzuführen oder aufzuteilen sind, indem er in jeder Phase des Prozesses die lokal optimale Wahl trifft. Es ist auch möglich, Stoppkriterien anzuwenden, bei denen der Algorithmus die Agglomeration oder Aufteilung von Clustern stoppt, wenn eine vorgegebene Anzahl von Clustern erreicht wird.
Ein baumartiges Diagramm, auch Dendrogramm3 genannt, wird häufig verwendet, um die Hierarchie von Clustern zu visualisieren. Es zeigt die Reihenfolge an, in der Cluster zusammengeführt oder geteilt wurden, sowie die Ähnlichkeit oder Entfernung zwischen Datenpunkten. Dendrogramme können auch als verschachtelte Listenreihe4 mit Attributen verstanden werden.