Kapitel 7: Die Trainingsschleife und der Adam-Optimierer
Dieses Kapitel erklärt den Kern des Trainings neuronaler Netze anhand einer vollständigen Trainingsschleife. Behandelt werden die Auswahl und Tokenisierung eines Dokuments, der Forward Pass über jedes Token zur Aufsummierung des Loss, die Backpropagation zur Berechnung aller Gradienten, die Aktualisierung der Parameter mit dem Adam-Optimierer sowie das Zurücksetzen der Gradienten vor dem nächsten Schritt. Aufbauend auf den vorherigen Kapiteln verbindet der Beitrag diese Bausteine zu einem praktischen End-to-End-Trainingsablauf.
Im Lernpfad des Deep Learning begegnen viele Menschen zunächst Modellarchitekturen, danach Verlustfunktionen, Backpropagation und Optimierer. Wenn sie dann aber selbst ein Modell trainieren wollen, merken sie oft, dass diese Begriffe zwar jeweils schon einmal gelernt wurden, sich aber noch nicht zu einer durchgehenden Arbeitskette verbunden haben. Genau hier setzt die Trainingsschleife an: Sie ist der Rahmen, der diese verstreuten Bausteine zusammenführt. Der Wert eines Kapitels über die Trainingsschleife und den Adam-Optimierer liegt deshalb nicht darin, einzelne Fachbegriffe isoliert zu erläutern, sondern darin, eine vollständige Iteration sichtbar zu machen: wie Text in das Modell gelangt, wie Vorhersagefehler berechnet werden, wie aus diesem Fehler Gradienten entstehen und wie diese Gradienten schließlich in Parameteraktualisierungen übersetzt werden.
Strukturell baut das Kapitel auf bereits eingeführten Grundlagen auf. Es erklärt also nicht noch einmal von Grund auf, was ein neuronales Netz ist, sondern setzt voraus, dass der Leser Token, Forward Pass, Verlustfunktion und die Grundidee trainierbarer Parameter bereits kennt. Der eigentliche Fortschritt besteht darin, diese Komponenten zu einem ausführbaren Trainingsablauf zusammenzusetzen. Für viele Einsteiger ist genau dieser Schritt wichtiger als das isolierte Verstehen einer mathematischen Definition, denn die größte Hürde beim Training liegt nicht nur in Formeln. Sie liegt im Prozessverständnis: Wann werden Daten eingespeist? Wann wird der Loss akkumuliert? Wann wird Backpropagation ausgelöst? Wann werden Parameter aktualisiert? Und wann müssen Gradienten wieder auf null gesetzt werden? Sobald diese zeitliche Abfolge klar ist, werden viele zuvor abstrakt wirkende Konzepte plötzlich greifbar.
Zu Beginn richtet das Kapitel den Blick auf den Ausgangspunkt des Trainings, also auf die Auswahl eines Beispiels und die Tokenisierung des Textes. In Sprachmodellen und anderen textbezogenen neuronalen Netzen kann ein Rohdokument nicht direkt in das Modell eingespeist werden. Zunächst muss es tokenisiert werden. Dieser Schritt wirkt auf den ersten Blick simpel, legt aber tatsächlich die grundlegende Einheit des späteren Lernens fest. Das Modell „versteht“ nicht unmittelbar einen ganzen Absatz, sondern verarbeitet diskrete Token und lernt Wahrscheinlichkeitsbeziehungen innerhalb einer Sequenz. Dass die Trainingsschleife mit der Auswahl eines Dokuments und seiner Tokenisierung beginnt, ist daher nicht bloß eine technische Vorbereitung des Inputs, sondern eine Festlegung des Lernproblems selbst: Was soll das Modell auf Basis welches Kontexts vorhersagen? Gerade für didaktische Inhalte ist dieser Einstieg wichtig, weil er deutlich macht, dass Training nicht erst bei optimizer.step() anfängt, sondern bei der Repräsentation der Daten.
Danach verlagert sich der Schwerpunkt auf den Forward Pass für jedes einzelne Token und auf die Akkumulation des Loss. Der Forward Pass gehört häufig zu den ersten Konzepten, mit denen Lernende in Kontakt kommen, doch erst innerhalb einer echten Trainingsschleife wird seine Bedeutung wirklich konkret. Liest das Modell ein Token oder einen Kontext, erzeugt es eine entsprechende Vorhersageverteilung. Das Ziel des Trainings besteht darin, diese Vorhersage schrittweise näher an das tatsächliche Ziel zu bringen. Der „Loss“ ist dabei keine abstrakte Strafgröße, sondern ein quantifizierter Abstand zwischen aktuellem Modellverhalten und gewünschtem Ergebnis. Wenn der Loss tokenweise aufsummiert wird, bedeutet das im Kern, viele kleine lokale Fehler zu einem Trainingssignal zusammenzuführen, das für das Lernen nutzbar ist. Diese Darstellung hilft dabei zu verstehen, dass ein Modell nicht plötzlich von selbst klüger wird, sondern seine Parameter durch die wiederholte Korrektur vieler kleiner Abweichungen allmählich anpasst.
Gerade dieser Abschnitt besitzt noch eine weitere, oft unterschätzte pädagogische Bedeutung: Er macht sichtbar, was die elementare Arbeitseinheit innerhalb der Trainingsschleife ist. Viele stellen sich Training anfangs als einen diffusen Gesamtprozess vor: Man gibt Daten hinein, lässt das Modell einige Runden laufen, und wenn der Loss sinkt, scheint alles zu funktionieren. Die eigentliche Trainingslogik ist aber keine undurchsichtige Blackbox, sondern eine große Zahl kleiner, wiederholter und streng geordneter Schritte. Jedes Token durchläuft einen Forward Pass, jede Sequenz liefert eine Menge von Fehlersignalen, und diese Signale werden gesammelt, um anschließend die Gradienten zu berechnen. Indem das Kapitel diese Bewegungen einzeln auffaltet, vermittelt es dem Leser ein feinkörniges Kausalitätsverständnis: Jede Aktualisierung des Modells lässt sich auf konkrete Eingaben, Vorhersagen und Fehler zurückführen.
Nachdem der Loss akkumuliert wurde, erreicht die Trainingsschleife eine ihrer zentralsten Phasen: die Backpropagation. Für viele Einsteiger bleibt Backpropagation leicht auf der Ebene eines Schlagworts stehen. Man weiß, dass damit Gradienten berechnet werden, versteht aber nicht unbedingt, welche Funktion sie innerhalb des gesamten Trainingszyklus erfüllt. Die Stärke dieses Kapitels liegt darin, die Backpropagation wieder in ihren Zusammenhang einzubetten. Der Forward Pass erzeugt auf Basis der aktuellen Parameter eine Vorhersage, die Verlustfunktion misst die Abweichung, und die Backpropagation trägt diese Abweichung dann rückwärts durch den Rechengraphen, um zu bestimmen, in welche Richtung und mit welcher ungefähren Stärke jeder trainierbare Parameter angepasst werden sollte. Erst an diesem Punkt verwandelt sich der Loss von einer beobachteten Zahl in einen Mechanismus, der Lernen tatsächlich antreibt.
Wenn der Loss beantwortet, „wie stark das Modell danebenliegt“, dann beantwortet der Gradient die Frage, „wie es verändert werden sollte“. Genau darin liegt einer der elegantesten, aber didaktisch am häufigsten zerstückelten Punkte des Deep Learning. Viele Lehrmaterialien erklären Verlustfunktion, Ableitungen, Kettenregel und Backpropagation nacheinander, ohne deutlich zu machen, wie diese Bestandteile innerhalb einer einzigen Iteration zusammenspielen. Indem dieses Kapitel die Backpropagation nach der Loss-Akkumulation und vor der Parameteraktualisierung platziert, schließt es die logische Kette auf natürliche Weise: Zuerst entsteht Fehler, dann wird dessen Einfluss auf die Parameter berechnet, und anschließend wird das Modell entsprechend angepasst. Für das Verständnis des Trainings ist diese prozesshafte Darstellung oft wirksamer als eine bloße Ansammlung von Formeln.
Sobald die Gradienten vorliegen, tritt der Optimierer in den Vordergrund. Dass sich das Kapitel auf Adam konzentriert, ist kein Zufall. Adam gehört zu den am weitesten verbreiteten Optimierern in der modernen Deep-Learning-Praxis, weil er Momentum mit adaptiven Lernraten kombiniert und in vielen Aufgaben ein vergleichsweise stabiles, gut handhabbares Training ermöglicht. Für Lernende ist Adam nicht nur „ein gängiger Optimierer“, sondern auch ein Mittel, um zu verstehen, dass ein Optimierer eben nicht einfach den Gradienten mit einer festen Schrittweite subtrahiert. Adam berücksichtigt Informationen aus vergangenen Gradienten und passt das Aktualisierungstempo für unterschiedliche Parameter unterschiedlich an. Dadurch gelangt das Training häufig schneller in einen wirksamen Lernbereich und eignet sich besonders gut als Standardbeispiel in einem didaktischen Kontext.
Besonders hervorzuheben ist, dass Adam die Trainingsschleife als mehr zeigt als bloß „Backpropagation plus Update“. Er macht sichtbar, dass die Optimierungsstrategie selbst erheblichen Einfluss auf das Trainingsergebnis hat. Ob ein Modell stabil lernt, ob es sauber konvergiert oder ob seine Parameter in bestimmten Richtungen zu Schwingungen neigen, hängt stark von der Konstruktion des Optimierers ab. Indem das Kapitel Adam in die vollständige Schleife integriert, anstatt ihn nur als isolierten Algorithmusbaustein zu behandeln, vermittelt es eine zentrale praktische Einsicht: Die Leistungsfähigkeit eines Deep-Learning-Systems entsteht nicht nur aus der Modellarchitektur, sondern ebenso aus der Steuerung des Trainingsprozesses. Der Optimierer ist Teil des Lernsystems und kein bloßes Zusatzmodul.
Nach der Parameteraktualisierung betont das Kapitel außerdem einen Schritt, der in der Programmierpraxis häufig übersehen wird, für die Nutzung von Frameworks aber äußerst wichtig ist: das Zurücksetzen der Gradienten. Wer erstmals mit automatischer Differenzierung arbeitet, übersieht leicht, dass viele Deep-Learning-Frameworks Gradienten standardmäßig akkumulieren. Wenn diese Gradienten also nicht vor der nächsten Iteration explizit auf null gesetzt werden, werden Informationen aus dem vorigen Durchlauf auf den nächsten aufaddiert, und die Parameteraktualisierung weicht vom beabsichtigten Verhalten ab. Dass das Kapitel das Leeren der Gradienten als festen Bestandteil der Trainingsschleife behandelt, hilft nicht nur beim Schreiben korrekten Codes. Es zeigt auch, dass Training keine beliebige Aneinanderreihung von Funktionsaufrufen ist, sondern eine Operationsfolge mit klaren Abhängigkeiten und fester Reihenfolge.
Aus didaktischer Sicht ist eine der größten Stärken dieses Kapitels, dass es klarer erklärt, warum Trainingscode auf diese Weise geschrieben wird, als bloß zu zeigen, wie ein Trainingscode-Skelett aussieht. Viele Tutorials geben direkt ein Muster vor, etwa Daten laden, zero_grad, forward, loss, backward, step, und lassen den Leser dieses Schema nachbauen. Ohne eine Erklärung der Kausalbeziehungen zwischen den Schritten wird ein solches Muster jedoch schnell zu etwas, das man nur auswendig lernt. Man weiß dann vielleicht, welche Zeile wohin gehört, aber nicht, was passiert, wenn ein Schritt fehlt, und auch nicht, warum sich die Reihenfolge nicht beliebig ändern lässt. Genau dieses Problem versucht das Kapitel zu lösen: Die Trainingsschleife soll nicht als bloßes Codefragment erscheinen, sondern wieder als verständlicher Mechanismus.
Das ist besonders wichtig für Leser, die später größere Modelle, Fine-Tuning-Prozesse oder eigene Trainingsframeworks verstehen wollen. Denn ganz gleich, wie komplex die Aufgabe wird, das Grundgerüst des Trainings bleibt erstaunlich stabil. Selbst in fortgeschritteneren Szenarien wie Mini-Batch-Training, Gradientenakkumulation, Learning-Rate-Scheduling, Mixed-Precision-Training oder verteiltem Parallelismus dreht sich die zugrunde liegende Logik weiterhin um dieselbe Abfolge: Daten hinein, Forward Pass, Loss berechnen, Backpropagation, Parameter aktualisieren, nächste Runde. Wer diese Schleife in einem frühen Stadium wirklich durchdringt, gerät später weit seltener in die Lage, lediglich Skripte zu kopieren, ohne Fehler oder instabiles Verhalten einordnen zu können.
Auch aus Industrie- und Engineering-Sicht ist der praktische Wert eines solchen Grundlagenkapitels nicht zu unterschätzen. Mit der schnellen Verbreitung generativer KI, quelloffener Modelle und zugänglicher Trainingsinfrastruktur experimentieren immer mehr Entwickler mit Fine-Tuning, Domänenanpassung und lokalem Training. Ein häufiges Problem in der Praxis besteht jedoch darin, dass viele zwar APIs bedienen können, aber kein belastbares Verständnis des eigentlichen Lernmechanismus besitzen. Sobald der Loss nicht sinkt, Gradienten explodieren, die Lernrate unpassend gewählt ist oder Updates instabil werden, fällt es schwer zu beurteilen, ob das Problem in den Daten, im Modell oder im Optimierer liegt. Genau hier zeigt sich der Wert der Trainingsschleife als Lehrgegenstand: Sie schafft einen diagnostischen Bezugsrahmen. Wer weiß, welche kritischen Zustände in einer Trainingsiteration auftreten, kann Fehlersymptome deutlich besser einordnen.
Auch Adam fungiert dabei als Brücke zwischen Theorie und Praxis. Im Vergleich zum elementaren stochastischen Gradientenabstieg entspricht Adam viel eher dem, was Entwickler in realen Projekten als Standardkonfiguration antreffen. Er führt früh an die Vorstellung heran, dass ein Optimierer Informationen aus der Gradientenhistorie nutzt und dass unterschiedliche Parameter effektiv mit unterschiedlichen Schrittweiten bewegt werden können. Ein Tutorial muss dafür nicht unbedingt die vollständige mathematische Herleitung liefern. Es genügt bereits zu zeigen, dass Adam bei der Aktualisierung der Parameter nicht mechanisch immer dieselbe Operation wiederholt. Allein das hilft dem Leser zu verstehen, warum modernes Training numerische Stabilität und Konvergenzeffizienz so stark gewichtet.
Der Text spiegelt außerdem einen allgemeinen Trend im Schreiben von KI-Tutorials wider: Wissen wird nicht mehr als statische Liste einzelner Begriffe vermittelt, sondern als Ende-zu-Ende-Prozess. Früher begannen viele Einführungen mit linearer Algebra, Ableitungen und Layer-Definitionen und arbeiteten sich dann schrittweise nach vorne. Für Menschen, die wirklich praktisch arbeiten wollen, kommt der eigentliche Durchbruch jedoch oft erst dann, wenn sie zum ersten Mal ein vollständiges Training zum Laufen bringen. Erst dann greifen die vorher getrennt erlernten Inhalte ineinander und werden zu einem ausführbaren Verständnis. Indem sich dieses Kapitel auf die Trainingsschleife konzentriert, trifft es genau diesen kritischen Punkt. Es versucht nicht, alle fortgeschrittenen Techniken in einem Schritt abzudecken, sondern beantwortet zunächst eine elementare Frage: Wie lernt ein neuronales Netz tatsächlich über wiederholte Iterationen hinweg?
Im größeren Lernverlauf betrachtet nimmt dieses Kapitel damit eine Scharnierfunktion ein. Rückblickend verbindet es sich mit den bereits gelegten Grundlagen zu Tokens, Modellstruktur und Forward-Berechnung. Vorausblickend bereitet es komplexere Trainingsstrategien, vielfältigere Optimierungsmethoden und realistischere Datenpipelines vor. Für den Leser bedeutet diese Platzierung, dass Lernen nicht mehr bloß das Merken einzelner Begriffe ist, sondern der Beginn einer systemischen Sichtweise. Wenn die Trainingsschleife als Motor des Lernens verstanden wird, kann man jede neue Technik mit derselben Frage untersuchen: Beeinflusst sie die Loss-Berechnung, die Gradientenweitergabe oder die Parameteraktualisierung? Allein diese Zerlegung macht komplexere Inhalte wesentlich besser verdaulich.
Zusammengefasst liegt der zentrale Beitrag dieses Kapitels über die Trainingsschleife und den Adam-Optimierer nicht darin, noch einen weiteren Algorithmusnamen einzuführen, sondern darin, dem Leser ein Gesamtverständnis des Trainingsprozesses zu vermitteln. Es verbindet Dokumentauswahl, Tokenisierung, tokenweisen Forward Pass, Loss-Akkumulation, Backpropagation, Adam-Update und Gradienten-Reset zu einer klaren Kette und nimmt dem Modelllernen damit einen großen Teil seines vermeintlichen Geheimnisses. Für Einsteiger bedeutet das oft das erste echte Verständnis dessen, was „Training“ praktisch heißt. Für Leser, die bereits etwas Framework-Code schreiben können, bedeutet es den Übergang von der bloßen Nutzung von Schnittstellen hin zu einem mechanistischen Verständnis des zugrunde liegenden Systems. In einer Zeit, in der KI-Werkzeuge schnell verbreitet werden und die Hürden für Experimente weiter sinken, ist genau solch ein Kapitel besonders wertvoll, weil nur ein Verständnis der Trainingsschleife Entwickler in die Lage versetzt, Modelle nicht nur zu verwenden, sondern ihren Lernprozess auch gezielt zu verändern und zu verbessern.