Ich arbeite derzeit an der Implementierung von Stochastic Gradient Descent SGD
für neuronale Netze unter Verwendung von Backpropagation, und obwohl ich den Zweck verstehe, habe ich einige Fragen zur Auswahl von Werten für die Lernrate.
- Bezieht sich die Lernrate auf die Form des Fehlergradienten, da sie die Abstiegsrate vorgibt?
- Wenn ja, wie verwenden Sie diese Informationen, um Ihre Entscheidung über einen Wert mitzuteilen?
- Wenn dies nicht der Fall ist, welche Werte soll ich auswählen und wie soll ich sie auswählen?
- Es scheint, als ob Sie kleine Werte wünschen würden, um ein Überschießen zu vermeiden, aber wie wählen Sie einen aus, bei dem Sie nicht in lokalen Minima stecken bleiben oder zu lange brauchen, um abzusteigen?
- Ist es sinnvoll, eine konstante Lernrate zu haben, oder sollte ich eine Metrik verwenden, um den Wert zu ändern, wenn ich mich einem Minimum im Gradienten annähere?
Kurz gesagt: Wie wähle ich die Lernrate für SGD?