Epoch / Batch / Iteration

Wie Trainingsdaten, Updates und Kontrollpunkte zusammenwirken

Die drei Zeiteinheiten des Machine-Learning-Trainings: Eine Epoch ist ein kompletter Durchlauf aller Daten, ein Batch ist eine Teilmenge, und eine Iteration ist ein Trainingsschritt.

Einsteiger2 Min Lesezeit

Erklärung starten

Auf einen Blick

3 Punkte

  1. Epoch: Ein kompletter Durchlauf durch den gesamten Trainingsdatensatz
  2. Batch: Eine Teilmenge der Daten, die in einem Schritt verarbeitet wird
  3. Iteration: Ein einzelner Trainingsschritt (Forward + Backward Pass für einen Batch)

Sofortantwort

Epoch / Batch / Iteration einfach erklärt

Epoch, Batch und Iteration sind Zeiteinheiten im Training.

Kurz gesagt
Epoch: Ein kompletter Durchlauf durch den gesamten Trainingsdatensatz
Typischer Einsatz
Training konfigurieren, GPU-Speicher managen, Training überwachen
Wichtig zu wissen
Iteration: Ein einzelner Trainingsschritt (Forward + Backward Pass für einen Batch)

Epoch / Batch / Iteration im Überblick

Epoche, Batch und Iteration sind die drei Zeiteinheiten des Modell-Trainings. Eine Epoche bedeutet, dass das Modell den gesamten Trainingsdatensatz einmal gesehen hat. Da Datensätze oft zu groß sind, um sie auf einmal zu verarbeiten, werden sie in Batches aufgeteilt. Eine Iteration ist ein einzelner Trainingsschritt mit einem Batch. Das Verständnis dieser Begriffe ist entscheidend, um Trainings-Hyperparameter richtig einzustellen und Trainingsverläufe zu interpretieren.

Diese drei Begriffe beschreiben, wie das Training eines KI-Modells zeitlich strukturiert ist.

Rechenbeispiel:

Datensatz: 10.000 Beispiele
Batch Size: 100
Epochs: 5

-> 100 Iterationen pro Epoch (10.000 / 100)
-> 500 Iterationen insgesamt (100 × 5)
-> Jedes Beispiel wird 5 Mal gesehen

Visualisierung:

Epoch 1: [Batch 1][Batch 2][Batch 3]...[Batch 100] → Loss: 2.5
Epoch 2: [Batch 1][Batch 2][Batch 3]...[Batch 100] → Loss: 1.8
Epoch 3: [Batch 1][Batch 2][Batch 3]...[Batch 100] → Loss: 1.2
...

Technisch betrachtet

Batch Size und Auswirkungen

Batch SizeVorteileNachteile
Klein (8-32)Wenig GPU-Speicher, RegularisierungseffektInstabile Gradienten, langsam
Mittel (64-256)Guter Kompromiss-
Groß (512+)Stabile Gradienten, schnell auf GPUsViel Speicher, kann Generalisierung verschlechtern

Gradient Accumulation

Wenn die gewünschte Batch Size nicht in den GPU-Speicher passt:

  • Mehrere kleine Batches verarbeiten
  • Gradienten akkumulieren
  • Erst nach N Schritten ein Update durchführen
  • Effektive Batch Size = Micro-Batch × Accumulation Steps

Shuffling

Daten werden vor jeder Epoch zufällig gemischt, damit das Modell nicht die Reihenfolge lernt. Besonders wichtig bei sortierten oder gruppierten Datensätzen.

Learning Rate Scheduling

Die Learning Rate wird oft über Epochs hinweg angepasst:

  • Warmup: Langsam starten, dann erhöhen (erste 5-10% der Iterationen)
  • Decay: Gegen Ende reduzieren für Feintuning
  • Cosine Annealing: Sanfte Reduktion nach Cosinus-Kurve

Code-Beispiel (PyTorch)

from torch.utils.data import DataLoader

# Datensatz mit 10.000 Beispielen
dataset = MyDataset()  # len(dataset) = 10000

# Batch Size 32 → 313 Iterationen pro Epoch (10000/32 = 312.5, aufgerundet)
loader = DataLoader(dataset, batch_size=32, shuffle=True)

num_epochs = 10
for epoch in range(num_epochs):
    for iteration, (inputs, labels) in enumerate(loader):
        # Forward + Backward + Update
        outputs = model(inputs)
        loss = criterion(outputs, labels)
        loss.backward()
        optimizer.step()
        optimizer.zero_grad()
        
        if iteration % 100 == 0:
            print(f"Epoch {epoch+1}/{num_epochs}, Iter {iteration}, Loss: {loss.item():.4f}")

Typische Werte in der Praxis

ModelltypEpochsBatch SizeBegründung
CNN (ImageNet)90-300256-4096Viele Epochs, große Batches
BERT Fine-Tuning2-416-32Wenige Epochs reichen
LLM Pre-Training1-21M+ TokensRiesige Datenmenge, wenige Durchläufe
Stable Diffusion12048Einmal durch die Daten

Schritt für Schritt

So planst und liest du einen Trainingslauf

  1. Datenmenge und Ziel festlegen

    Bestimme zuerst Datensatzgröße, verfügbare Rechenzeit und eine aussagekräftige Validierungsmetrik. Ohne diese drei Größen lässt sich weder eine sinnvolle Batch Size noch ein Abbruchzeitpunkt begründen.

  2. Batch Size als Arbeitsportion wählen

    Wähle eine Batch Size, die zuverlässig in den verfügbaren Speicher passt. Sie bestimmt, wie viele Beispiele das Modell vor einem Update sieht und wie viele Iterationen eine Epoch enthält.

  3. Epochs als Prüfintervalle behandeln

    Plane nicht blind eine feste Zahl von Durchläufen. Werte nach jeder Epoch Training und Validierung aus, damit sichtbar wird, ob das Modell noch lernt oder bereits überanpasst.

  4. Iterationen sinnvoll protokollieren

    Logge Loss, Lernrate und Gradientennormen regelmäßig pro Iteration. So lassen sich Ausreißer, instabile Batches und zu aggressive Updates erkennen, bevor viele Epochs Rechenzeit kosten.

Konkretes Beispiel

Ein Trainingslauf mit 12.000 Support-Anfragen

Ein Team trainiert einen Klassifikator, der eingehende Anfragen nach Thema sortiert. Es will den Fortschritt nachvollziehbar messen und rechtzeitig stoppen.

Ausgangslage

12.000 Trainingsbeispiele, Batch Size 48, maximal 20 Epochs und ein separates Validierungsset. Pro Epoch entstehen 250 Iterationen.

Beobachtung

Nach Epoch 7 sinkt der Trainings-Loss weiter, während der Validierungs-Loss drei Durchläufe in Folge steigt. Das Team stoppt das Training und behält den Checkpoint aus Epoch 4.

Epochs strukturieren die Bewertung, Batches die Rechenarbeit und Iterationen die einzelnen Updates. Erst zusammen machen sie den Trainingsverlauf lesbar.

Einordnung

Vorteile und Grenzen

Das spricht dafür

  • Klare Einheiten machen Trainingsfortschritt und Rechenaufwand vergleichbar.
  • Metriken pro Iteration und Epoch helfen, Fehler früh zu lokalisieren.

Das solltest du beachten

  • Eine hohe Zahl von Epochs ist kein Beleg für ein besser generalisierendes Modell.
  • Eine große Batch Size kann Speicherengpässe und andere Lernverläufe verursachen.
Vertiefung · für Fortgeschrittene

Trainingsrhythmus im Wissensnetz

Die Zeiteinheiten verbinden Daten, Optimierung und die Kontrolle der Modellqualität.

Wissenskarte

Ordnet, wann Daten verarbeitet, Updates ausgeführt und Ergebnisse bewertet werden.

Gradient Descent
Algorithmus zur schrittweisen Fehlerminimierung im ML.
Hyperparameter
Manuell festgelegte Einstellungen für das KI-Training.
Loss Function
Eine Funktion, die die Genauigkeit von Modellvorhersagen misst.
Trainingsdaten
Datensätze, die das Lernen und die Leistung von Modellen bestimmen.
Overfitting & Underfitting
Probleme, die beim Machine Learning die Modellgenauigkeit beeinflussen.
Batch Size, Lernschritte und Wiederholungen entfalten ihren Wert nur zusammen mit Datenqualität, Optimierung und einer unabhängigen Validierung. Epoch · Batch · Iteration gliedert sich in: Gradient Descent, Hyperparameter, Loss Function, Trainingsdaten, Overfitting & Underfitting.

01Einsatzbereiche

Wann ist Epoch / Batch / Iteration sinnvoll?

Geeignet für

  • Training konfigurierenFestlegen, wie lange und in welchen Portionen ein Modell trainiert wird
  • GPU-Speicher managenBatch Size bestimmt, wie viel GPU-Speicher pro Schritt benötigt wird
  • Training überwachenLoss pro Epoch oder Iteration tracken, um Fortschritt zu bewerten

↑ Inhalt

02Werkzeuge

Womit Epoch / Batch / Iteration umgesetzt wird

↑ Inhalt

Merksatz

Stell dir vor, du lernst mit einem Stapel Karteikarten

Eine Epoch ist einmal den ganzen Stapel durchgehen. Ein Batch ist eine Handvoll Karten, die du gleichzeitig anschaust. Eine Iteration ist das Lernen aus einer Handvoll.

  1. Epoch: Ein kompletter Durchlauf durch den gesamten Trainingsdatensatz
  2. Batch: Eine Teilmenge der Daten, die in einem Schritt verarbeitet wird
  3. Iteration: Ein einzelner Trainingsschritt (Forward + Backward Pass für einen Batch)

04Redaktion

Herkunft und Stand

Redaktion und Aktualität

Ebenex RedaktionRedaktion

Veröffentlicht
Aktualisiert

Dieses Feld entwickelt sich schnell. Oben stehen Veröffentlichung und letzte Änderung; ein Prüfdatum kommt dazu, sobald die Erklärung nach ihrer letzten Änderung geprüft wurde.

↑ Inhalt

05FAQ

Häufige Fragen zu Epoch / Batch / Iteration

Wie viele Epochs braucht man?

Das variiert stark. Klassisches ML: 10-100 Epochs. Deep Learning: 1-50 Epochs. LLM Pre-Training: oft nur 1-2 Epochs über den gesamten Datensatz. Zu viele Epochs → Overfitting.

Welche Batch Size ist optimal?

Typisch 16-512. Größere Batches: stabilere Gradienten, schnelleres Training, aber mehr GPU-Speicher. Kleinere Batches: mehr Rauschen (kann als Regularisierung wirken), weniger Speicher.

Was ist der Zusammenhang zwischen den drei Begriffen?

Iterationen pro Epoch = Datensatzgröße / Batch Size. Bei 10.000 Beispielen und Batch Size 100 gibt es 100 Iterationen pro Epoch.

↑ Inhalt

06Weiterlernen

Was möchtest du als Nächstes verstehen?

  • Grundlage nachholen

    Gradient Descent

    Algorithmus zur schrittweisen Fehlerminimierung im ML.

  • Technisch vertiefen

    Hyperparameter

    Manuell festgelegte Einstellungen für das KI-Training.

↑ Inhalt