Zum Hauptinhalt

Epoch

Eine Epoch beschreibt einen vollständigen Durchlauf des gesamten Trainingsdatensatzes durch ein neuronales Netz – ein zentrales Konzept beim Training von ML-Modellen.

AIFortgeschrittentrainingdeep-learningmachine-learning

Epoch

Eine Epoch bezeichnet genau einen vollständigen Durchlauf aller Trainingsbeispiele durch das neuronale Netz. Nach jeder Epoch wurden alle Gewichte (Weights) basierend auf den berechneten Gradienten aktualisiert. In der Praxis trainiert man Modelle über viele Epochen hinweg, bis der Loss konvergiert.

Wie funktioniert das?

Der Trainingsdatensatz wird in Batches aufgeteilt. Pro Epoch durchläuft das Modell alle Batches einmal:

Epoch 1: [Batch 1] → [Batch 2] → ... → [Batch N] → Gewichte aktualisiert
Epoch 2: [Batch 1] → [Batch 2] → ... → [Batch N] → Gewichte aktualisiert
...

Praxisbeispiel (PyTorch)

num_epochs = 10

for epoch in range(num_epochs):
    total_loss = 0
    for batch_X, batch_y in dataloader:  # ein Batch pro Iteration
        optimizer.zero_grad()
        predictions = model(batch_X)
        loss = criterion(predictions, batch_y)
        loss.backward()
        optimizer.step()
        total_loss += loss.item()
    
    print(f"Epoch {epoch+1}/{num_epochs} – Loss: {total_loss/len(dataloader):.4f}")

Zu viele oder zu wenige Epochen?

SituationSymptomLösung
Zu wenige EpochenUnderfitting, hoher TrainingslossMehr Epochen
Zu viele EpochenOverfitting, guter Train- aber schlechter Val-LossEarly Stopping
OptimalTrain- und Val-Loss konvergieren✓

Early Stopping ist ein gängiges Mittel: Das Training wird automatisch abgebrochen, sobald der Validierungsloss nicht mehr sinkt.

Epochen beim Fine-Tuning

Beim Fine-Tuning von LLMs reichen oft 1–5 Epochen, da das Modell bereits vortrainiert ist. Mehr Epochen erhöhen hier schnell das Risiko von Overfitting oder sogar Model Collapse.

Inhouse statt Nachschlagewerk

Für den Transfer ins Unternehmen sind die Inhouse-Schulungen der passende nächste Schritt.