2016-09-21 72 views
4

我從保存的模型加載,我希望能夠重置tensorflow優化器,如亞當優化器。理想的情況是這樣的:重置tensorflow優化器

sess.run([tf.initialize_variables(Adamopt)]) 

sess.run([Adamopt.reset]) 

我試圖尋找一個答案,但還沒有找到任何辦法做到這一點。下面是我發現的不解決這個問題: https://github.com/tensorflow/tensorflow/issues/634

In TensorFlow is there any way to just initialize uninitialised variables?

Tensorflow: Using Adam optimizer

我基本上只是想辦法重置在亞當優化的「老虎」的變量。

感謝

回答

1

,我發現最簡單的方法是給優化自己的變量範圍,然後運行

optimizer_scope = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES, 
           "scope/prefix/for/optimizer") 
sess.run(tf.initialize_variables(optimizer_scope)) 

想法來自freeze weights

+0

不出現在TensorFlow 1.0與亞當工作。 – sunside

+0

我在tf 0.10中測試過,我會用tf 1.0重新運行測試。錯誤是什麼? – Steven

+0

應該指定 - 它沒有列出Adam的任何可訓練變量,範圍似乎是空的。 – sunside

相關問題