Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Modellkarte und Überwachung eines KI-Modells

Nach dieser Lektion: Ich kann ein Modell dokumentieren und seine Überwachung planen.

Lektion, 55 Min.2 BefehleJupyterLab-Lab für Data Science: pandas, Matplotlib und scikit-learn im Browser

Wer steht für das Modell gerade?

Eine Modellkarte ist ein kurzes Dokument, das sagt, was ein Modell kann, mit welchen Daten es lernte und wo es versagt. Zusammen mit einer Überwachung im Betrieb sorgt sie dafür, dass jemand für das Modell geradesteht.

Ein Kreditmodell läuft seit einem Jahr. Die Person, die es baute, hat die Firma verlassen. Niemand weiß mehr, wofür es gedacht war und ob die Zahlen noch stimmen.

Am Ende dieser Lektion

Notiz

Ich kann ein Modell dokumentieren und seine Überwachung planen.

Schlüsselwörter

BegriffWas er bedeutetBeispiel
Modellkarteein kurzes Dokument über Zweck, Daten, Messwerte und Grenzen eines Modells
Driftdie Daten im Betrieb verschieben sich gegenüber den Trainingsdaten
Überwachungregelmäßiges Messen eines Modells im Betrieb
Alarmgrenzeder Wert, ab dem jemand handeln muss10 % Abweichung
Verantwortliche Persondie Person, die ein Modell stoppen oder ändern darf

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Eine Modellkarte nennt Können und Grenzen

Eine Modellkarte hat feste Abschnitte, damit nichts vergessen wird. Sie ist kurz, in einfachen Worten und für Menschen geschrieben, die das Modell nicht gebaut haben.

Die Tabelle zeigt die Abschnitte an einem erfundenen Kreditmodell. Wichtig sind die Grenzen: wofür das Modell nicht gedacht ist.

Beispiel: die Modellkarte eines Kreditmodells

AbschnittFrageBeispiel
ZweckWofür ist das Modell gedacht?Kreditanträge vorsortieren, nie allein entscheiden
DatenWomit lernte es?8000 Anträge aus fünf Jahren, Gruppe B nur 12 %
MesswerteWie gut ist es, je Gruppe?Auswahlrate und Trefferquote für A und B
GrenzenWofür gilt es nicht?Nicht für Personen unter 18, nicht für Firmenkredite
VerantwortungWer steht dafür gerade?Das Team Kredit, mit einer benannten Ansprechperson
PrüfungWann wird es neu geprüft?Alle drei Monate

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Drift: Die Welt ändert sich, das Modell nicht

Ein Modell lernt aus der Vergangenheit und wird in der Gegenwart benutzt. Ändert sich die Welt, passt es schlechter. Diese Verschiebung heißt Drift.

Im Lab sehen Sie sie an hires.csv. Ein Modell, das nur aus Januartagen lernt, trifft im Juli auf ganz andere Werte. Die zwei Befehle unten geben die mittlere Temperatur und die mittleren Ausleihen im Januar und im Juli aus.

Die mittlere Temperatur im Januar und im Juli

Befehl
docker exec jupyter python3 -c "import csv; z = list(csv.DictReader(open('hires.csv'))); a = [float(x['temp_c']) for x in z if x['month'] == 'Jan']; b = [float(x['temp_c']) for x in z if x['month'] == 'Jul']; print('Januar:', round(sum(a) / len(a), 1), 'Grad, Juli:', round(sum(b) / len(b), 1), 'Grad')"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die mittleren Ausleihen im Januar und im Juli

Befehl
docker exec jupyter python3 -c "import csv; z = list(csv.DictReader(open('hires.csv'))); a = [int(x['hires']) for x in z if x['month'] == 'Jan']; b = [int(x['hires']) for x in z if x['month'] == 'Jul']; print('Januar:', round(sum(a) / len(a)), 'Ausleihen, Juli:', round(sum(b) / len(b)), 'Ausleihen')"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Eine Verschiebung mit einer Grenze erkennen

Code: python
# Mittlere Temperatur beim Training und im Betrieb
training = [4.0, 6.0, 5.0, 3.0]
betrieb = [15.0, 17.0, 16.0, 18.0]

def mittelwert(werte):
    summe = 0
    for wert in werte:
        summe = summe + wert
    return summe / len(werte)

print("Training:", mittelwert(training), "Betrieb:", mittelwert(betrieb))
if abs(mittelwert(betrieb) - mittelwert(training)) > 5:
    print("Alarm: Die Daten haben sich verschoben.")
# Ändern Sie die Betriebswerte so, dass kein Alarm kommt.

Eine Überwachung braucht eine Grenze und eine Person

Eine Überwachung misst regelmäßig dasselbe, was Sie vor dem Start gemessen haben: Mittelwerte der Eingaben sowie Auswahlraten und Trefferquoten je Gruppe. Dazu gehört eine Alarmgrenze, ab der jemand handeln muss.

Und es gehört eine verantwortliche Person dazu, die das Modell stoppen oder neu trainieren darf. Ohne sie ist ein Alarm nur eine Zahl.

Beispiel: ein Überwachungsplan

FrageAntwort
Was wird gemessen?Mittlere Eingaben und die Raten je Gruppe
Wie oft?Jede Woche
AlarmgrenzeEin Mittelwert weicht um mehr als 10 % ab
Wer handelt?Das Team Kredit
Was geschieht?Modell stoppen, Ursache suchen, neu trainieren

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein häufiger Fehler

Warnung

Viele denken, ein Modell, das beim Start gut war, bleibe gut. Die Welt ändert sich aber, und das Modell merkt es nicht von allein. Messen Sie darum weiter, mit einer Grenze und einer Person, die handelt.

Weiterführend: Eine eigene Modellkarte

Schreiben Sie in Ihrem Notebook eine kurze Modellkarte für das Regressionsmodell aus dem Lab, das Ausleihen aus Temperatur und Regen vorhersagt. Nehmen Sie die sechs Abschnitte der Tabelle.

Legen Sie außerdem eine Alarmgrenze fest, etwa für die mittlere Temperatur, und begründen Sie sie in einem Satz.

Über dieses Lab und seinen Quellcode: JupyterLab-Lab für Data Science: pandas, Matplotlib und scikit-learn im Browser

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.