Worum geht’s
Ein Modell zu trainieren ist die halbe Arbeit; die andere Hälfte ist die Frage, ob man ihm überhaupt glauben darf. Zwei Probleme stehen dabei nebeneinander, und dieses Kapitel behandelt beide. Das erste ist die Evaluation: Wie gut ist ein Klassifikator wirklich — nicht auf den Daten, die er auswendig kennt, sondern auf neuen? Und welche Zahl beschreibt „gut”, wenn 99 % aller E-Mails kein Spam sind und ein Modell, das stur „kein Spam” sagt, schon 99 % Genauigkeit erreicht? Das zweite ist die Erklärbarkeit: Ein Modell kann hervorragende Zahlen liefern und trotzdem aus dem falschen Grund richtig liegen — und niemand merkt es, weil das Modell eine Black Box ist.
Mich überzeugt an diesem Kapitel, dass beide Fragen handfest und nachprüfbar sind. Evaluation ist im Kern Statistik: eine Schätzung mit Konfidenz, kein Bauchgefühl. Und Erklärbarkeit ist keine philosophische Spielerei, sondern in regulierten Bereichen — Medizin, Kredit, Justiz — eine harte Anforderung. Ein Krebs-Klassifikator, der 96 % Genauigkeit erreicht, aber nicht sagen kann, warum er einen Tumor für bösartig hält, ist klinisch wertlos. Genau diesen Fall rechne ich in der Praxis durch.
Kernkonzepte
Warum getrennte Daten: Train, Test, Kreuzvalidierung
Die Genauigkeit auf den Trainingsdaten ist nutzlos — sie misst Auswendiglernen, nicht Verstehen. Man teilt die Daten daher in einen Trainings- und einen Testteil, hält den Test bis zum Schluss zurück und schätzt die Güte nur dort. Ein einzelner Split ist aber selbst eine Stichprobe und kann zufällig günstig oder ungünstig liegen.
Die Konfusionsmatrix als gemeinsame Wurzel
Fast alle Gütemaße der Klassifikation entspringen einer einzigen Tabelle. Für ein Zwei-Klassen-Problem mit einer als positiv ausgezeichneten Klasse zählt die Konfusionsmatrix die vier Fälle: richtig-positiv (), falsch-positiv (), falsch-negativ () und richtig-negativ (). Aus ihr leiten sich ab:
Präzision fragt: Wie viele meiner Positiv-Meldungen stimmen? Recall (auch Sensitivität) fragt: Wie viele der echten Positiven habe ich gefunden? Die beiden ziehen gegeneinander — wer alles als positiv meldet, hat Recall 1, aber miserable Präzision. Das F1-Maß ist ihr harmonisches Mittel und bestraft, wenn eines der beiden absackt:
ROC und AUC: über alle Schwellwerte hinweg
Ein probabilistischer Klassifikator gibt nicht „ja/nein” aus, sondern eine Wahrscheinlichkeit; erst ein Schwellwert macht daraus eine Entscheidung. Verschiebt man ihn, wandern und gemeinsam. Die ROC-Kurve trägt die Richtig-Positiv-Rate gegen die Falsch-Positiv-Rate für alle Schwellwerte auf; die Diagonale entspricht reinem Raten. Die Fläche darunter, AUC, fasst die Trennkraft schwellwertunabhängig in einer Zahl zusammen: ist perfekt, ist Zufall. Anschaulich ist AUC die Wahrscheinlichkeit, dass das Modell einem zufälligen positiven Fall einen höheren Score gibt als einem zufälligen negativen.
Über- und Unteranpassung
Generalisierung scheitert auf zwei Weisen. Unteranpassung (underfitting): Das Modell ist zu starr, erfasst die Struktur nicht und ist schon auf den Trainingsdaten schlecht. Überanpassung (overfitting): Das Modell ist zu flexibel, lernt das Rauschen der Trainingsdaten mit und bricht auf neuen Daten ein — Trainingsgüte hoch, Testgüte niedrig. Die Folien illustrieren das am Beispiel : Modell (linear) ist zu grob (Unteranpassung), das Polynom sechsten Grades passt sich jeder Schwankung an und klassifiziert einen neuen Punkt eher falsch als das mittlere . Dahinter steht der Bias-Varianz-Gegensatz: Komplexität senkt den systematischen Fehler (Bias), erhöht aber die Empfindlichkeit gegenüber der konkreten Stichprobe (Varianz) — die Folien zeigen das als Vier-Felder-Bild (wenig/viel Bias × geringe/hohe Varianz). Als Abhilfe nennen sie die Regularisierung (explizit /, implizit z. B. vorzeitiger Trainingsabbruch). Kreuzvalidierung deckt Überanpassung auf, weil sie Test- und Trainingsgüte vergleichbar macht.
Das Black-Box-Problem und die Achsen der Erklärbarkeit
Ein lineares Modell mit zehn Gewichten kann man lesen; ein Random Forest aus 300 Bäumen oder ein tiefes Netz mit Millionen Parametern nicht mehr. Die Folien stellen genau diesen Gegensatz als Blackbox / Greybox / Glassbox AI dar und begründen den Bedarf an erklärbarer KI (XAI) mit Vertrauen, Nachvollziehbarkeit und digitaler Selbstbestimmung — eine Systemausgabe soll als „X is Y because of Z” formulierbar sein. Als konkrete Anwendungsfälle führen sie den Schufa-Score (Kreditwürdigkeit, 100 = best bis 600 = worst), die Dating-App (tinder, lovoo, parship) und die SkinDoctor-App (Hautkrebs-Diagnose mit „0.87 probability of cancer”) an — in allen Fällen ist der eigentliche Algorithmus nicht offengelegt. Die Folien ordnen die Verfahren entlang einer Achse:
Als „selbsterklärend” heben die Folien Entscheidungsbäume hervor: Eine Entscheidung entspricht einem Blatt, der Pfad von der Wurzel dorthin macht sie nachvollziehbar. Das zentrale modellunabhängige Werkzeug der Folien ist SHAP (Shapley Additive exPlanations): Es überträgt die Shapley-Werte aus der Theorie der Koalitionsspiele (Lloyd Shapley) auf ML und verteilt die Differenz zwischen Vorhersage und Basisrate als Summe von Einzelbeiträgen auf die Merkmale. Modell-agnostisch bildet man dazu alle Koalitionen der Merkmale und mittelt für jedes Merkmal die Differenz ; modell-spezifisch (z. B. bei XGBoost) nutzt man die Baumstruktur. Visualisiert wird das als Force-, Waterfall- und Beeswarm-Plot. Über die Folien hinaus gehört die modellagnostische Permutationswichtigkeit zum Standardrepertoire: Sie mischt eine Merkmalsspalte zufällig durch und misst, wie stark die Güte fällt — ein Merkmal ist wichtig, wenn sein Zerstören wehtut. Das rechne ich unten am Krebs- Beispiel durch.
Praxis
Um diese Begriffe nicht nur zu behaupten, habe ich sie an einem echten Datensatz
durchgerechnet: dem Wisconsin-Brustkrebs-Datensatz (load_breast_cancer, 569
Tumore, 30 Merkmale aus digitalisierten Zellkernbildern). Ein Random Forest
wird trainiert, voll evaluiert und anschließend mit XAI-Werkzeugen seziert. Den
Kern bildet die Auswertung aus der Konfusionsmatrix, bei der ich jedes Maß von
Hand aus den vier Zellen nachrechne und gegen classification_report halte:
cm = confusion_matrix(y_te, y_pred) # Zeilen=wahr, Spalten=vorhergesagt
tn, fp, fn, tp = cm.ravel()
prec = tp / (tp + fp) # Präzision
rec = tp / (tp + fn) # Recall / Sensitivität
f1 = 2 * prec * rec / (prec + rec) # harmonisches Mittel
# k-fache Kreuzvalidierung statt nur einem Split
scores = cross_val_score(clf, X, y, cv=StratifiedKFold(5, shuffle=True), scoring="accuracy")
# Modellagnostische Merkmalswichtigkeit
perm = permutation_importance(clf, X_te, y_te, n_repeats=30)
Das vollständige Skript (Datensatz, alle drei Grafiken, lokale Erklärung) liegt in
python/src/eport_figures/praxis/p_3_4_eval_xai.py. Seine tatsächliche Ausgabe:
=== Datensatz: Wisconsin Breast Cancer ===
569 Tumore, 30 Merkmale
positiv (bösartig): 212 negativ (gutartig): 357
Klassenanteil positiv: 37.3 % (leichtes Ungleichgewicht)
=== Konfusionsmatrix (Testsplit, 30 %) ===
TP=60 FP=3 FN=4 TN=104
Von Hand aus den Zellen:
Genauigkeit = (TP+TN)/n = 0.959
Präzision = TP/(TP+FP) = 0.952
Recall = TP/(TP+FN) = 0.938
F1 = 2PR/(P+R) = 0.945
Spezifität = TN/(TN+FP) = 0.972
Gegenprobe accuracy_score: 0.959
classification_report:
precision recall f1-score support
gutartig 0.963 0.972 0.967 107
bösartig 0.952 0.938 0.945 64
accuracy 0.959 171
macro avg 0.958 0.955 0.956 171
weighted avg 0.959 0.959 0.959 171
=== 5-fache stratifizierte Kreuzvalidierung (ganzer Datensatz) ===
Genauigkeit je Fold: 0.947, 0.974, 0.982, 0.956, 0.938
Genauigkeit: 0.960 ± 0.016
ROC-AUC: 0.990 ± 0.009
-> Streuung über die Folds zeigt: ein einzelner Split kann täuschen.
=== ROC / AUC (Testsplit) ===
AUC = 0.995
bester Schwellwert (Youden) t=0.59: TPR=0.938, FPR=0.000
=== XAI: globale Merkmalswichtigkeit ===
Top-8 nach Permutationswichtigkeit (Genauigkeitsabfall bei Spaltenpermutation):
worst concave points perm=0.0092 ± 0.0093 gini=0.0797
worst texture perm=0.0078 ± 0.0041 gini=0.0166
mean texture perm=0.0078 ± 0.0038 gini=0.0142
mean concave points perm=0.0004 ± 0.0077 gini=0.0842
symmetry error perm=0.0000 ± 0.0000 gini=0.0032
concave points error perm=0.0000 ± 0.0000 gini=0.0039
texture error perm=0.0000 ± 0.0000 gini=0.0040
mean fractal dimension perm=0.0000 ± 0.0000 gini=0.0032
=== XAI: lokale Erklärung einer Einzelvorhersage ===
Testfall #4: wahre Klasse = bösartig, P(bösartig) = 1.000
stärkste Treiber RICHTUNG bösartig (Wert weit über gutartigem Mittel × Wichtigkeit):
worst concave points Wert=0.19 (z=+1.80 vs. gutartig) Beitrag=+0.016
mean texture Wert=23.86 (z=+1.51 vs. gutartig) Beitrag=+0.012
worst texture Wert=29.43 (z=+1.03 vs. gutartig) Beitrag=+0.008
mean concave points Wert=0.13 (z=+2.59 vs. gutartig) Beitrag=+0.001
symmetry error Wert=0.03 (z=+0.81 vs. gutartig) Beitrag=+0.000
-> Die Vorhersage ist nachvollziehbar: dieselben Merkmale, die global zählen,
liegen bei diesem Tumor deutlich im bösartigen Bereich.
Die Konfusionsmatrix des Testsplits. Klinisch zählt vor allem die untere linke Zelle: vier falsch-negative (übersehene bösartige Tumore) sind gefährlicher als drei falsch-positive (unnötiger Alarm). Genau diese Asymmetrie macht der rohe Genauigkeitswert von 95,9 % unsichtbar.
Bemerkenswert ist der Vergleich von einzelnem Split und Kreuzvalidierung: Der Testsplit liefert eine AUC von , die ehrlichere 5-fache Kreuzvalidierung — der einzelne Split war zufällig leicht optimistisch. Genau dafür ist die Streuung da.
Die ROC-Kurve drückt sich an die linke obere Ecke — fast perfekte Trennung. Der Youden-Punkt markiert den Schwellwert mit maximalem Abstand zur Zufallsdiagonale; bei erreicht das Modell hier 93,8 % Recall ohne einen einzigen Fehlalarm.
Der lehrreichste Befund steckt in der Merkmalswichtigkeit. Permutations- und
Gini-Wichtigkeit widersprechen sich teils deutlich: mean concave points ist
nach der eingebauten Gini-Wichtigkeit das zweitwichtigste Merkmal (),
nach Permutation aber fast bedeutungslos (). Der Grund ist die starke
Korrelation der Merkmale: Mischt man mean concave points durch, kompensiert
der Wald über worst concave points — der Genauigkeitsabfall bleibt klein. Die
Gini-Wichtigkeit „verteilt” die gemeinsame Information dagegen großzügig auf alle
korrelierten Spalten. Das ist eine konkrete Warnung: Merkmalswichtigkeit ist kein
objektives Faktum, sondern hängt vom Verfahren ab.
Permutations- gegen Gini-Wichtigkeit der Top-8-Merkmale. Wo die Balken auseinanderlaufen, schlägt die Merkmalskorrelation durch: Gini überschätzt redundante Merkmale, Permutation rechnet ihren Beitrag der Gruppe gemeinsam zu.
Schließlich die lokale Erklärung: Für einen konkreten bösartigen Tumor
(P(bösartig)=1{,}00) zeige ich, welche Merkmalswerte die Entscheidung treiben —
hier ein um Standardabweichungen über dem gutartigen Mittel liegender
worst concave points-Wert. Das ist ein vereinfachtes, SHAP-ähnliches Argument:
Beitrag Abweichung vom gutartigen Mittel globale Wichtigkeit. Es macht
die Vorhersage für genau diesen Patienten begründbar — die Brücke von der globalen
zur lokalen Sicht.
Querbezüge
- 3.1–3.3 (Maschinelles Lernen): Erst die Evaluation gibt den Lernverfahren der Vorkapitel einen Maßstab. Die hier benutzte Permutationswichtigkeit und das Bias-Varianz-Dilemma sind direkt das Werkzeug, mit dem man Modelle der Klassifikation (3.2) und Regression (3.3) vergleicht und ihre Überanpassung diagnostiziert.
- 9.1 (KI & Gesellschaft): Hier schließt sich der Kreis zu Fairness, Bias und Rechenschaft. Ein Modell kann eine glänzende AUC haben und trotzdem diskriminieren, wenn die Trainingsdaten verzerrt sind; XAI ist das technische Mittel, um solche Verzerrungen sichtbar zu machen und Entscheidungen rechenschaftspflichtig zu halten — eine zunehmend rechtliche Anforderung.
- 7.2 (CNN): Die Saliency-Maps tiefer Netze sind die bildliche Variante der lokalen Erklärung von hier: Sie färben ein, welche Pixel eine Klassifikation getragen haben — derselbe Gedanke wie die Merkmalsbeiträge, nur im Bildraum.
- Stochastik / Statistik: Eine Testgüte ist eine Punktschätzung mit Streuung; Kreuzvalidierung liefert dazu die empirische Standardabweichung — der direkte Bezug zu Stichprobenverteilung und Konfidenzintervallen. Die Frage „ist Modell A signifikant besser als B?” ist im Kern ein Hypothesentest über gepaarte Fold-Ergebnisse.
- Lineare Algebra / Spieltheorie: Die ROC-AUC ist eine Rangstatistik, und die SHAP-Werte sind die Shapley-Werte aus der kooperativen Spieltheorie — der einzige Weg, eine Vorhersage so auf Merkmale zu verteilen, dass Effizienz, Symmetrie und Additivität zugleich gelten.
Quellen
- Foliensatz
_350_ML_Eval.pdf— Grundlage für Konfusionsmatrix, die Definitionen von Präzision/Recall/F1, ROC/AUC sowie das Bias-Varianz-Bild und die Kreuzvalidierung. Die Folien liefern die Formeln; die Interpretation am Krebs-Beispiel (Asymmetrie der Fehlerkosten, Lüge der Genauigkeit bei Ungleichgewicht) habe ich ergänzt. - Foliensatz
_360_XAI.pdf— für die Blackbox/Glassbox-Einordnung, die Anwendungsbeispiele (Schufa, Dating-App, SkinDoctor), die Achse modell-spezifisch/modell-agnostisch und global/lokal sowie besonders die spieltheoretische Herleitung von SHAP über Shapley-Werte (die -Notation der Folien half, den „Mehrwert einer Koalition” sauber zu fassen). Die Permutationswichtigkeit in der Praxis ist meine Ergänzung; die Folien selbst zeigen für die globale Sicht Partial-Dependency-Plots. - Lundberg & Lee (2017), A Unified Approach to Interpreting Model Predictions (SHAP) und Shapley (1953), A Value for n-Person Games — die Primärquellen hinter dem zentralen XAI-Werkzeug der Folien und seiner spieltheoretischen Begründung.
- scikit-learn-Dokumentation (
permutation_importance, „Permutation Importance vs Random Forest Feature Importance”) — ausprobiert und konsultiert; sie warnt explizit vor der Verzerrung der Gini-Wichtigkeit bei korrelierten Merkmalen, was meinen Befund in der Praxis bestätigt. - Russell & Norvig, Artificial Intelligence: A Modern Approach, Kap. 19 — als Referenz für die saubere Begriffsbildung von Generalisierung und Überanpassung.