pquochuy / idsegan

47 stars 14 forks source link

Attibute error: No variable found for apply_gradient #2

Open AnilMandliya opened 4 years ago

AnilMandliya commented 4 years ago

code snippet:

def build_model(self, config): all_d_grads = [] all_g_grads = []

d_opt = tf.train.GradientDescentOptimizer(config.d_learning_rate)

    # g_opt = tf.train.GradientDescentOptimizer(config.g_learning_rate)
    # d_opt = tf.train.RMSPropOptimizer(config.d_learning_rate)
    # g_opt = tf.train.RMSPropOptimizer(config.g_learning_rate)
    d_opt = tf.train.AdamOptimizer(
        config.d_learning_rate, beta1=config.beta_1)
    g_opt = tf.train.AdamOptimizer(
        config.g_learning_rate, beta1=config.beta_1)

    with tf.variable_scope(tf.get_variable_scope()) as scope:
        for idx, device in enumerate(self.devices):
            with tf.device("/%s" % device):
                with tf.name_scope("device_%s" % idx):
                    with variables_on_gpu0():
                        self.build_model_single_gpu(idx)
                        d_grads = d_opt.compute_gradients(
                            self.d_losses[-1], var_list=list(self.d_vars))
                        g_grads = g_opt.compute_gradients(
                            self.g_losses[-1], var_list=list(self.g_vars))
                        all_d_grads.append(d_grads)
                        all_g_grads.append(g_grads)
                        tf.get_variable_scope().reuse_variables()
    avg_d_grads = average_gradients(all_d_grads)
    avg_g_grads = average_gradients(all_g_grads)
    self.d_opt = d_opt.apply_gradients(avg_d_grads)
    self.g_opt = g_opt.apply_gradients(avg_g_grads)

Traceback (most recent call last): File "main.py", line 155, in tf.app.run() File "/home/anil/anaconda3/envs/improvedgan/lib/python3.7/site-packages/tensorflow/python/platform/app.py", line 40, in run _run(main=main, argv=argv, flags_parser=_parse_flags_tolerate_undef) File "/home/anil/anaconda3/envs/improvedgan/lib/python3.7/site-packages/absl/app.py", line 299, in run _run_main(main, args) File "/home/anil/anaconda3/envs/improvedgan/lib/python3.7/site-packages/absl/app.py", line 250, in _run_main sys.exit(main(argv)) File "main.py", line 101, in main se_model = SEGAN(sess, FLAGS, udevices) File "/home/anil/ML_Audio/idsegan/dsegan/model.py", line 124, in init self.build_model(args) File "/home/anil/ML_Audio/idsegan/dsegan/model.py", line 154, in build_model self.d_opt = d_opt.apply_gradients(avg_d_grads) File "/home/anil/anaconda3/envs/improvedgan/lib/python3.7/site-packages/tensorflow/python/training/optimizer.py", line 574, in apply_gradients raise ValueError("No variables provided.") ValueError: No variables provided.

pquochuy commented 4 years ago

@AnilMandliya: Sorry for my late response. May I asked which command (script) raised this error? And which tensorflow version are you using?