Wie ein neuronales Netz seine Fehler nach Hause schickt — und alles unterwegs ein bisschen besser macht.
Grundlagen 12 min Experte 1. Juni 2026
Du kennst Neuronen, Aktivierungsfunktionen, Schichten, Loss-Funktionen und Gradient Descent. Du weißt, dass das Netz Gradienten braucht, um sich zu verbessern. Aber wie berechnet es den Gradienten für ein Gewicht, das 20 Schichten tief vergraben liegt? Die Antwort verbindet alles, was du gelernt hast, zu einem eleganten Mechanismus — und er basiert vollständig auf der Kettenregel aus Pfad I.C.
Backpropagation ist keine neue Erfindung. Es ist die systematische Anwendung der Kettenregel auf den Berechnungsgraphen eines neuronalen Netzes — eine Buchhaltungsmethode, die Gradient Descent erst für tiefe Netze praktikabel macht.
1986 Publikationen
Backpropagation-Algorithmus
Die Geburt des modernen maschinellen Lernens durch einen eleganten Trainingsalgorithmus. Im Oktober 1986 veröffentlichten David Rumelhart, Geoffrey Hinton und Ronald Williams in Nature das Paper 'Learning representations by back-propagating errors'. Dieser Algorithmus veränderte das Training neuronaler Netzwerke erheblich, indem er eine effiziente Methode zur Gewichtsanpassung in mehrschichtigen Netzen bereitstellte. Das Verfahren passt wiederholt die Verbindungsgewichte an, um die Differenz zwischen tatsächlicher und gewünschter Ausgabe zu minimieren. Die entscheidende Innovation lag in der Fähigkeit, versteckte Schichten zu trainieren, die wichtige Merkmale der Aufgabe automatisch erkennen. Die mathematischen Grundlagen waren bereits zuvor hergeleitet worden – etwa von Paul Werbos (1974) und Seppo Linnainmaa (1970) –, doch erst dieses Paper machte Backpropagation breit bekannt und demonstrierte überzeugend ihre Wirkung. Backpropagation wurde zum Arbeitspferd des maschinellen Lernens und ermöglicht heute alle modernen Deep Learning-Anwendungen.
Der vollständige Trainingsschritt
1
Forward Pass Eingabe fließt vorwärts durch alle Schichten, am Ende steht eine Vorhersage und der Loss
2
Backward Pass Das Fehlersignal fließt rückwärts, die Kettenregel liefert den Gradienten für jedes Gewicht
3
Update Gradient Descent passt jedes Gewicht an: w = w − lr · gradient
Backpropagation
AnalogieDefinition
Stell dir einen Staffellauf in umgekehrter Richtung vor. Der Forward Pass ist wie Läufer, die den Staffelstab vom Start zum Ziel tragen. Der Backward Pass ist wie ein Trainer, der rückwärts die Strecke abgeht und jedem Läufer genau sagt, wie er seinen Schritt anpassen soll — jeder Läufer braucht nur die Rückmeldung des nächsten Läufers und seine eigene lokale Leistung. Das Update ist die tatsächliche Anpassung jedes Läufers.
Beispiel
Beim Staffellauf passt jeder Läufer seinen Schritt physisch an. In der Mathematik verändert der Backward Pass die Gewichte nicht direkt — er berechnet nur die Gradienten. Die eigentliche Anpassung erfolgt erst im separaten Update-Schritt durch Gradient Descent.
Analogie:
Stell dir einen Staffellauf in umgekehrter Richtung vor. Der Forward Pass ist wie Läufer, die den Staffelstab vom Start zum Ziel tragen. Der Backward Pass ist wie ein Trainer, der rückwärts die Strecke abgeht und jedem Läufer genau sagt, wie er seinen Schritt anpassen soll — jeder Läufer braucht nur die Rückmeldung des nächsten Läufers und seine eigene lokale Leistung. Das Update ist die tatsächliche Anpassung jedes Läufers.
Beispiel
Beim Staffellauf passt jeder Läufer seinen Schritt physisch an. In der Mathematik verändert der Backward Pass die Gewichte nicht direkt — er berechnet nur die Gradienten. Die eigentliche Anpassung erfolgt erst im separaten Update-Schritt durch Gradient Descent.
Definition:
Backpropagation ist die systematische, effiziente Anwendung der Kettenregel auf einen Berechnungsgraphen. Sie propagiert das Fehlersignal schichtweise rückwärts durch das Netz und berechnet jeden Gradienten genau einmal, indem Zwischenergebnisse wiederverwendet werden. Sie ist kein eigenständiger Lernalgorithmus — sie ist die Buchhaltungsmethode, die Gradient Descent für tiefe Netze praktikabel macht.
Ein Trainingsschritt besteht aus drei untrennbaren Phasen: Forward Pass (Vorhersage berechnen), Backward Pass (Gradienten berechnen) und Update (Gewichte anpassen). Backpropagation ist der Backward Pass — nicht mehr und nicht weniger.
Durchgerechnet: Ein Mini-Netz mit 2 Gewichten
Eingabe x = 2, Gewichte w₁ = 0.5 und w₂ = 3.0, Zielwert y_true = 5. Das Netz berechnet: h = x · w₁, dann y = h · w₂. Als Loss nehmen wir L = (y − y_true)².
Forward Pass
h = x · w₁ = 2 · 0.5 = 1 | y = h · w₂ = 1 · 3.0 = 3 | L = (y − yₜ)² = (3 − 5)² = 4
Das Netz hat gelernt: Beide Gewichte wurden so angepasst, dass die Vorhersage beim nächsten Durchlauf näher am Zielwert liegt. Der Gradient für w₁ ist sechsmal größer als für w₂ — weil die Kettenregel die Faktoren w₂ und x hinzumultipliziert.
Missverständnis: Backpropagation ist ein eigenständiger Lernalgorithmus
Nein! Backpropagation berechnet ausschließlich Gradienten — durch systematische Anwendung der Kettenregel auf den Berechnungsgraphen. Der eigentliche Lernalgorithmus ist Gradient Descent (oder eine Variante wie Adam), der diese Gradienten verwendet, um die Gewichte zu aktualisieren. Backpropagation ohne Gradient Descent lernt nichts; Gradient Descent ohne Backpropagation könnte die Gradienten nicht effizient berechnen.
Der Forward Pass berechnet die Vorhersage, der Backward Pass die Gradienten, das Update die neuen Gewichte. Dieses Dreierpaket wiederholt sich Tausende Male pro Trainingsepoche — und genau so lernt ein neuronales Netz.
Interaktiv: Forward & Backward Pass
Du hast den Trainingsschritt am Mini-Netz durchgerechnet. Jetzt kannst du ihn Schritt für Schritt durchspielen: Beobachte, wie die Werte vorwärts durch das Netz fließen, wie die Gradienten rückwärts berechnet werden, und wie sich die Gewichte am Ende verändern.
Schritt 1 / 8Startzustand
Das Mini-Netz hat Eingabe x, zwei Gewichte w₁ und w₂, und einen Zielwert. Noch wurden keine Berechnungen durchgeführt.
x=2, w₁=0.5, w₂=3, target=5
Die Kettenregel in Aktion — Schicht für Schicht rückwärts
Von 2 Gewichten auf N Schichten: Das Prinzip bleibt identisch, die Kette wird nur länger. Für ein Gewicht in der ersten Schicht eines tiefen Netzes muss die Kettenregel durch ALLE Schichten hindurch angewendet werden.
Die Effizienz der Backpropagation entsteht durch Wiederverwendung: Wenn das Fehlersignal für Schicht 2 berechnet ist, wird es gespeichert. Schicht 1 multipliziert einfach mit ihrer lokalen Ableitung — keine Neuberechnung vom Loss aus. Jede partielle Ableitung wird genau einmal berechnet und gecacht.
Sigmoid
Ableitung maximal ≈0.25. Bei 10 Schichten: 0.25¹⁰ ≈ 0.00000095. Der Gradient verschwindet — die vorderen Schichten lernen nichts mehr.
ReLU
Ableitung ist 0 oder 1. Für positive Eingaben fließt der Gradient ungedämpft durch — kein exponentieller Verfall.
Totes Neuron: Wenn der Gradient für immer verschwindet
Konkretes Beispiel: x = 1, w₁ = −2. Im Forward Pass: z₁ = 1 · (−2) = −2. ReLU(−2) = 0. Die lokale Ableitung der ReLU an der Stelle −2 ist exakt 0. Egal wie groß der Fehler am Ende des Netzes ist — sobald das Fehlersignal durch diesen ReLU-Knoten fließt, wird es mit 0 multipliziert. Der Gradient für w₁ wird 0, das Gewicht wird nie aktualisiert. Das Neuron ist permanent tot.
Missverständnis: Vanishing Gradients bedeuten, das Netz hat einen Bug
Nein! Vanishing Gradients sind eine mathematische Unvermeidlichkeit, wenn viele kleine Zahlen multipliziert werden. Bei 10 Sigmoid-Schichten wird der Gradient auf unter ein Millionstel reduziert — das ist kein Code-Fehler, sondern Mathematik. Die Lösung ist architektonisch (ReLU statt Sigmoid, Residual Connections, Gradient Clipping), nicht Debugging.
Deep Dive: Moderne Lösungen für den Gradientenfluss
ReLU-Familie: ReLU leitet Gradienten von 1 für positive Werte ungefiltert weiter. Leaky ReLU und ELU vermeiden zudem tote Neuronen, indem sie kleine Gradienten auch für negative Eingaben zulassen. Residual Connections: ResNet-Skip-Connections addieren die Eingabe einer Schicht direkt zur Ausgabe und schaffen so Abkürzungen für den Gradientenfluss — selbst durch Hunderte Schichten. Batch Normalization: Normalisiert die Aktivierungen jeder Schicht, stabilisiert die Verteilung der Gradienten und beschleunigt das Training. Gradient Clipping: Kappt Gradienten, die einen Schwellenwert überschreiten, und verhindert so numerische Instabilität bei explodierenden Gradienten.
Interaktiv: Die Kettenregel klickbar
Die Kettenregel zerlegt den Gradienten in lokale Ableitungen. Klicke auf die einzelnen Terme, um zu sehen, was jeder Faktor in der Kette bedeutet — und wie sie zusammen den Gradienten für w₁ ergeben.
Kettenregel für w₁
∂L∂w₁=∂L∂ŷ·∂ŷ∂h·∂h∂w₁
∂L/∂w₁
Der Gesamtgradient: Wie stark ändert sich der Loss, wenn w₁ sich ändert? Das ist das Produkt aller lokalen Ableitungen entlang des Pfades.
Genug Theorie — leg selbst Hand an. Verschiebe die Gewichte, schick den Fehler Schritt für Schritt rückwärts durch das Netz und schau zu, wie Gradient Descent den Fehler kleiner macht. Dieses Netz hat eine ReLU-Aktivierung: treib sie unter null, und du siehst ein totes Neuron in Aktion.
Backprop-Werkbank wird geladen …
Autograd — Warum du es nie von Hand machen musst
In der Praxis schreibst du Backpropagation nie manuell. Moderne Frameworks wie PyTorch und TensorFlow enthalten Autograd — ein System zur automatischen Differenzierung, das den gesamten Backward Pass für dich erledigt.
PyTorch: Ein vollständiger Trainingsschritt
for epoch in range(100):
vorhersage = netz(X_train)
loss = criterion(vorhersage, y_train)
optimizer.zero_grad() # Alte Gradienten löschen
loss.backward() # Backpropagation in EINER Zeile
optimizer.step() # Gradient Descent Update
Wie funktioniert das? Während du den Forward Pass programmierst, baut das Framework im Hintergrund einen dynamischen Berechnungsgraphen auf. Jede mathematische Operation wird aufgezeichnet. Beim Aufruf von .backward() traversiert das Framework diesen Graphen automatisch rückwärts und wendet die Kettenregel an jedem Knoten an. Das funktioniert für jede differenzierbare Berechnung — nicht nur für neuronale Netze.
Doch Autograd bedeutet nicht, dass du die Mathematik ignorieren darfst. Drei konkrete Szenarien, in denen manuelles Verständnis unverzichtbar ist: (1) Debugging: Wenn dein Loss stagniert, musst du Vanishing Gradients diagnostizieren können. (2) Architektur-Design: Die Wahl der Aktivierungsfunktion und Skip Connections hängt vom Verständnis des Gradientenflusses ab. (3) Custom Layers: Eigene Autograd-Funktionen erfordern korrekte Ableitungen.
Nein! Autograd ist der Taschenrechner, aber du musst Arithmetik verstehen, um zu erkennen, wenn der Taschenrechner ein falsches Ergebnis liefert. Wer Backpropagation nicht versteht, programmiert im Blindflug — er merkt nicht, warum sein Modell nicht lernt.
Deep Dive: Autograd unter der Haube
Dynamische vs. statische Graphen: PyTorch baut den Berechnungsgraphen bei jedem Forward Pass neu auf (dynamisch). Das erlaubt Python-Kontrollfluss (if/else, Schleifen) direkt im Modell. Altes TensorFlow (v1) baute den Graphen einmal vor der Ausführung (statisch). Tape-basierte Aufzeichnung: Autograd "zeichnet" Operationen auf ein Band auf. .backward() spult das Band rückwärts ab. Das .grad-Attribut: Nach .backward() enthält tensor.grad den berechneten Gradienten. requires_grad=True aktiviert die Aufzeichnung für einen Tensor. optimizer.zero_grad(): Gradienten akkumulieren sich standardmäßig — ohne explizites Löschen addieren sich die Gradienten über Iterationen auf.
Kernaussagen
Ein Trainingsschritt besteht immer aus Forward Pass → Backward Pass → Update. Backpropagation ist der Backward Pass.
Backpropagation = Kettenregel auf dem Berechnungsgraphen. Jeder Knoten berechnet eine lokale Ableitung; das Produkt aller lokalen Ableitungen entlang eines Pfades ergibt den Gradienten für ein Gewicht.
Effizienz durch Wiederverwendung: Jede partielle Ableitung wird genau einmal berechnet und gecacht.
Tiefe Netze riskieren Vanishing oder Exploding Gradients. Moderne Lösungen: ReLU, Residual Connections, Gradient Clipping.
Autograd automatisiert die Gradientenberechnung, aber das Verständnis der Mathematik bleibt essenziell für Debugging und Architektur-Design.
Lernziele
Warum wird Backpropagation als effiziente Anwendung der Kettenregel auf einen Graphen beschrieben und nicht als völlig neuer mathematischer Ansatz?
Wie führt die wiederholte Multiplikation von lokalen Ableitungen in sehr tiefen Netzwerken zum Problem der Vanishing Gradients — und wie hilft ReLU dagegen?
Warum ist das mathematische Verständnis von Backpropagation auch dann unverzichtbar, wenn Frameworks wie PyTorch die Gradientenberechnung mittels .backward() komplett automatisieren?
Quiz: Backpropagation
Frage 1 / 6
Noch offen
Was sind die drei Phasen eines vollständigen Trainingsschritts in der korrekten Reihenfolge?
1. Was sind die drei Phasen eines vollständigen Trainingsschritts in der korrekten Reihenfolge?
☐ A) Update → Forward Pass → Backward Pass
☐ B) Forward Pass → Backward Pass → Update
☐ C) Backward Pass → Forward Pass → Update
☐ D) Forward Pass → Update → Backward Pass
2. Im Mini-Netz-Beispiel (x=2, w₁=0.5, w₂=3.0, y_true=5) ist der Gradient für w₁ gleich −24. Warum ist dieser Gradient viel größer als der Gradient für w₂ (−4)?
☐ A) w₁ ist kleiner initialisiert und braucht daher einen größeren Schub
☐ B) Die Kettenregel multipliziert zusätzliche Faktoren (w₂=3 und x=2) bei der Rückpropagierung zu w₁, was den Gradienten verstärkt
☐ C) Die Loss-Funktion bestraft w₁ stärker als w₂
☐ D) w₁ liegt in einer früheren Schicht, und frühere Schichten haben immer größere Gradienten
3. Ein neuronales Netz mit 10 Schichten verwendet die Sigmoid-Aktivierungsfunktion (maximale Ableitung ≈0.25). Wie groß ist das Gradientensignal, das Schicht 1 von Schicht 10 erreicht, relativ zum Signal an Schicht 10?
☐ A) Etwa 0.25 (um einen Faktor reduziert)
☐ B) Etwa 0.25¹⁰ ≈ 0.00000095 (nahezu null)
☐ C) Etwa 10 × 0.25 = 2.5 (multipliziert mit der Tiefe)
☐ D) Es bleibt gleich, weil Backpropagation die Gradientenstärke erhält
4. Ein Kollege behauptet: "Da PyTorch alle Gradienten automatisch mit loss.backward() berechnet, ist das Verständnis der Kettenregel für Deep-Learning-Praktiker nicht mehr nötig." Welches der folgenden Szenarien widerlegt diese Behauptung direkt?
☐ A) Wenn die Loss-Funktion als Python-Funktion definiert werden muss
☐ B) Wenn die Learning Rate angepasst werden muss
☐ C) Wenn der Loss aufhört zu sinken und der Praktiker diagnostizieren muss, ob Vanishing Gradients die Ursache sind
☐ D) Wenn die Trainingsdaten in Batches aufgeteilt werden müssen
5. Ein ReLU-Neuron erhält im Forward Pass die Eingabe z = −3. Im Backward Pass kommt ein Fehlersignal von δ = 5.0 von der nächsten Schicht. Welchen Gradienten gibt dieses Neuron an seine Eingabegewichte weiter?
☐ A) 5.0 (ReLU leitet das Signal durch)
☐ B) −3 × 5.0 = −15.0 (Eingabe mal Fehler)
☐ C) 0 (ReLU-Ableitung bei negativer Eingabe ist 0)
☐ D) max(−3, 0) × 5.0 = 0 (wie im Forward Pass)
6. Ein Kollege möchte ein Sigmoid-basiertes Netzwerk, das bereits unter langsamem Training leidet, auf über hundert Schichten erweitern. Bewerte, ob dies die Situation verbessern oder verschlechtern würde, und wähle die beste architektonische Alternative für ein so tiefes Netzwerk.
☐ A) Es verbessert die Situation, weil mehr Schichten dem Netzwerk mehr Kapazität geben
☐ B) Es verschlechtert die Situation. ReLU statt Sigmoid hilft bei moderater Tiefe, reicht aber allein nicht für hunderte Schichten aus.
☐ C) Es verschlechtert die Situation, weil mehr Sigmoid-Schichten das Vanishing-Gradient-Problem verstärken. Besser: Residual Connections (Skip Connections) einbauen, die direkte Pfade für den Gradientenfluss schaffen.
☐ D) Es hat keinen Effekt, weil Batch Normalization das Problem bereits löst
Auflösung: 1) B · 2) B · 3) B · 4) C · 5) C · 6) C