17 Trainingsmethoden:
Backpropagation und Gradientenabstieg
17.1 Einführung
Das Training eines neuronalen Netzes besteht darin, die
Gewichte und Bias-Werte so anzupassen, dass das Netz
möglichst genaue Vorhersagen trifft. Dies geschieht durch
Optimierungsalgorithmen, die den Fehler
minimieren.
Zwei fundamentale Methoden hierfür sind: 1.
Backpropagation (Rückpropagierung des Fehlers) –
Berechnung der Gradienten für jedes Gewicht. 2.
Gradientenabstieg – Anpassung der Gewichte in Richtung
des minimalen Fehlers.
17.2 Backpropagation
(Fehlerrückführung)
Backpropagation ist ein Algorithmus zur
effizienten Berechnung der Gradienten in tiefen
neuronalen Netzen.
17.2.1 Grundprinzip
Vorwärtsdurchlauf
Eingabedaten werden durch das Netz propagiert.
Am Ende wird der Fehler (Loss) berechnet.
Rückwärtsdurchlauf (Backpropagation)
Fehler wird von der Ausgabeschicht zur
Eingabeschicht zurückpropagiert.
Mit der Kettenregel der Ableitung wird berechnet,
wie stark jedes Gewicht zum Fehler beiträgt.
Gewichtsanpassung
Die berechneten Gradienten werden genutzt, um die Gewichte zu
aktualisieren (über Gradientenabstieg).
17.2.2 Mathematische Grundlage
Der Gesamtfehler E für ein neuronales Netz wird
durch eine Fehlerfunktion (Loss Function) wie z. B. die
mittlere quadratische Abweichung (MSE) berechnet:
E = (1/n) Σ (yᵢ - ŷᵢ)²
Dabei ist: - yᵢ der wahre Wert - ŷᵢ
die Netzwerkausgabe
Die Anpassung eines Gewichts w erfolgt durch die
Ableitung der Fehlerfunktion nach
w:
∂E / ∂w
Dieser Gradient gibt an, in welche Richtung das Gewicht
w geändert werden muss, um den Fehler zu
minimieren.
17.3 Gradientenabstieg
Der Gradientenabstieg ist ein Optimierungsverfahren,
das die Gewichte schrittweise in die Richtung des steilsten
Abfalls der Fehlerfunktion aktualisiert.
17.3.1 Formel für die
Gewichtsaktualisierung
w := w - η ⋅ (∂E / ∂w)
Dabei ist: - w das Gewicht - η die
Lernrate (Schrittweite) - ∂E / ∂w der
Gradient
gradient.svg
17.4 Varianten des
Gradientenabstiegs
17.4.1 Batch-Gradientenabstieg
Verwendet alle Trainingsdaten zur Berechnung des
Gradienten.
Stabil, aber langsam bei großen
Datenmengen.
17.4.2 Stochastischer
Gradientenabstieg (SGD)
Aktualisiert die Gewichte nach jeder einzelnen
Trainingsprobe.
Schnell, aber hohe Schwankungen im
Fehlerverlauf.
17.4.3
Mini-Batch-Gradientenabstieg
Teilt die Trainingsdaten in kleine Batches
auf.
Kompromiss zwischen Batch und SGD → schneller und
stabiler.
17.5 Erweiterungen des
Gradientenabstiegs
Momentum: Verhindert starke Schwankungen und hilft,
Plateaus zu überwinden.
Adam-Optimizer: Kombiniert Momentum mit adaptiver
Lernratenanpassung.
RMSprop: Optimiert SGD durch adaptive
Lernraten für verschiedene Parameter.