Vorlesung 9: Backpropagation — Wie neuronale Netze lernen

Kursthema: Künstliche Intelligenz. Block: Wie Lernen funktioniert. Schwerpunkt: Fehlererkennung, Gewichtsanpassung, schrittweises Lernen, Bedeutung von Backpropagation.

Teil 1 (20 Minuten): Grundverständnis mit Analogien und Beispielen

Dauer: 20 Minuten

Wenn ein neuronales Netz „lernt“, bedeutet das allgemein: Es verändert seine internen Parameter — die Gewichte und Biases — so, dass seine Ausgaben bei konkreten Aufgaben besser mit den gewünschten Antworten übereinstimmen. Entscheidend dafür ist, dass das Netz zunächst durch einen Vorwärtsdurchlauf eine Ausgabe produziert und diese Ausgabe dann mit dem gewünschten Ziel verglichen wird; die Abweichung wird mit einer sogenannten Verlustfunktion gemessen. Dieser Unterschied ist der vom Menschen sichtbare Fehler. Die zentrale Frage, die Backpropagation beantwortet, lautet: Wie verteilt man diesen Fehler auf die vielen einzelnen Parameter des Netzes, sodass man sie gezielt anpassen kann?

Eine einfache Analogie ist die Justierung einer Gruppe von Stellschrauben, die zusammen eine Maschine steuern. Man beobachtet das Endergebnis; wenn es falsch ist, muss man herausfinden, welche Schrauben wie stark zu verändern sind, um das Ergebnis zu verbessern. Backpropagation liefert eine systematische Methode, um für jede Schraube (jedes Gewicht) abzuschätzen, wie stark eine kleine Änderung dieses Gewichts das Gesamtergebnis beeinflusst. Technisch geschieht das durch Ableitungen: man berechnet, wie sich die Verlustfunktion ändert, wenn ein einzelnes Gewicht infinitesimal verändert wird. Diese Ableitungen heißen Gradienten.

Konkretes Beispiel: Ein einfaches Netz mit einer versteckten Schicht nimmt Eingabewerte auf und berechnet mittels gewichteter Summen und Aktivierungsfunktionen die Ausgabe. Nach dem Vergleich mit dem Ziel ergibt sich ein Fehler. Backpropagation berechnet in einem Rückwärtsdurchlauf, wie dieser Fehler schrittweise auf frühere Schichten zurückfließt, wobei in jeder Schicht die lokale Empfindlichkeit (die Ableitung der Aktivierungsfunktion) mit dem bereits zurückgeflossenen Fehler multipliziert wird. Das ist eine direkte Anwendung der Kettenregel der Differentialrechnung. Die ursprüngliche Idee, Fehler schichtweise zurückzurechnen, ist ein Kernbeitrag der frühen Arbeiten zur Fehlerrückführung in neuronalen Netzen und wurde in den 1980er-Jahren etabliert (vgl. Rumelhart, Hinton & Williams).

Nachdem die Gradienten berechnet sind, passt man die Gewichte an: Üblich ist das Schema „negiere den Gradienten multipliziert mit einer Lernrate“ — formal: neues Gewicht = altes Gewicht − (Lernrate × Gradienten). In der Praxis wird das auf kleine Schritte verteilt, oft auf Mini-Batches von Beispielen, um Rechenaufwand und Rauschwirkung auszugleichen. Die kleineren Schritte erklären auch, warum Lernen schrittweise erfolgt: Große Schritte würden häufig „überschießen“ und die Leistung verschlechtern; kleine Schritte ermöglichen eine kontrollierte Annäherung an bessere Lösungen.

Die beschriebene Grundidee und die algorithmische Umsetzung sind ausführlich und lehrreich in frei zugänglichen Lehrbüchern und Kursunterlagen dargestellt (siehe insbesondere Goodfellow, Bengio & Courville sowie die Lehrmaterialien von CS231n und Michael A. Nielsen).

Teil 2 (20 Minuten): Tiefer einsteigen — Fachbegriffe und mathematische Grundlagen

Dauer: 20 Minuten

Um Backpropagation formal zu fassen, führen wir einige Begriffe ein und erläutern ihre Rolle im Algorithmus. Die Verlustfunktion (Loss) L(z, y) misst die Diskrepanz zwischen Modellvorhersage z und gewünschtem Ziel y. Die Modellvorhersage z ist das Ergebnis des Vorwärtsdurchlaufs, bei dem aus Eingaben x durch aufeinanderfolgende lineare Operationen (gewichtete Summen) und nichtlineare Aktivierungen die Ausgabe berechnet wird. Ein Gewicht w ist ein Parameter, an dem wir Anpassungen vornehmen möchten.

Ziel von Backpropagation ist es, die partiellen Derivate ∂L/∂w für alle Parameter w effizient zu berechnen. Direkte Berechnung wäre bei vielen Parametern zu teuer; Backpropagation nutzt die Kettenregel, um die Ableitungen rekursiv von der Ausgabe zurück zur Eingabe zu berechnen. Formal bedeutet das: Wenn eine Schicht die Aktivierung a = f(u) mit u = W·x + b berechnet, dann folgt für die Ableitung der Verlustfunktion nach W die Produktregel ∂L/∂W = (∂L/∂a) · (∂a/∂u) · (∂u/∂W). Die Größen ∂L/∂a werden aus der nächsten, bereits betrachteten Schicht übernommen; dadurch entsteht eine effiziente Rückwärtsrekursion.

Der numerische Optimierungsschritt, mit dem Gewichte tatsächlich angepasst werden, ist oft eine Form des Gradientenverfahrens. Die einfachste Variante ist der Gradient Descent mit Lernrate η: w ← w − η ∂L/∂w. In der Praxis hat sich die stochastische Variante (Stochastic Gradient Descent, SGD) durchgesetzt, bei der die Gradienten aus Teilmengen der Trainingsdaten (Mini-Batches) geschätzt werden. Erweiterte Optimierer wie Momentum, RMSprop oder Adam bauen auf denselben Gradienteninformationen auf, gewichten oder normalisieren diese jedoch adaptiv; zu diesen Erweiterungen liefern Lehrbücher und Kursunterlagen detaillierte Vergleiche (vgl. Goodfellow et al.; CS231n).

Wichtige Begriffe, die hier gebräuchlich sind, umfassen: Aktivierungsfunktion (z. B. Sigmoid, tanh, ReLU), Gradienten, Lernrate (learning rate), Mini-Batch, Epoche (durchlauf durch das komplette Trainingsset), Overfitting und Regularisierung. Die Wahl der Aktivierungsfunktion beeinflusst direkt die Ableitungen; z. B. können S-förmige Aktivierungen (Sigmoid, tanh) Ableitungen nahe Null erzeugen, was zur Abschwächung des Fehlers beim Rückwärtsrechnen führt. Dieses Phänomen wird als vanishing gradient bezeichnet; sein Gegenteil, exploding gradient, beschreibt divergierende Gradienten. Beide Probleme sind gut dokumentiert und bilden einen wichtigen praktischen Aspekt beim Training tiefer Netze (vgl. Goodfellow et al.; LeCun et al.).

Warum funktionieren schrittweise Updates aus mathematischer Sicht? Gradienten geben die Richtung des steilsten Anstiegs der Verlustfunktion an; die negative Richtung ist die Richtung örtlicher Verbesserung. Da die Verlustlandschaft eines tiefen Netzes nicht konvex ist, liefert jeder einzelne Gradientenvektor nur eine lokale Information — er ist eine lineare Näherung an die Veränderung der Verlustfunktion in der Umgebung des aktuellen Parameters. Kleine Schritte basieren auf der Annahme, dass diese lokale lineare Näherung für kleine Änderungen gültig bleibt; größere Schritte können diese Näherung verletzen und dadurch zu schlechteren Ergebnissen führen.

Praktische Hinweise zur Stabilisierung und Beschleunigung des Trainings enthalten unter anderem normalisierende Verfahren (z. B. Batch Normalization), Aktivierungsfunktionen mit günstiger Ableitungsstruktur (z. B. ReLU) und architektonische Elemente wie Residual-Blocks, die helfen, Gradienten über viele Schichten zu erhalten (vgl. He et al., 2015). Diese Maßnahmen reduzieren in der Praxis die Auswirkungen des vanishing/exploding gradient-Problems, erklären aber nicht vollständig, warum tiefe Netze oft gut generalisieren — dies bleibt ein aktives Forschungsfeld (vgl. Goodfellow et al.).

Teil 3 (10 Minuten): Anwendungen, Grenzen und Denkaufgaben

Dauer: 10 Minuten

Backpropagation ist die Grundlage für das Training moderner neuraler Modelle in einer Vielzahl von Anwendungen: Bild- und Sprachverarbeitung, maschinelle Übersetzung, medizinische Bildanalyse, Empfehlungssysteme und viele andere Felder. In allen Fällen ermöglicht Backpropagation die End-to-End-Anpassung der Modellparameter an konkrete Aufgaben, oft mit großen Datenmengen und hoher Rechenleistung.

Gleichzeitig hat Backpropagation Grenzen. Erstens hängt der Erfolg stark von der Datenqualität und -menge ab; schlechte oder verzerrte Trainingsdaten führen zu entsprechenden Fehlern im Modell. Zweitens gibt es algorithmische Probleme wie vanishing oder exploding gradients, die das Trainieren sehr tiefer Netze erschweren können; hierfür wurden verschiedene technische Gegenmaßnahmen entwickelt (ReLU, Batch Normalization, Residual-Verbindungen). Drittens besteht kein vollständiges theoretisches Verständnis, warum und unter welchen Bedingungen tiefe Netze so gut generalisieren; die theoretische Analyse von Optimierungslandschaften und Generalisierung ist Gegenstand laufender Forschung (siehe Goodfellow et al. für eine Zusammenfassung offener Fragen).

Abschließend einige kleine Denkaufgaben, die das Verständnis vertiefen sollen: Erstens, betrachten Sie ein sehr kleines Netzwerk mit nur einem Gewicht w und einer quadratischen Verlustfunktion. Welche Richtung ergibt sich für die Anpassung von w, wenn der Gradient positiv ist? Zweitens, denken Sie an eine mehrschichtige Kette von Funktionen; wie erklärt die Kettenregel, dass eine Ableitung nahe Null in einer frühen Aktivierungsfunktion das Training der davor liegenden Gewichte behindert? Drittens, überlegen Sie, welche Konsequenzen eine zu große oder zu kleine Lernrate für den Trainingsprozess hat, und welche praktischen Methoden man zur Auswahl der Lernrate einsetzen kann.

Diese Fragen lassen sich mit den oben beschriebenen Prinzipien angehen; ausführliche Einführungen und Übungsbeispiele sind in den angegebenen Lehrmaterialien und Büchern enthalten.