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

Warum wir mit neuen Daten testen

Nach dieser Lektion: Ich kann erklären, warum wir mit Daten testen, die das Modell nicht gesehen hat.

Lektion, 40 Min.Keine Befehle

Die Klausur, die jeder kennt

Stellen Sie sich eine Person vor, die eine Prüfung ablegt. Sie bekommt vorher die Aufgaben samt Lösungen und lernt sie auswendig.

In der Prüfung stehen genau diese Aufgaben. Sie hat 100 Prozent. Weiß er jetzt etwas?

Mit Modellen ist es genauso. Wer ein Modell an seinen Lernbeispielen misst, erfährt nur, ob es auswendig gelernt hat.

Am Ende dieser Lektion

Notiz

Ich kann erklären, warum wir mit Daten testen, die das Modell nicht gesehen hat.

Schlüsselwörter

BegriffWas er bedeutetBeispiel
Trainingsdatendie Beispiele, aus denen das Modell lernt
TestdatenBeispiele, die das Modell beim Lernen nie gesehen hat20 von 100 Bestellungen
Aufteilungdas Trennen aller Daten in Trainings- und Testdaten
Datenleckein Beispiel steckt in den Trainings- und in den Testdatendieselbe Bestellung in beiden
Zufällig mischendie Reihenfolge der Daten vor dem Teilen durcheinanderbringen

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

Zwei Mengen, die sich nie treffen

Bevor das Training beginnt, legen wir einen Teil der Daten zur Seite. Das sind die Testdaten. Das Modell sieht sie nie beim Lernen.

Der Rest sind die Trainingsdaten. Nur daraus lernt das Modell.

Zum Schluss prüfen wir das Modell an den Testdaten. Für das Modell sind es neue Fälle, wie später im Betrieb.

Rechenbeispiel: eine Aufteilung 80 zu 20

Alle DatenTrainingsdaten (80 von 100)Testdaten (20 von 100)
100 Bestellungen80 Bestellungen20 Bestellungen
1000 Bestellungen800 Bestellungen200 Bestellungen
50 Bestellungen40 Bestellungen10 Bestellungen

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

Daten aufteilen in Python

Code: python
# Zehn Bestellungen. Zu jeder ist bekannt, ob sie zurückgeschickt wurde.
bestellungen = [101, 102, 103, 104, 105, 106, 107, 108, 109, 110]

# 80 Prozent zum Trainieren, der Rest zum Testen.
anzahl_training = len(bestellungen) * 80 // 100
training = bestellungen[:anzahl_training]
test = bestellungen[anzahl_training:]

print("Training:", training)
print("Test:", test)
print("Anzahl:", len(training), "und", len(test))

# Ein Modell, das nur auswendig lernt, was es im Training gesehen hat.
gelernt = {101: "ja", 102: "nein", 103: "nein", 104: "ja",
           105: "nein", 106: "ja", 107: "nein", 108: "nein"}


def antwort(nummer):
    if nummer in gelernt:
        return gelernt[nummer]
    return "unbekannt"


print("Bestellung 103 (im Training):", antwort(103))
print("Bestellung 109 (im Test):", antwort(109))

# Ändern Sie 80 in 50. Wie viele Bestellungen bleiben zum Testen?

Vor dem Teilen mischen

Oft sind Daten sortiert, zum Beispiel nach Datum. Dann liegen am Ende die neuesten Bestellungen. Teilen wir einfach nach Position, enthalten die Testdaten nur den Winter und die Trainingsdaten nur den Sommer.

Darum mischen wir die Daten zuerst zufällig. Dann stecken in beiden Mengen alle Jahreszeiten.

Achtung: das Datenleck

Warnung

Ein Datenleck liegt vor, wenn dieselbe Information in beiden Mengen steckt. Zum Beispiel ist eine Bestellung doppelt in der Datei, einmal im Training und einmal im Test. Dann ist der Test zu leicht, und das Modell sieht besser aus, als es ist.

Wie ein Leck das Ergebnis täuscht

ModellTrainingsdatenTestdatenErgebnis im Test
Ohne LeckBestellungen 1 bis 80Bestellungen 81 bis 10070 %, ehrlich
Mit LeckBestellungen 1 bis 80Bestellungen 61 bis 10085 %, zu gut

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

Manchmal gibt es eine dritte Menge

Teams probieren oft viele Einstellungen aus und messen jedes Mal. Dafür nehmen sie eine dritte Menge, die Validierungsdaten.

Die Testdaten bleiben unberührt bis zum letzten Schritt. So bleibt der letzte Test ehrlich.

Ein häufiger Irrtum

Warnung

Viele denken: „Mein Modell hat auf allen Daten 98 Prozent, also ist es gut.“ Dabei waren die Trainingsdaten dabei. Eine ehrliche Zahl kommt nur von Daten, die das Modell nie gesehen hat.

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.