在VarScope中设置reuse=True或reuse=tf.AUTO_reuse意味着什么



大家好,我正在尝试这个

loss = tf.reduce_mean(tf.square(outputs - y)) # MSE
optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate)
train = optimizer.minimize(loss)

但是我收到一个错误

Variable rnn/output_projection_wrapper/basic_lstm_cell/kernel/Adam/ already exists, disallowed. Did you mean to set reuse=True or reuse=tf.AUTO_REUSE in VarScope? 

请建议解决方案

重用意味着在不同的对象之间共享相同的变量。

如果要共享一个变量,则必须在变量的varscope中显式指定reuse=True,或将varscope设置为reuse=tf.AUTO_REUSE

您可以在代码的开头使用tf.compat.v1.reset_default_graph,它清除默认图形并重置全局默认图形。

最新更新