0Pricing
Learn AI with Python · Lektion

Verzerrungen in ML-Modellen erkennen

Geschützte Merkmale, Disparate Impact, fairlearn-Metriken, Equalized Odds, demografische Parität.

Verzerrungen in ML-Modellen erkennen ist eine kostenlose Learn AI with Python-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Learn AI with Python-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Learn AI with Python-Kurs umfasst insgesamt 4 Lektionen.

Was ist algorithmische Verzerrung

Ein Modell ist verzerrt, wenn seine Vorhersagen eine Gruppe, die durch ein sensibles Merkmal definiert ist (Geschlecht, ethnische Zugehörigkeit, Alter), systematisch benachteiligen. Verzerrungen entstehen häufig durch unausgewogene Trainingsdaten und können bei Entscheidungen über Einstellungen, Kredite oder medizinische Versorgung echten Schaden verursachen.

Sensible Merkmale

Ein sensibles Merkmal ist das Merkmal, anhand dessen wir Fairness messen, beispielsweise Geschlecht oder ethnische Zugehörigkeit. Fairness-Metriken vergleichen das Modellverhalten zwischen den Gruppen, die durch dieses Merkmal definiert werden, selbst wenn das Merkmal nicht als Modelleingabe verwendet wird.

Demografische Parität

Demografische Parität verlangt, dass die Rate positiver Vorhersagen in allen Gruppen gleich ist. Wenn ein Kreditmodell 60 % der Anträge aus Gruppe A, aber nur 35 % der Anträge aus Gruppe B genehmigt, ist die demografische Parität verletzt – unabhängig von der tatsächlichen Kreditwürdigkeit der Antragstellenden.

# P(prediction = 1 | group = A) == P(prediction = 1 | group = B)

Equalized Odds

Equalized Odds ist strenger: Die True-Positive-Rate und die False-Positive-Rate müssen in allen Gruppen gleich sein. Dabei wird das tatsächliche Label berücksichtigt. Unterschiedliche Auswahlraten sind also zulässig, solange das Modell für jede Gruppe gleich genau ist.

# TPR and FPR equal across groups
# P(pred=1 | y=1, A) == P(pred=1 | y=1, B)
# P(pred=1 | y=0, A) == P(pred=1 | y=0, B)

Parität vs. Equalized Odds

Diese Metriken können miteinander in Konflikt stehen:

  • Demografische Parität ignoriert das tatsächliche Label und kann daher gleiche Raten erzwingen, selbst wenn sich die Basisraten tatsächlich unterscheiden
  • Equalized Odds berücksichtigt das tatsächliche Label, erlaubt aber unterschiedliche Auswahlraten

Keine einzelne Metrik ist allgemein die richtige; die Wahl hängt vom Kontext und von den geltenden Gesetzen ab.

fairlearn kennenlernen

fairlearn ist eine Python-Bibliothek zum Messen und Verringern unfairer Ergebnisse. Das zentrale Messwerkzeug ist MetricFrame. Es berechnet beliebige Metriken aufgeschlüsselt nach sensibler Gruppe.

import pandas as pd
from fairlearn.metrics import MetricFrame
from sklearn.metrics import accuracy_score, selection_rate

Ein MetricFrame erstellen

Sie übergeben ein Wörterbuch mit Metriken, die tatsächlichen Labels, die Vorhersagen und die sensitive_features. fairlearn wertet jede Metrik für jede Gruppe aus.

mf = MetricFrame(
    metrics={
        "accuracy": accuracy_score,
        "selection_rate": selection_rate,
    },
    y_true=y_test,
    y_pred=y_pred,
    sensitive_features=X_test["gender"],
)

Ergebnisse nach Gruppe

Das Attribut by_group gibt eine Tabelle mit jeder Metrik für jede Gruppe zurück, sodass Unterschiede auf einen Blick sichtbar werden.

print(mf.by_group)
#            accuracy  selection_rate
# gender
# female        0.81            0.34
# male          0.83            0.59

Gesamtwerte und Unterschiede

fairlearn stellt außerdem aggregierte Ansichten bereit: overall für den gesamten Datensatz sowie Hilfsfunktionen wie difference() und ratio(), die den Abstand zwischen der besten und der schlechtesten Gruppe zusammenfassen.

print(mf.overall)
print(mf.difference(method="between_groups"))
# selection_rate    0.25  -> 25 point gap between groups

Unterschiede visualisieren

Ein Balkendiagramm von by_group macht aus Zahlen ein intuitives Bild. Ein großer Abstand zwischen den Balken derselben Metrik ist ein deutliches Warnsignal dafür, dass das Modell Gruppen unterschiedlich behandelt.

mf.by_group.plot.bar(
    subplots=True,
    layout=[1, 2],
    figsize=(10, 4),
    title="Metrics by group",
)

Von der Erkennung zur Mitigation

Sobald Sie Verzerrungen quantifiziert haben, bietet fairlearn Algorithmen zur Mitigation an, etwa ExponentiatedGradient und die Nachbearbeitung mit ThresholdOptimizer. Diese trainieren Modelle neu oder passen Schwellenwerte an, um eine Fairness-Bedingung zu erfüllen. Die Erkennung kommt immer zuerst: Was Sie nicht gemessen haben, können Sie nicht beheben.

Schnelltest

Testen Sie Ihr Wissen über Fairness.

Zusammenfassung

Sie haben gelernt, Verzerrungen zu erkennen:

  • Demografische Parität gleicht die Raten positiver Vorhersagen über alle Gruppen hinweg an
  • Equalized Odds gleicht TPR und FPR an und berücksichtigt dabei das Label
  • fairlearn MetricFrame berechnet ein Metrik-Wörterbuch für jede Gruppe von sensitive_features
  • Visualisieren Sie by_group, um Unterschiede zu erkennen, und wenden Sie anschließend eine Mitigation an

Häufig gestellte Fragen

Ist die Lektion „Verzerrungen in ML-Modellen erkennen“ kostenlos?

Ja — der vollständige Text von „Verzerrungen in ML-Modellen erkennen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Learn AI with Python-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Learn AI with Python-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Verzerrungen in ML-Modellen erkennen“?

Geschützte Merkmale, Disparate Impact, fairlearn-Metriken, Equalized Odds, demografische Parität. Du übst Learn AI with Python mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Learn AI with Python zu starten?

Keine Vorkenntnisse erforderlich. Learn AI with Python auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Verzerrungen in ML-Modellen erkennen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Learn AI with Python-Lektion Code schreiben und ausführen?

Ja. Jede Learn AI with Python-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Verzerrungen in ML-Modellen erkennen
  2. SHAP-Werte zur Erklärbarkeit von Modellen
  3. LIME: lokal interpretierbare Erklärungen
  4. Frameworks für KI-Ethik und Governance
← Zurück zu Learn AI with Python