Tensorflow Tensorboard未正确显示标量
我是Tensorflow的新手,我已经为这个问题调试了好几天了,但是我仍然找不到任何解决方案 当我打印出损失和报酬时,它反映了实际的数字:Tensorflow Tensorboard未正确显示标量,tensorflow,tensorboard,Tensorflow,Tensorboard,我是Tensorflow的新手,我已经为这个问题调试了好几天了,但是我仍然找不到任何解决方案 当我打印出损失和报酬时,它反映了实际的数字: total step: 79800.00 reward: 6.00, loss: 0.0107212793 .... total step: 98600.00 reward: 5.00, loss: 0.0002098639 total step: 98700.00 reward: 6.00, loss: 0.0061239433 然而,当我在张力板上绘制
total step: 79800.00 reward: 6.00, loss: 0.0107212793
....
total step: 98600.00 reward: 5.00, loss: 0.0002098639
total step: 98700.00 reward: 6.00, loss: 0.0061239433
然而,当我在张力板上绘制它们时,有三个问题:
有一个Z形损耗。如何在同一时间步中有多个损失值?
损失趋于平缓,经过某些步骤后似乎是一个常数。
在Tensorboard上,平均奖励和情节奖励始终为零。
这是我的Tensorboard的屏幕截图:
截图:
为什么会出现这三个问题?如何解决
以下是我在每个培训步骤结束时调用的代码和函数:
def make_summary(self):
self.env.render()
if self.episode == 1:
self.writer = tf.summary.FileWriter("./train")
if self.step > self.start_learning and self.step % self.train_freq == 0:
if not self.added_scalars:
self.writer.add_graph(self.sess.graph)
self.episode_reward_ph = tf.placeholder(tf.float32,shape=None,name='episode_reward_ph')
self.average_reward_ph = tf.placeholder(tf.float32,shape=None,name='average_reward_ph')
tf.summary.scalar('episode_reward', self.episode_reward_ph)
tf.summary.scalar('average_reward', self.average_reward_ph)
tf.summary.scalar('loss', self.l)
self.summ = tf.summary.merge_all()
self.added_scalars = True
else:
with self.sess.as_default():
self.merged_summary = self.sess.run(self.summ, feed_dict = {self.episode_reward_ph: self.final_episode_reward,
self.average_reward_ph: self.average_reward})
self.writer.add_summary(self.merged_summary, self.step)
self.writer.flush()
如果将水平轴更改为“相对”或“张力板上的墙”,是否会显示相同的行为?Z形现在变成向另一侧滑动的斜坡,即第一个问题消失。但第二和第三个问题仍然存在。可能出现了什么问题?如果将水平轴更改为“相对”或“张力板上的墙”,是否会显示相同的行为?Z形现在变成向另一侧滑动的斜坡,即第一个问题消失。但第二和第三个问题仍然存在。可能出了什么问题?