2016-09-21 73 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

相关问题