From 25ecb64821056c4421d0dd87364794f6ff868e0e Mon Sep 17 00:00:00 2001 From: pzhokhov Date: Mon, 26 Nov 2018 16:30:37 -0800 Subject: [PATCH] fixed issue with wrong output layer variable names in ddpg (#733) --- baselines/ddpg/ddpg_learner.py | 2 +- baselines/ddpg/models.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/baselines/ddpg/ddpg_learner.py b/baselines/ddpg/ddpg_learner.py index a065c98..3fc8a77 100755 --- a/baselines/ddpg/ddpg_learner.py +++ b/baselines/ddpg/ddpg_learner.py @@ -185,7 +185,7 @@ class DDPG(object): normalized_critic_target_tf = tf.clip_by_value(normalize(self.critic_target, self.ret_rms), self.return_range[0], self.return_range[1]) self.critic_loss = tf.reduce_mean(tf.square(self.normalized_critic_tf - normalized_critic_target_tf)) if self.critic_l2_reg > 0.: - critic_reg_vars = [var for var in self.critic.trainable_vars if 'kernel' in var.name and 'output' not in var.name] + critic_reg_vars = [var for var in self.critic.trainable_vars if var.name.endswith('/w:0') and 'output' not in var.name] for var in critic_reg_vars: logger.info(' regularizing: {}'.format(var.name)) logger.info(' applying l2 regularization with {}'.format(self.critic_l2_reg)) diff --git a/baselines/ddpg/models.py b/baselines/ddpg/models.py index 329c168..bfde840 100755 --- a/baselines/ddpg/models.py +++ b/baselines/ddpg/models.py @@ -42,7 +42,7 @@ class Critic(Model): with tf.variable_scope(self.name, reuse=tf.AUTO_REUSE): x = tf.concat([obs, action], axis=-1) # this assumes observation and action can be concatenated x = self.network_builder(x) - x = tf.layers.dense(x, 1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3)) + x = tf.layers.dense(x, 1, kernel_initializer=tf.random_uniform_initializer(minval=-3e-3, maxval=3e-3), name='output') return x @property