我知道如何在训练后使用TensorBoard来可视化TensorFlow图。现在的问题是,能否只可视化图的前向部分,即不定义训练操作符?
我问这个的原因是我遇到了以下错误:
未为任何变量提供梯度,请检查您的图表,查找不支持梯度的操作,位于变量[ ... 此处列出模型变量 ... ]和损失Tensor("Mean:0", dtype=float32)之间。
我想检查图表以找出梯度张量流(双关语)中断的位置。
回答:
是的,您可以可视化任何图表。尝试这个简单的脚本:
import tensorflow as tfa = tf.add(1, 2, name="Add_these_numbers")b = tf.multiply(a, 3)c = tf.add(4, 5, name="And_These_ones")d = tf.multiply(c, 6, name="Multiply_these_numbers")e = tf.multiply(4, 5, name="B_add")f = tf.div(c, 6, name="B_mul")g = tf.add(b, d)h = tf.multiply(g, f)with tf.Session() as sess: writer = tf.summary.FileWriter("output", sess.graph) print(sess.run(h)) writer.close()
然后运行…
tensorboard --logdir=output
…您将看到:
因此,您可以简单地创建一个会话,只需将图写入FileWriter
,而不进行其他操作。