Bei Netzen mit Hidden-Units steht man vor dem Problem,
dass man keinen direkten Fehler für Neuronen der Hidden-Schicht
bestimmen kann. Dieses Problem entsteht, weil man nur für die Output-Schicht, nicht aber für die Hidden-Schicht den
gewünschten Output kennt und hieraus (zusammen mit dem tatsächlichen Output)
einen Fehlerterm ermitteln kann.
Lösung: Gewichtsmodifikation durch Rückwärtsausbreitung der Fehlerterme
Um dennoch eine Modifikation der Gewichte über die entstehenden
Fehlerterme vornehmen zu können wird in der Trainingsphase
jede Gewichtsveränderung in drei Schritte unterteilt:
Forward-Pass: Zunächst werden - wie in der Trainings- und der
Testphase üblich - den Input-Neuronen Reize
präsentiert und sodann der Output des neuronalen Netzes berechnet.
Fehlerbestimmung: In einem zweiten Schritt erfolgt
die Fehlerbestimmung für die Output-Units, indem die gewünschten Output-Werte mit den im forward-pass tatsächlich ermittelten
Werten verglichen werden. Wenn die
Fehler eine vorgegebene Güteschwelle überschreiten,
folgt der dritte Schritt. Sind die Fehler klein genug
und überschreiten die Güteschwelle nicht, kann
die Trainingsphase abgebrochen werden.
Backward-Pass: Der dritte Schritt ist der innovative
Kern des Backpropagation Verfahrens. Die Fehlerterme
breiten sich nun in entgegengesetzter Richtung bis zur
Input-Schicht aus. Mit Hilfe dieser Fehlerterme werden nun
nach und nach (d.h. zunächst zwischen Output und letzter Hidden-Schicht, dann zwischen letzter und vorletzter Hidden-Schicht
usw.) die Gewichte des Netzes modifiziert so dass die Fehlerterme kleiner werden.