Clustering

Abgeschlossen

Bei Clustering handelt es sich um eine Form des unüberwachten maschinellen Lernens, bei dem Beobachtungen auf der Grundlage von Ähnlichkeiten in ihren Datenwerten oder Merkmalen in Clustern gruppiert werden. Diese Art von maschinellem Lernen wird als nicht überwacht betrachtet, da keine zuvor bekannten Bezeichnungswerte zum Trainieren eines Modells verwendet werden. In einem Clustermodell entspricht die Bezeichnung dem Cluster, dem die Beobachtung basierend auf den zugehörigen Features zugewiesen wird.

Beispiel: Clustering

Angenommen, ein*e Botaniker*in analysiert eine Ansammlung von Blumen und erfasst für jede Blume die Anzahl ihrer Blätter und Blütenblätter:

Diagram of some flowers.

Es gibt keine bekannten Bezeichnungen im Dataset, nur zwei Merkmale. Das Ziel ist nicht, die verschiedenen Blumentypen (Arten) zu bestimmen, sondern lediglich ähnliche Blumen anhand der Anzahl der Blätter und Blütenblätter zu gruppieren.

Blätter 1) Blütenblätter 2)
0 5
0 6
1 3
1 3
1 6
1 8
2 3
2 7
2 8

Trainieren eines Clustermodells

Für das Clustering stehen mehrere Algorithmen zur Verfügung. Einer der am häufigsten verwendeten Algorithmen ist das sogenannte k-Means-Clustering, das aus den folgenden Schritten besteht:

  1. Die Merkmalswerte (×) werden vektorisiert, um n-dimensionale Koordinaten zu definieren (dabei ist n die Anzahl der Merkmale). Das Blumenbeispiel umfasst zwei Merkmale: die Anzahl der Blätter (×1) und die Anzahl der Blütenblätter (×2). Der Featurevektor verfügt daher über zwei Koordinaten, mit denen wir die Datenpunkte konzeptionell in einen zweidimensionalen Raum (12]) zeichnen können.
  2. Sie entscheiden nun, wie viele Cluster zum Gruppieren der Blumen verwendet werden sollen, und nennen diesen Wert k. Wenn Sie z. B. drei Cluster erstellen möchten, verwenden Sie einen k-Wert von 3. Anschließend werden die k-Punkte an zufälligen Koordinaten dargestellt. Diese Punkte stellen dann die Mittelpunkte der einzelnen Cluster dar und werden daher auch als Schwerpunkte bezeichnet.
  3. Jeder Datenpunkt (in diesem Fall eine Blume) wird dem nächstliegenden Schwerpunkt zugewiesen.
  4. Jeder Schwerpunkt wird basierend auf der durchschnittlichen Entfernung zwischen den Punkten in die Mitte der ihm zugewiesenen Datenpunkte verschoben.
  5. Nach dem Verschieben des Schwerpunkts befinden sich die Datenpunkte jetzt möglicherweise näher an einem anderen Schwerpunkt und werden daher dem Cluster zugewiesen, dessen Schwerpunkt ihnen jetzt am nächsten liegt.
  6. Die Schwerpunkte werden so lange verschoben und die Cluster neu zugeordnet, bis die Cluster stabil sind oder eine vorher festgelegte Anzahl von Iterationen erreicht ist.

In der folgenden Animation wird dieser Vorgang veranschaulicht:

Diagram of an animation showing the k-means clustering process.

Bewerten eines Clusteringmodells

Da es keine bekannte Bezeichnung gibt, mit der die vorhergesagten Clusterzuweisungen verglichen werden können, basiert die Bewertung eines Clusteringmodells darauf, wie gut die resultierenden Cluster voneinander getrennt sind.

Es gibt mehrere Metriken, die Sie verwenden können, um die Clustertrennung zu bewerten, einschließlich:

  • Durchschnittliche Entfernung zum Mittelpunkt des Clusters: Diese Metrik gibt an, wie nah sich jeder Punkt im Cluster durchschnittlich am Schwerpunkt des Clusters befindet.
  • Durchschnittliche Entfernung zu anderen Mittelpunkten: Diese Metrik gibt an, wie nah sich jeder Punkt im Cluster durchschnittlich an den Schwerpunkten aller anderen Cluster befindet.
  • Maximaler Abstand zur Clustermitte: Der weiteste Abstand zwischen einem Punkt im Cluster und seinem Schwerpunkt.
  • Silhouette: Ein Wert zwischen -1 und 1, der das Verhältnis des Abstands zwischen Punkten im selben Cluster und Punkten in verschiedenen Clustern zusammenfasst (je näher an 1, desto besser die Clustertrennung).