Gradientenabstiegsverfahren zur Suche nach lokalen Minima
Die Suche nach einem Satz von Parametern wird für FNNs oft mit einem Gradientenabstieg durchgeführt. Gesucht ist also mit
Wir haben als folgende Bezeichnungen gewählt:
| Begriff | Gleichung |
|---|---|
| Einzelkostenfunktion | |
| Äußeres Fehlermaß / Äußere Fehlerfunktion | |
| Zielfunktion / Gesamtkostenfunktion des Trainings | |
Hierbei wird die Funktion des FNNs als Funktion von Parametern bei jeweils fest gehaltenem Datenpunkt des Trainingsdatensatzes aufgefasst.
Die Funktion des FNNs hat also nur einen einzelnen Datenpunkt aber alle Parameter als Eingabe. Durch das äußere Fehlermaß werden alle Einzelkosten aufsummiert, so dass die Zielfunktion sowohl von allen Parametern als auch von allen Datenpunkten abhängt. Wir betrachten sie bei der Suche nach einem möglichst kleinen lokalen Minimum aber nur als Funktion der Parameter .
Im weiteren sollen Gradienten und das Gradientenabstiegsverfahren kurz skizziert werden. Anschließend soll es anhand von einem Datensatz, der aus zwei Datenpunkten besteht, auf ein einzelnes Neuron angewendet werden, um dessen Parameter bzgl. des Datensatzes zu optimieren.
Eine kurze Wiederholung zentraler mathematischer Aspekte kann z. B. im Anhang dieses Unterkapitels nachgelesen werden. Im Folgenden wird die Kenntnis vorausgesetzt, dass der Gradient eines skalaren Feldes im Punkt in die Richtung der stärksten Wertzunahme zeigt und daher seine gegenteilige Orientierung in die Richtung der stärksten Abnahme. Wie üblich schreiben wir für .
Die Idee des Gradientenabstiegsverfahrens zur Suche nach einem lokalen Minimum eines skalaren Feldes besteht darin, an einem Startpunkt zu beginnen und dann schrittweise ein Stück weit in die dem Gradienten entgegengesetzte Richtung zu gehen:
Dabei bezeichnet die Schrittweite oder Lernrate.
Untersuche das Gradientenverfahren für die Minimumsuche einiger Beispielfunktionen anhand folgender App:
Das Gradientenabstiegsverfahren kann für ein einzelnes Neuron manuell durchgeführt werden. Die zu minimierende Zielfunktion bei gegebenem Trainingsdatensatz ist dabei eine Funktion in Abhängigkeit von den Parametern:
Die Parameter bilden also die Variablen bzgl. derer der Gradient gebildet wird. In der folgenden App wird der Gradientenabstieg für zwei Trainingsdatenpunkte visualisiert. Das Neuron hat als Aktivierungsfunktion die Sigmoid-Funktion, es hat zwei Eingaben und als Input und eine Ausgabe als Ausgabe. Daher ist auch die Funktion des FNNs ein skalares Feld, bei dem jedem Punkt in der -:i-ma{code="x_2"}-Ebene ein Wert zugeordnet. Wie üblich kann dies zur binären Klassifikation verwendet werden. Da es keinen Bias gibt, ist dieser implizit gleich 0, und jede Trenngerade verläuft durch den Ursprung.
ür einen Datenpunkt ist die gewichtete Summe daher
Die Ausgabe des Neurons ergibt sich durch Anwenden der Sigmoid-Funktion :
Für zwei Trainingsdatenpunkte sei die Fehlerfunktion
Da und von den Gewichten und abhängen, ist auch eine Funktion der beiden Gewichte.
Der Gradient von bezüglich der Gewichte ist
Zunächst wird die Ableitung nach berechnet. Mit der Kettenregel gilt
Für einen einzelnen Datenpunkt gilt
Da
gilt
Also folgt
Damit erhält man
Analog ergibt sich für
Für die Sigmoid-Funktion
gilt
Da ist, kann man also auch schreiben:
Damit lautet der Gradient
Vollständig in Abhängigkeit von den Gewichten geschrieben ergibt sich
Ebenso gilt
Der Gradientenabstieg aktualisiert die Gewichte anschließend in Richtung des negativen Gradienten:
Die Lernrate legt fest, wie groß der Schritt entlang der Abstiegsrichtung ist. Ein Backtracking-Verfahren ist hier nicht notwendig, wenn mit einer fest gewählten Lernrate gearbeitet wird.
In der folgenden App kann das Gradientenverfahren für den Datensatz, der aus zwei Antipodenpunkten auf der Einheitssphäre besteht. Die Trenngerade verläuft daher im optimierten Fall senkrecht zur Verbindungsstrecke dieser beiden Datenpunkte. Zudem ist die Aktivierungsfunktion Sigmoid um so schärfer begrenzt, je mehr sie gestaucht ist. Dies geschieht mit zunehmender Größe von und :
Das Gradientenverfahren wird daher dem unendlich weit entfernen Infimum entgegenstreben und streng genommen nicht konvergieren.
