Unüberwachtes Lernen
Struktur in Daten finden, ohne dass jemand vorher gesagt hat, welche. Wozu das taugt, wo es überschätzt wird und wie man ein Ergebnis überhaupt bewertet.
Die Idee
Sie schütten eine Kiste Schrauben auf den Tisch und sortieren sie, ohne dass Ihnen jemand die Kategorien genannt hat. Nach Länge? Nach Kopfform? Nach Gewinde? Jede Sortierung ist richtig, und welche nützlich ist, hängt davon ab, was Sie danach vorhaben.
Genau so arbeitet unüberwachtes Lernen: es findet eine Ordnung, aber die Bedeutung müssen Sie hineinlegen.
Wozu es gut ist
- Kundengruppen entdecken, bevor jemand Segmente definiert hat.
- Ungewöhnliche Vorgänge markieren, etwa auffällige Buchungen.
- Sehr viele Merkmale auf wenige verdichten, damit ein Diagramm lesbar wird.
- Ähnliche Dokumente zusammenlegen, bevor jemand sie sichtet.
Die Verfahren nach Aufgabe
| Aufgabe | Verfahren | Wann es passt |
|---|---|---|
| Gruppen finden | k-Means, HDBSCAN | Kugelige Gruppen / beliebige Formen mit Rauschen |
| Dichte schätzen | Gaußsche Mischmodelle | Weiche Zugehörigkeit, Wahrscheinlichkeiten nötig |
| Ausreißer finden | Isolation Forest, One-Class SVM | Wenige, unbekannte Anomalien |
| Dimension senken | PCA, UMAP | Vorverarbeitung / Darstellung |
| Themen finden | NMF, BERTopic | Textbestände sichten |
import numpy as np
from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_score
from sklearn.preprocessing import StandardScaler
rng = np.random.default_rng(0)
X = np.vstack([rng.normal(m, 0.6, (120, 2)) for m in ([0,0], [4,4], [0,5])])
X = StandardScaler().fit_transform(X) # ohne Skalierung dominiert
# das Merkmal mit der groessten Einheit
for k in range(2, 7):
labels = KMeans(k, n_init=10, random_state=0).fit_predict(X)
print(k, round(silhouette_score(X, labels), 3))- Immer skalieren, sonst entscheidet die Maßeinheit über das Ergebnis.
- Mehrere
kprüfen und das Ergebnis von einer Fachperson benennen lassen. - Die Stabilität testen: mit anderem Startwert erneut rechnen und vergleichen.
- Gruppengrößen prüfen. Ein Cluster mit drei Fällen ist meist ein Artefakt.
Silhouette
Werte über 0,5 gelten als deutliche Struktur, unter 0,25 als kaum vorhanden. Der Koeffizient bevorzugt allerdings kugelförmige Cluster und bewertet HDBSCAN- Ergebnisse mit Rauschpunkten systematisch zu schlecht.
Der rechtliche Punkt
Clustering über personenbezogene Daten erzeugt eine neue Kategorie, die vorher nicht existierte. Diese Kategorie kann ein besonderes Datum nach Art. 9 DSGVO faktisch abbilden, ohne es zu benennen, Wohngegend plus Kaufverhalten plus Uhrzeiten ergibt in der Praxis oft Herkunft oder Gesundheit. Für die Zweckbindung heißt das: der Zweck der ursprünglichen Erhebung deckt die Gruppenbildung selten mit ab. Siehe Zweckbindung und Verzerrung in Daten.
Anomalie ist nicht Fehler
Ein Isolation Forest markiert das Seltene, nicht das Falsche. In der Rechnungsprüfung ist die größte Rechnung des Jahres eine Anomalie und trotzdem korrekt. Deshalb steht am Ende jeder Anomalieerkennung eine menschliche Prüfung, und die Kennzahl ist nicht die Trefferquote, sondern der Anteil der geprüften Meldungen, der eine Handlung ausgelöst hat.