我正在研究一个Tensorflow实现,它包括以下代码段。我不太明白tf.summary.scalar试图实现什么。我的理解是"queue/%s/fraction_of_%d_full" % (q.name + "_" + phase, capacity)应该是一个名字,但是这个名字是什么样子的?math_ops.cast(q.size(), tf.float32) * (1. / capacity)应该是张量,但是这个张量代表什么呢?
capacity = 50
q = tf.FIFOQueue(capacity=50, dtypes=dtypes, shapes=shapes)
tf.summary.scalar("queue/%s/fraction_of_%d_full" %
(q.name + "_" + phase, capacity),
math_ops.cast(q.size(), tf.float32) * (1. / capacity))发布于 2017-10-30 21:01:30
这个tf.summary.scalar调用将输出队列大小(相对容量)到tensorboard,因为它在会话期间发生了变化。
标量将通过与此模式匹配的名称显示:'queue/%s/fraction_of_%d_full',例如'queue/fifo_queue_training/fraction_of_100_full',其中fifo_queue是当前队列,其容量为100。
它的值将等于队列中耗尽的空间,即queue.size() / queue.capacity。这一行只是将其转换为32位浮点数的一种奇特方式:
math_ops.cast(q.size(), tf.float32) * (1. / capacity)https://stackoverflow.com/questions/47022674
复制相似问题