Wenn Sie einen Kunden Keras Optimizer
erstellen, ist die Arbeitspferd-Funktion Optimizer.get_updates()
. Ich war in der Lage, einen Fixed-Step-Optimierer zu erstellen, aber ich bin mir nicht sicher, wie Dinge zu tun sind, wie z. B. Durchschnittswerte, bei denen ich Werte aus früheren Aufrufen der Funktion verwenden muss.Erstellen Sie Ihren eigenen Keras Optimizer
Zum Beispiel consider RMSprop
. Wird der Akkumulator nicht bei jedem Aufruf der Funktion zurückgesetzt?
accumulators = [K.zeros(K.int_shape(p), dtype=K.dtype(p)) for p in params]
self.weights = accumulators
Wie wird RMSProp
den laufenden Mittelwert zu tun, wenn der Akkumulator zurückgesetzt jeden Update Anruf am Anfang wird?
Es war für mich auch verwirrend, als ich den Code sah, aber diese Funktion wird nicht bei jedem Update aufgerufen, es wird einmal aufgerufen, um das Diagramm zu erstellen, siehe https://github.com/fchollet/keras/issues/5125 –
Auch die gleiche Frage als das Problem https://stackoverflow.com/questions/41787873/how-adagrad-wroks-in-keras-what-does-self-weights-mean-in-keras-optimizer?rq=1 –