tf.summary使用过程中报错: tags and values not the same shape

近来使用tensorflow中的tf.summary模块进行调试,用来主程序运行时打印想要看的张量的形状shape, 以及值value.

虽然使用的tensorflow版本1.15.5, 即使使用tf.enable_eager_execution()也无法看到张量的实际各维的长度。

  

涉及到tf.summary部分的代码

edges_0_shape = tf.Print(tf.shape(edges_0), [tf.shape(edges_0)])#注释:edges_0是一个二维tensor

tf.summary.scalar('shape_edges_0', edges_0_shape)

报错信息:

tensorflow.python.framework.errors_impl.InvalidArgumentError: tags and values not the same shape: [] != [2] 

原因解释:edges_0是一个tensor,是一个二维tensor,所以tf.shape(edges_0)返回值是一个[100 50]这样的一维tensor,所以应当使用tf.summary.tensor_summary(),而不是tf.summary.scalar()

修改后: 

edges_0_shape = tf.Print(tf.shape(edges_0), [tf.shape(edges_0)])
tf.summary.tensor_summary('shape_edges_0', edges_0_shape)

主程序运行过程中,打印出来如下:

学习是熵减的过程,终身学习应当是每个人去做到的。
原文地址:https://www.cnblogs.com/alesvel/p/15734828.html