我很困惑如何让我的 TensorBoard 图形可视化来捕捉我将计算值提供给我的一些占位符的事实。
我已经定义了占位符
with tf.name_scope('params'):
keep_prob_later = tf.placeholder(tf.float32, name='keep_prob_later')
keep_prob_early = tf.placeholder(tf.float32, name='keep_prob_early')
keep_prob_input = tf.placeholder(tf.float32, name='keep_prob_input')
以及用于计算其值的相应张量
with tf.name_scope('param_vals'):
with tf.name_scope('keep_prob_later_val'):
keep_prob_later_val = tf.sub(1.0, tf.train.exponential_decay(1 - FLAGS.keep_prob_later, global_step,
FLAGS.decay_steps,
FLAGS.dropout_decay_rate, staircase=False))
with tf.name_scope('keep_prob_early_val'):
keep_prob_early_val = tf.sub(1.0, tf.train.exponential_decay(1 - FLAGS.keep_prob_early, global_step,
FLAGS.decay_steps,
FLAGS.dropout_decay_rate, staircase=False))
with tf.name_scope('keep_prob_input_val'):
keep_prob_input_val = tf.sub(1.0, tf.train.exponential_decay(1 - FLAGS.keep_prob_input, global_step,
FLAGS.decay_steps,
FLAGS.dropout_decay_rate, staircase=False))
然后我在训练我的模型时喂它
sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys,
keep_prob_later: sess.run(keep_prob_later_val),
keep_prob_early: sess.run(keep_prob_early_val),
keep_prob_input: sess.run(keep_prob_input_val)})
但我的 TensorBoard 图形可视化并没有显示这些“挂钩”。
我看到占位符正确连接到我的图表的其余部分
我也看到了所有相应的计算值
但后者不连接到前者。
这是预期的行为吗?有没有办法在我的图表的 TensorBoard 可视化中捕获计算值用于填充相应占位符的事实?
如果无法将计算值连接到图形,为什么要显示它们?以及为什么其他计算值正确显示。例如,我计算的动量值,它的定义就像上面的 feed dropout 值一样
with tf.name_scope('param_vals'):
with tf.name_scope('momentum_val'):
momentum_val = tf.sub(1.0, tf.train.exponential_decay(1 - FLAGS.initial_momentum, global_step,
FLAGS.decay_steps, FLAGS.momentum_decay_rate,
staircase=False))
确实显示连接到他们影响的图表的所有部分。