Clustering von Daten
Durch Clustering werden Datensätze einer Tabelle auf Basis ähnlicher Werte in einem oder mehreren Schlüsselfeldern gruppiert. Ähnliche Werte sind Werte, die im Kontext des gesamten Datasets dicht aneinander liegen oder ähnlich sind. Diese ähnlichen Werte bilden Cluster, die nach ihrer Entdeckung Muster innerhalb der Daten zeigen.
Unterschied von Clustering gegenüber anderen Analytics-Gruppierungsbefehlen:
Das Clustering unterscheidet sich von anderen Analytics-Gruppierungsbefehlen wie folgt:
- Für das Clustering ist keine Gruppierung auf Basis genauer Werte oder vordefinierter Schichten mit festen numerischen Begrenzungen nicht notwendig. Stattdessen werden Daten durch Clustering anhand ähnlicher numerischer Werte gruppiert, also Werte, die sich dicht aneinander befinden.
- Clustering erfordert keine vorher bestehenden Datenkategorien.
- Clustering auf Basis mehrerer Felder gibt Ergebnisse aus, die nicht verschachtelt (nicht hierarchisch) sind.
Funktionsweise des Clustering-Algorithmus
In Analytics wird Clustering durch den K-Means-Clustering-Algorithmus realisiert, der ein beliebter Algorithmus für maschinelles Lernen ist. Detaillierte Beschreibungen von K-Means-Clustering finden Sie im Internet.
Es folgt eine Zusammenfassung des Algorithmus.
Der K-Means-Clustering-Algorithmus verwendet zur Optimierung von Clustern einen iterativen Prozess:
1 | Anzahl der Cluster eingeben |
|
---|---|---|
2 | Cluster-Schwerpunkte initialisieren |
|
3 | Jedem Datenpunkt den nächstgelegenen Schwerpunkt zuweisen |
|
4 | Schwerpunkte erneut berechnen |
|
5 | Iteration |
|
Anzahl der Cluster wählen (K-Wert)
Um die optimale Anzahl von Clustern für ein Clustering von Daten herauszufinden, sind unter Umständen einige Tests und Experimente notwendig. Eine genaue Antwort gibt es für kein Dataset.
Richtlinien, um die optimale Anzahl von Clustern festzulegen:
- Mit den Daten vertraut werden Machen Sie sich vorab mit dem Dataset vertraut, um allgemein eine Vorstellung über das Datenprofil und offensichtliche Wertkonzentrationen zu erhalten.
- Anfangs hohen Wert wählen Wählen Sie anfangs eine relativ hohe Anzahl von Clustern, zum Beispiel 8 bis 10.
- Unterschiedliche Anzahl von Clustern wählen Führen Sie das Clustering mehrmals durch, und geben Sie jedes Mal einen anderen K-Wert an. Eine Überprüfung der Ausgabeergebnisse lässt Sie einschätzen, ob Sie mehr oder weniger Cluster benötigen.
- Ellbogen-Methode Verwenden Sie die Ellbogen-Methode, die interne Abstände von Werten in den erstellten Clustern für unterschiedliche K-Werte vergleicht.
Die Ergebnisse der Ellbogen-Methode können Sie darstellen lassen, um „den Ellbogen“ oder Wendepunkt zu erkennen, ab dem die Anzahl der Cluster die interne Distanz der Werte in den Clustern nicht erheblich verringert. Für die Ellbogen-Methode kann in Analytics ein Skript erstellt werden.
Auswahl der Felder für das Clustering
Clustering ermöglicht Ihnen, organische Datengruppierungen zu entdecken, die Ihnen möglicherweise zuvor nicht bekannt waren. Sie können Cluster auf Basis mehrerer numerischer Werte erstellen. In diesem Sinne ist Clustering eine Untersuchungsmethode und ein Beispiel für ein nicht überwachtes maschinelles Lernen.
Um die ausgegebenen Cluster zu verstehen, müssen Sie jedoch die Beziehung der Felder kennen, die Sie für das Clustering auswählen.
Clustering eines einzelnen Felds
Das Clustering eines einzelnen Felds ist recht einfach. Ihnen liegt eine einzelne Datenmenge vor, und durch das Clustering werden die Werte auf Basis ihrer Nähe gruppiert. Sie können beispielsweise Cluster für ein Betragsfeld erstellen, um herauszufinden, auf welchen Wertebereich sich die Beträge konzentrieren.
Der Vorteil von Clustering gegenüber einem traditionellen Ansatz wie der Schichtung besteht darin, dass Sie zuvor keine Annahmen treffen müssen, wo sich die Konzentration befindet. Sie müssen auch keine willkürlichen numerischen Grenzen erstellen. Durch das Clustering werden die Begrenzungen für eine beliebige Anzahl von Clustern automatisch ermittelt.
Cluster mit mehreren Feldern
Wenn Sie Cluster für zwei oder mehrere Felder erstellen, müssen Sie sich fragen, welche Beziehung die Felder aufweisen könnten. Sie könnten Clustering nutzen, um eine Hypothese zu testen. Beispielsweise könnte ein Unternehmen über seine Mitarbeiterfluktuation besorgt sein. Möglicherweise denkt die Unternehmensleitung, dass sich die Fluktuation auf jüngere Mitarbeiter mit geringerem Gehalt konzentriert.
Sie könnten Clustering nun verwenden, um herauszufinden, ob eine starke Beziehung besteht zwischen:
- Dauer der Mitarbeiterbindung und Alter des Mitarbeiters (zweidimensionales Clustering)
- Dauer der Mitarbeiterbindung, Alter des Mitarbeiters und Gehalt (dreidimensionales Clustering)
Für diese Analyse müssen Sie alle Felder meiden, die keine klare Beziehung zur Hypothese aufweisen, wie beispielsweise die Anzahl der Krankheitstage.
Kann ich Cluster für Zeichen- oder Datumzeit-Felder erstellen?
Im Allgemeinen können Sie für Zeichen- oder Datumzeit-Felder keine Cluster erstellen. Der Clustering-Algorithmus nimmt nur Zahlen entgegen und führt Berechnungen mit Zahlen durch (euklidischer Abstand, Mittelwert).
Kategorische Zeichendaten
Möglicherweise liegen Ihnen kategorische Zeichendaten als Zahlen vor, wie beispielsweise Ortskennungen. Sie könnten auch ein Kalkulationsfeld verwenden, um Zeichenkategorien bestimmten numerischen Codes zuzuordnen, die Sie erstellen. Diese Daten könnten Sie auf einen numerischen Datentyp konvertieren und ihn für Clustering nutzen. Die sich ergebenden Cluster wären aber ungültig, da sie mathematische Berechnungen für Zahlen ausführen würden, die nicht numerische Sachverhalte repräsentieren.
Falls beispielsweise ein Schwerpunkt auf Basis des Durchschnitts einer Liste mit Standortkennungen berechnet wird, ist dies eine bedeutungslose Zahl. Die Berechnung basiert auf der ungültigen Annahme, dass der mathematische Abstand zwischen Standortkennungen in der Realität einem tatsächlich messbaren Abstand entspricht.
In Bezug auf einen physischen Abstand macht die Aussage keinen Sinn, dass der Abstand zwischen Standort 1 und Standort 9 aufgrund der Kennung doppelt so groß wie zwischen Standort 1 und Standort 5 ist. Die Standorte 1 und 9 könnten in Wahrheit direkt nebeneinanderliegen, während Standort 5 meilenweit entfernt ist.
Für eine Clusteranalyse des Standorts und des physischen Abstands wären geografische Koordinaten die korrekten Daten.
Kategorische Daten, die eine Skala darstellen
Sie könnten Cluster für kategorische Daten erstellen, die eine Skala wiedergeben. Ein Beispiel wäre eine Ratingskala von „schwach“ bis „hervorragend“ mit entsprechenden numerischen Codes von 1 bis 5. In diesem Fall hätte der Durchschnitt dieser numerischen Codes eine Bedeutung.
Datumzeit-Daten
Sie können Analytics-Funktionen verwenden, um Datumzeit-Daten auf numerische Daten zu konvertieren. Die sich ergebenden numerischen Daten sind jedoch nicht kontinuierlich. Für die Clusteranalyse ist dies ein Problem, da sie von einer kontinuierlichen Zahlenabfolge ausgeht.
Die folgenden drei Zahlen sind als Datumswerte beispielsweise jeweils einen Tag voneinander entfernt. Bei den Zahlen selbst besteht jedoch eine beträchtliche Lücke bzw. ein großer Abstand zwischen der ersten und der zweiten Zahl.
- 20181130
- 20181201
- 20181202
Sie könnten serielle Datumswerte in der Clusteranalyse verwenden. Serielle Datumswerte sind kontinuierliche ganze Zahlen. Sie repräsentieren die Anzahl der Tage seit dem 1. Januar 1900.
Bewertung der Ausgabe-Cluster
Der Clustering-Algorithmus gibt stets eine Tabelle mit der angegebenen Anzahl von Clustern aus. Jeder Datensatz in der Ausgabetabelle wird sich in einem Cluster befinden.
Sie müssen nun beurteilen, ob die Cluster eine analytische Bedeutung aufweisen. Dass der Algorithmus Datensätze in einem Cluster gruppiert, bedeutet nicht unbedingt, dass die Gruppierung wesentlich ist.
Dazu können Sie zwei Eigenschaften heranziehen, die Clusterkohärenz und die Clustergröße.
Tipp
Eine Darstellung der Cluster-Ausgabetabelle als Punktdiagramm in einem Berichterstellungstool mit einer unterschiedlichen Farbe pro Cluster ist die einfachste Möglichkeit, um die Ausgabe-Cluster rasch zu beurteilen.
Schritte
Einstellungen für den Clustering-Algorithmus festlegen
- Öffnen Sie die Tabelle mit den Daten, für die Sie Cluster erstellen möchten.
- Wählen Sie aus dem Analytics-Hauptmenü Maschinelles Lernen > Cluster.
- Unter Anzahl der Cluster (K-Wert) geben Sie die Anzahl der Cluster an, die für die Gruppierung der Daten verwendet werden sollen.
- In Maximale Anzahl Iterationen geben Sie eine Obergrenze für die Anzahl der Iterationen an, die der Clustering-Algorithmus durchführen soll.
- In Anzahl Initialisierungen legen Sie fest, wie oft eine erste Menge zufälliger Schwerpunkte erstellt werden soll.
- Optional. Wählen Sie Grundwert und geben Sie eine Zahl ein.
Methode zur Datenvorverarbeitung festlegen
In der Dropdown-Liste Vorverarbeitung wählen Sie die Methode zur Datenvorverarbeitung vor dem Clustering aus.
Standardisieren | Schlüsselfeldwerte rund um null (0) zentrieren und Werte zur Berechnung der Cluster auf Einheitsvarianz skalieren |
---|---|
Skala an Varianz der Einheit anpassen | Schlüsselfeldwerte zur Berechnung der Cluster auf Einheitsvarianz skalieren, aber Werte nicht rund um null (0) zentrieren |
Keine | Rohe Schlüsselfeldwerte zur Berechnung der Cluster ohne Skalierung verwenden |
Felder auswählen
- Wählen Sie aus der Liste Cluster für ein oder mehrere Schlüsselfelder für das Clustering der Datensätze in der Tabelle aus.
Schlüsselfelder müssen numerisch sein.
- Optional. Aus der Liste Andere Datenfelder wählen Sie ein oder mehrere zusätzliche Felder aus, die in die Ausgabetabelle aufgenommen werden sollen.
Tipp
Sie können mehrere, nicht angrenzende Felder auswählen, indem Sie die Steuerungstaste gedrückt halten und auf die betreffenden Felder klicken. Halten Sie die Umschalttaste gedrückt, und klicken Sie auf angrenzende Felder, um diese auszuwählen.
Befehlseingaben abschließen
-
Falls Einträge in der aktuellen Ansicht vorhanden sind, die Sie von der Verarbeitung ausschließen wollen, dann tragen Sie eine Bedingung in das Textfeld Wenn ein oder klicken Sie auf Wenn, um mittels Ausdruck-Generator eine IF-Anweisung zu erstellen.
Hinweis
Die Wenn-Bedingung wird nur für Datensätze ausgewertet, die nach Anwendung von Bereichsoptionen (Erste, Nächste, Solange) in einer Tabelle übrig sind.
Die IF-Anweisung berücksichtigt alle Datensätze in der Ansicht und filtert diejenigen heraus, die der angegebenen Bedingung nicht entsprechen.
- Geben Sie im Textfeld Nach den Namen der Ausgabetabelle ein.
- Optional. Auf der Registerkarte Weiter:
- Um festzulegen, dass lediglich eine Teilmenge der Datensätze verarbeitet wird, wählen Sie eine der Optionen unter Bereich aus.
- Wählen Sie die Option Ausgabetabelle verwenden, wenn die Ausgabetabelle automatisch geöffnet werden soll.
- Klicken Sie auf OK.