Glossar

Epoche

Erfahre mehr über Epochen beim maschinellen Lernen - wie sie sich auf das Modelltraining auswirken, Overfitting verhindern und die Leistung optimieren mit Ultralytics YOLO .

Trainiere YOLO Modelle einfach
mit Ultralytics HUB

Mehr erfahren

Beim maschinellen Lernen (ML), insbesondere beim Training von Deep Learning-Modellen (DL), steht eine Epoche für einen vollständigen Durchlauf durch den gesamten Trainingsdatensatz. Es ist ein grundlegendes Konzept, das einen vollständigen Zyklus bezeichnet, in dem das Modell jedes Trainingsbeispiel einmal gesehen und daraus gelernt hat. Das Training umfasst in der Regel mehrere Epochen, damit das Modell seine internen Parameter(Modellgewichte) iterativ verfeinern und seine Leistung für die Aufgabe, für die es trainiert wird, verbessern kann.

Wie Epochen funktionieren

Während der Modellschulung ist der Datensatz in der Regel zu groß, um ihn auf einmal zu verarbeiten, da der Speicherplatz begrenzt ist. Deshalb wird er in kleinere Teile, sogenannte Batches, aufgeteilt. Das Modell verarbeitet einen Stapel nach dem anderen, berechnet den Fehler (Verlust) und aktualisiert seine Gewichte mithilfe eines Optimierungsalgorithmus wie dem Gradientenabstieg. Eine Epoche ist erst abgeschlossen, wenn das Modell alle Stapel verarbeitet hat, die den gesamten Trainingsdatensatz abdecken. Durch die Wiederholung dieses Prozesses über mehrere Epochen hinweg kann das Modell komplexe Muster und Beziehungen innerhalb der Daten effektiver lernen.

Epoche vs. Iteration vs. Batchgröße

Es ist wichtig, eine Epoche von verwandten Begriffen zu unterscheiden:

  • Epoche: Ein vollständiger Zyklus durch den gesamten Trainingsdatensatz.
  • Stapelgröße: Die Anzahl der Trainingsbeispiele, die verarbeitet werden, bevor die Gewichte des Modells aktualisiert werden.
  • Iteration: Eine einzelne Aktualisierung der Gewichte des Modells. Eine Iteration umfasst die Verarbeitung eines Datenstapels.

Die Beziehung ist einfach: Wenn ein Trainingsdatensatz 10.000 Proben enthält und die Stapelgröße 100 beträgt, besteht eine Epoche aus 100 Iterationen (10.000 Proben / 100 Proben pro Stapel).

Die Bedeutung von Epochen in der Ausbildung

Das Training eines Modells über mehrere Epochen ist entscheidend für die Konvergenz, d.h. das Modell erreicht einen stabilen Zustand, in dem seine Leistung optimal oder nahezu optimal ist. Jede Epoche gibt dem Modell eine weitere Chance, aus den Datenmustern zu lernen. Die Anzahl der Epochen ist jedoch ein kritischer Hyperparameter.

  • Zu wenige Epochen: Das Modell lernt möglicherweise nicht genug, was zu einer Unteranpassung führt, bei der es selbst bei den Trainingsdaten schlecht abschneidet.
  • Zu viele Epochen: Es kann sein, dass das Modell die Trainingsdaten zu gut lernt, einschließlich des Rauschens und bestimmter Details, was zu einer Überanpassung führt. Ein überangepasstes Modell schneidet bei den Trainingsdaten gut ab, aber bei den ungesehenen Daten(Validierungsdaten oder Beispiele aus der realen Welt) schlecht.

Die Überwachung der Leistungskennzahlen auf einem separaten Validierungsset während des Trainings hilft dabei, die optimale Anzahl von Epochen zu bestimmen, wobei oft Techniken wie das frühe Stoppen verwendet werden, um das Training zu beenden, wenn sich die Validierungsleistung nicht mehr verbessert.

Beispiele aus der realen Welt

  1. Objekterkennung mit Ultralytics YOLO: Beim Training einer Ultralytics YOLO Modell, wie YOLOv8 oder YOLO11für einen Datensatz wie COCO, kannst du das Training für 100 Epochen festlegen. In jeder Epoche verarbeitet das Modell den gesamten Satz von COCO-Trainingsbildern (aufgeteilt in Stapel) und passt seine Gewichte an, um Objekte besser zu erkennen und zu lokalisieren. Plattformen wie Ultralytics HUB bieten Tools zur Verwaltung dieses Trainingsprozesses und zur Überwachung des Fortschritts über Epochen hinweg.
  2. Natürliche Sprachverarbeitung (NLP): Das Training eines Modells wie BERT für die Stimmungsanalyse auf einem Datensatz von Kundenrezensionen umfasst mehrere Epochen. Ein Training für 5 Epochen bedeutet zum Beispiel, dass das Modell alle Rezensionen fünfmal durchliest. Bei jedem Durchgang (Epoche) werden Bibliotheken wie Hugging Face Transformers verwendet, die oft über Frameworks wie PyTorch oder TensorFlowverwendet werden, verbessert das Modell seine Fähigkeit, Bewertungen als positiv, negativ oder neutral zu klassifizieren.

Epochen sind ein Eckpfeiler des iterativen Lernens in der ML, da sie einen Ausgleich zwischen der Notwendigkeit einer ausreichenden Datenexposition und den Risiken einer Überanpassung schaffen. Die Auswahl der richtigen Anzahl von Epochen, oft durch sorgfältiges Experimentieren und Beobachten, ist der Schlüssel zum Aufbau effektiver Modelle. Weitere Definitionen findest du in Ressourcen wie dem Google Machine Learning Glossary.

Alles lesen