Ich führe Experimente mit dem EMNIST-Validierungssatz unter Verwendung von Netzwerken mit RMSProp, Adam und SGD durch. Ich erreiche eine Genauigkeit von 87% mit SGD (Lernrate von 0,1) und Dropout (0,1 Dropout Prob) sowie L2-Regularisierung (1e-05-Strafe). Wenn ich die gleiche exakte Konfiguration mit RMSProp und Adam sowie die anfängliche Lernrate von 0,001 teste, erreiche ich eine Genauigkeit von 85% und eine deutlich weniger glatte Trainingskurve. Ich weiß nicht, wie ich dieses Verhalten erklären soll. Was kann der Grund für die mangelnde Glätte in der Trainingskurve und die geringere Genauigkeit und höhere Fehlerraten sein?
11
Antworten:
Nach einigen Online-Recherchen und der Keras-Dokumentation wird empfohlen, den RMSProp-Optimierer für wiederkehrende neuronale Netze zu empfehlen. https://github.com/keras-team/keras/blob/master/keras/optimizers.py#L209
Der stochastische Gradientenabstieg scheint seine Lernrate und seinen Impuls zwischen den einzelnen Chargen zu nutzen, um die Gewichte des Modells basierend auf den Informationen der Verlustfunktion zu optimieren. In meinem Fall ist dies "kategoriale Kreuzentropie".
Ich empfehle http://ruder.io/optimizing-gradient-descent/index.html für zusätzliche Informationen zu Optimierungsalgorithmen.
quelle