ginobilinie / medSynthesis

medical image synthesis with GAN framework based on tensorflow (we also have a better version in pytorch: https://github.com/ginobilinie/medSynthesisV1)
MIT License
72 stars 24 forks source link

ValueError: Variable d_conv_dis_1_a/w/Adam/ does not exist #1

Closed riyazpanjwani closed 6 years ago

riyazpanjwani commented 6 years ago

System Information:

Problem Following is the traceback obtained on running python main.py

Traceback:

Traceback (most recent call last):
  File "main.py", line 51, in <module>
    tf.app.run()
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/platform/app.py", line 48, in run
    _sys.exit(main(_sys.argv[:1] + flags_passthrough))
  File "main.py", line 48, in main
    lr_step=FLAGS.lr_step,lam_lp=FLAGS.lam_lp, lam_gdl=FLAGS.lam_gdl, lam_adv=FLAGS.lam_adv, alpha=FLAGS.alpha)
  File "/home/aryan/Downloads/medSynthesis/g_model.py", line 58, in __init__
    self.build_model()
  File "/home/aryan/Downloads/medSynthesis/g_model.py", line 79, in build_model
    .minimize(self.d_loss, var_list=self.d_vars)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/optimizer.py", line 353, in minimize
    name=name)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/optimizer.py", line 474, in apply_gradients
    self._create_slots([_get_variable_for(v) for v in var_list])
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/adam.py", line 136, in _create_slots
    self._zeros_slot(v, "m", self._name)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/optimizer.py", line 796, in _zeros_slot
    named_slots[_var_key(var)] = slot_creator.create_zeros_slot(var, op_name)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/slot_creator.py", line 174, in create_zeros_slot
    colocate_with_primary=colocate_with_primary)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/slot_creator.py", line 148, in create_slot_with_initializer
    dtype)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/training/slot_creator.py", line 67, in _create_slot_var
    validate_shape=validate_shape)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/variable_scope.py", line 1203, in get_variable
    constraint=constraint)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/variable_scope.py", line 1092, in get_variable
    constraint=constraint)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/variable_scope.py", line 425, in get_variable
    constraint=constraint)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/variable_scope.py", line 394, in _true_getter
    use_resource=use_resource, constraint=constraint)
  File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/ops/variable_scope.py", line 760, in _get_single_variable
    "reuse=tf.AUTO_REUSE in VarScope?" % name)
ValueError: Variable d_conv_dis_1_a/w/Adam/ does not exist, or was not created with tf.get_variable(). Did you mean to set reuse=tf.AUTO_REUSE in VarScope?
riyazpanjwani commented 6 years ago

Solved the issue by adding with tf.variable_scope(tf.get_variable_scope(),reuse=False): Although this didn't solve the issue completely, then added the scope definition for generator and discriminator network.

Raising PR for the fixes !! https://stackoverflow.com/questions/43183850/tensorflow-valueerror-variable-does-not-exist-or-was-not-created-with-tf-get-v