Überwachtes Lernen
Klassifikation und Regression: wie ein Modell aus Beispielen mit bekannter Antwort lernt und woran man erkennt, dass die Etiketten das eigentliche Problem sind.
Die Idee
Sie legen einem Lehrling zweitausend bearbeitete Fälle vor, jeweils mit dem Ergebnis daneben. Nach einer Weile erkennt er das Muster und kann neue Fälle selbst einschätzen. Genau das ist überwachtes Lernen: Beispiele mit Lösung, aus denen eine Regel entsteht.
Wozu es gut ist
Es ist die mit Abstand häufigste Art von KI im Betrieb: Dokumente einsortieren, Tickets zuweisen, Preise schätzen, Ausfälle vorhersagen, Anrede erkennen.
Die Aufgabentypen
| Aufgabe | Ausgabe | Übliche Verlustfunktion | Übliche Metrik |
|---|---|---|---|
| Binäre Klassifikation | ja / nein | Binäre Kreuzentropie | Precision, Recall, ROC-AUC |
| Mehrklassen | eine von k | Kreuzentropie | Makro-F1, Konfusionsmatrix |
| Mehrfachetikett | mehrere von k | Binäre Kreuzentropie je Etikett | Mikro-F1 |
| Regression | Zahl | MSE oder MAE | RMSE, MAE, R² |
| Rangordnung | Reihenfolge | Paarweiser Verlust | NDCG, MRR |
Der Schwellwert ist eine Geschäftsentscheidung
Ein Klassifikator gibt eine Wahrscheinlichkeit aus. Wo daraus ein Ja wird, legt nicht das Modell fest, sondern die Frage, was ein Fehlalarm gegenüber einem übersehenen Fall kostet.
import numpy as np
from sklearn.metrics import precision_recall_curve
y_true = np.array([0,0,1,0,1,1,0,1,0,0])
y_score = np.array([.1,.3,.8,.4,.6,.9,.2,.55,.35,.05])
p, r, thr = precision_recall_curve(y_true, y_score)
for pi, ri, ti in zip(p[:-1], r[:-1], thr):
print(f"Schwelle {ti:.2f} Precision {pi:.2f} Recall {ri:.2f}")
# Die Zeile mit dem fuer den Betrieb akzeptablen Recall waehlen,
# nicht die mit dem hoechsten F1.- Kosten je Fehlerart schriftlich festhalten, bevor der Schwellwert gesetzt wird.
- Den Schwellwert auf der Validierung wählen, nie auf dem Testsatz.
- Bei Klassenverschiebung im Betrieb den Schwellwert neu bestimmen, nicht das Modell neu trainieren.
Die Zielfunktion
Die Obergrenze durch Etikettenrauschen
Bei einer Etikettenfehlerquote ε und einem Modell, das die wahre Funktion
perfekt lernt, ist die gemessene Genauigkeit gegen den verrauschten Testsatz
höchstens 1 − ε. Bei ε = 0,05 ist bei 95 Prozent Schluss, egal wie gut das
Modell wird. Wer über diesem Wert misst, misst Überanpassung an das Rauschen.
Daraus folgt eine Reihenfolge, die selten eingehalten wird: erst die Etiketten prüfen, dann das Modell wechseln. Ein Doppelblind-Abgleich an 200 Fällen mit einem zweiten Annotator kostet einen Tag und beantwortet die Frage, ob sich weitere Modellarbeit überhaupt lohnt. Siehe Annotation und Labeling.
Kalibrierung nicht vergessen
Baumverfahren und Boosting liefern Scores, keine Wahrscheinlichkeiten. Wenn die Ausgabe in eine Kostenrechnung eingeht, muss sie kalibriert werden, Platt Scaling oder isotone Regression auf einem separaten Teil der Validierung. Ohne das ist jede Erwartungswertrechnung darauf ohne Grundlage.
Passende Kurse und Quellen
Machine Learning Specialization
Der Kurs von Andrew Ng in überarbeiteter Fassung. Regression, Klassifikation, neuronale Netze und die Fehler, die in der Praxis tatsächlich passieren. Rechnen inbegriffen.
Kostenlos anzusehen, das Zertifikat kostet. Wer nur verstehen will, braucht es nicht.