ValueError: Variable rnn/basic_rnn_cell/kernel already exists, disallowed. Did you mean to set reuse=True or reuse=tf.AUTO_REUSE in VarScope?

30,094

Does this happen when you run the model for the first time (upon opening a new python console)?

If not, you need to clear you computational graph. You can do that by putting this line at the beginning of your script.

tf.reset_default_graph()
Share:
30,094
Admin
Author by

Admin

Updated on November 15, 2020

Comments

  • Admin
    Admin over 3 years

    Any ideas how can I solve problem shown below? With the information that I found on the web it is associated with problem of reusing tensorflow scope however nothing works.

    ValueError: Variable rnn/basic_rnn_cell/kernel already exists, disallowed. Did you mean to set reuse=True or reuse=tf.AUTO_REUSE in VarScope? Originally defined at:
    
      File "/code/backend/management/commands/RNN.py", line 370, in predict
        states_series, current_state = tf.nn.dynamic_rnn(cell=cell, inputs=batchX_placeholder, dtype=tf.float32)
      File "/code/backend/management/commands/RNN.py", line 499, in Command
        predict("string")
      File "/code/backend/management/commands/RNN.py", line 12, in <module>
        class Command(BaseCommand):
    

    I tried for instance something like this

    with tf.variable_scope('scope'):
     states_series, current_state = tf.nn.dynamic_rnn(cell=cell, inputs=batchX_placeholder, dtype=tf.float32)
    

    and this

    with tf.variable_scope('scope', reuse = True ):
     states_series, current_state = tf.nn.dynamic_rnn(cell=cell, inputs=batchX_placeholder, dtype=tf.float32)
    

    and this

    with tf.variable_scope('scope', reuse = tf.AUTO_REUSE ):
     states_series, current_state = tf.nn.dynamic_rnn(cell=cell, inputs=batchX_placeholder, dtype=tf.float32)
    

    Any ideas?