Unüberwachtes Lernen¶
Unüberwachtes Lernen arbeitet mit Eingaben \(\mathbf{x}_1, \dots, \mathbf{x}_n\), aber ohne Zielvariable. Ziel ist es, Strukturen zu entdecken: Gruppen ähnlicher Beobachtungen (Clustering) oder kompakte Darstellungen der Daten (Dimensionsreduktion). Typische Anwendungen sind Kundensegmentierung, Anomalieerkennung und Datenvisualisierung.
Keine Grundwahrheit
Ohne Labels gibt es keine direkte Möglichkeit zu prüfen, ob ein Ergebnis richtig ist. Ob ein Clustering nützlich ist, hängt oft davon ab, ob es sich fachlich interpretieren lässt. Clustering-Algorithmen erzeugen auch dann Gruppen, wenn die Daten keine echte Gruppenstruktur haben.
k-Means¶
k-Means teilt die Daten in \(k\) Cluster \(C_1, \dots, C_k\) mit Zentren \(\boldsymbol\mu_1, \dots, \boldsymbol\mu_k\) auf, indem die Quadratsumme innerhalb der Cluster minimiert wird:
Der Standardalgorithmus, oft Lloyd-Algorithmus genannt, wechselt zwischen zwei Schritten, bis sich die Zuordnungen nicht mehr ändern:
- Zuordnung: Jeder Punkt wird dem nächstgelegenen Zentrum zugeordnet.
- Aktualisierung: Jedes Zentrum wird zum Mittelwert der ihm zugeordneten Punkte.
Der Algorithmus konvergiert immer, aber nur gegen ein lokales Optimum; er wird daher von mehreren Startpunkten aus ausgeführt. Die Initialisierung k-Means++ (Arthur & Vassilvitskii, 2007) wählt gut verteilte Startzentren.
Die Anzahl der Cluster \(k\) muss vorab gewählt werden, etwa mit der Ellbogenmethode, dem Silhouettenkoeffizienten oder Fachwissen. k-Means funktioniert am besten bei kompakten, annähernd kugelförmigen Clustern ähnlicher Größe und reagiert empfindlich auf Ausreißer und die Skalierung der Merkmale. Alternativen sind Gaußsche Mischmodelle und das dichtebasierte DBSCAN.
Hierarchisches Clustering¶
Das agglomerative hierarchische Clustering beginnt mit jeder Beobachtung als eigenem Cluster und verschmilzt wiederholt die zwei nächstgelegenen Cluster, bis nur noch einer übrig ist. Das Ergebnis ist ein Baum, das Dendrogramm. Schneidet man das Dendrogramm in einer gewählten Höhe, erhält man ein Clustering; die Anzahl der Cluster muss also nicht vorab festgelegt werden.
Das Verfahren hängt davon ab, wie der Abstand zwischen zwei Clustern definiert ist, der Linkage:
| Linkage | Abstand zwischen Clustern | Typisches Ergebnis |
|---|---|---|
| Single | kleinster paarweiser Abstand | lang gestreckte, kettenförmige Cluster |
| Complete | größter paarweiser Abstand | kompakte Cluster |
| Average | mittlerer paarweiser Abstand | ein Kompromiss |
| Ward | Zunahme der Quadratsumme innerhalb der Cluster | kompakte Cluster, ähnlich wie k-Means |
Übliche Implementierungen benötigen Speicher und Rechenzeit, die mindestens quadratisch mit \(n\) wachsen, was das Verfahren auf mittlere Datenmengen beschränkt.
Hauptkomponentenanalyse¶
Die Hauptkomponentenanalyse (englisch Principal Component Analysis, PCA) findet neue, unkorrelierte Achsen, die Hauptkomponenten, geordnet danach, wie viel der Varianz der Daten sie erfassen. Für zentrierte Daten \(\mathbf{X}\) ist die Richtung der ersten Hauptkomponente
und jede weitere Richtung maximiert die verbleibende Varianz unter der Bedingung, orthogonal zu den vorherigen zu sein. Die Richtungen sind die Eigenvektoren der Kovarianzmatrix, die zugehörigen Eigenwerte die Varianzen entlang dieser Richtungen. In der Praxis wird die PCA über die Singulärwertzerlegung (SVD) von \(\mathbf{X}\) berechnet.
Die PCA wird verwendet zur
- Dimensionsreduktion, da wenige Komponenten oft den Großteil der Varianz erfassen,
- Visualisierung, durch Projektion der Daten auf die ersten beiden Komponenten,
- Vorverarbeitung, etwa zur Rauschunterdrückung oder zur Beseitigung von Multikollinearität.
Zuerst standardisieren
Die PCA hängt von den Maßeinheiten ab. Eine in Euro gemessene Variable dominiert eine in Jahren gemessene allein wegen ihrer größeren numerischen Varianz. Sofern die Variablen keine gemeinsame Skala haben, sollten sie vor der PCA auf Mittelwert 0 und Varianz 1 standardisiert werden.
Über lineare Verfahren hinaus
Die PCA erfasst nur lineare Strukturen. Für nichtlineare Visualisierungen sind Verfahren wie t-SNE und UMAP verbreitet, und im Deep Learning übernehmen Autoencoder und gelernte Embeddings eine ähnliche Rolle (siehe Neuronale Netze).