Tensorflow: Optimiererstatus speichern (adagrad / momentum / etc.)

Erstellt am 14. Nov. 2016  ·  1Kommentar  ·  Quelle: tensorflow/tensorflow

Hallo Leute,

Letzte Woche habe ich diese Frage zu Stackoverflow gestellt: https://stackoverflow.com/questions/40547198/saving-the-state-of-the-adagrad-algorithm-in-tensorflow .
Mein Problem ist, dass ich den Zustand des Optimierers (in meinem Fall die Adagrad-Akkumulatoren) speichern möchte, damit ich mein Lernen stoppen und fortfahren kann, wann immer ich möchte.

Sofern ich mich nicht irre, kann der Status des Optimierers nicht gespeichert werden (Sie können einen Optimierer nicht an einen tf.train.Saver übergeben, oder?). Eine schnelle (hackige?) Lösung für mich könnte darin bestehen, Optimizer.get_slot_names() aufzurufen und die Op jedes Slots zu speichern.
Das nächste Problem wäre, diesen Op wieder in die Slots zu legen, da ich glaube, dass es im Moment keinen set_slot(name,op) gibt.

Also meine Fragen sind:

  • Liege ich richtig, dass dies derzeit nicht möglich ist?
  • Wollen wir eine set_slot(name,op)-Funktion in der Optimizer-Klasse haben? (Ich helfe gerne dabei)
  • Wollen wir einen Optimierer an ein Saver-Objekt übergeben?

>Alle Kommentare

Vielen Dank, dass Sie die Frage zu Stackoverflow gestellt haben, was ein besserer Ort dafür ist. Der Optimiererstatus wird standardmäßig gespeichert und wird nur nicht gespeichert, weil Sie dem Sparer ausdrücklich mitteilen, was er speichern soll.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen