3.4 Evaluation & erklärbare KI

Kapitel 3 · Maschinelles Lernen

Noah Kolb · Sommersemester 2026

‹ Alle ThemenVertiefung

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 (TPTP), falsch-positiv (FPFP), falsch-negativ (FNFN) und richtig-negativ (TNTN). Aus ihr leiten sich ab:

Genauigkeit=TP+TNTP+TN+FP+FN,Pra¨zision=TPTP+FP,Recall=TPTP+FN.\text{Genauigkeit} = \frac{TP+TN}{TP+TN+FP+FN}, \qquad \text{Präzision} = \frac{TP}{TP+FP}, \qquad \text{Recall} = \frac{TP}{TP+FN}.

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:

F1=2Pra¨zisionRecallPra¨zision+Recall.F_1 = \frac{2 \cdot \text{Präzision} \cdot \text{Recall}}{\text{Präzision} + \text{Recall}}.

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 TPTP und FPFP 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: AUC=1\text{AUC}=1 ist perfekt, 0,50{,}5 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 Happiness=a+bWealth+\text{Happiness} = a + b\,\text{Wealth} + \dots: Modell M1M_1 (linear) ist zu grob (Unteranpassung), das Polynom M3M_3 sechsten Grades passt sich jeder Schwankung an und klassifiziert einen neuen Punkt eher falsch als das mittlere M2M_2. 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 L1L_1/L2L_2, 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 p(Cd)p(C\mid d) und Basisrate p(C)p(C) als Summe von Einzelbeiträgen auf die Merkmale. Modell-agnostisch bildet man dazu alle 2m2^{|m|} Koalitionen der Merkmale und mittelt für jedes Merkmal mkm_k die Differenz p(Cmk,mimj)p(Cmimj)p(C\mid m_k, m_i \dots m_j) - p(C\mid m_i \dots m_j); 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.
Konfusionsmatrix als Heatmap mit den vier Zellzahlen

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 0,9950{,}995, die ehrlichere 5-fache Kreuzvalidierung 0,990±0,0090{,}990 \pm 0{,}009 — der einzelne Split war zufällig leicht optimistisch. Genau dafür ist die Streuung da.

ROC-Kurve, die fast in die linke obere Ecke läuft, mit markiertem Youden-Punkt

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 t=0,59t=0{,}59 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 (0,0840{,}084), nach Permutation aber fast bedeutungslos (0,00040{,}0004). 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.

Horizontale Balken: Permutations- gegen Gini-Wichtigkeit der acht wichtigsten Merkmale

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 1,81{,}8 Standardabweichungen über dem gutartigen Mittel liegender worst concave points-Wert. Das ist ein vereinfachtes, SHAP-ähnliches Argument: Beitrag == Abweichung vom gutartigen Mittel ×\times 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.13.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 p(Cd)p(C\mid d)-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.