首页 > 解决方案 > Tensorflow - Tensorboard 事件累加器从 TensorEvent 获取张量

问题描述

我正在使用 Tensorflow 和 Tensorboard 1.14 版。我想使用tf.summary.tensor_summary()从训练期间保存的数据开始执行一些离线分析

我无法恢复使用此处描述的方法保存的数据,使用 tf.train.summary_iterator 可以恢复标量数据,但不能恢复我使用 tensor_summary 方法保存的数据。

虽然使用EventAccumulator对象,我能够恢复我保存的数据,但它作为具有以下属性的 TensorEvent 对象返回:

  1. wall_time
  2. 张量原型
  3. 张量内容

问题是我想将此数据转换为 numpy 数组,TensorEvent 对象肯定具有所需的所有信息(用于类型和形状的 tensor_proto,用于值的 tensor_content),但不是张量没有 .value 或 .numpy () 方法。那么我是否将一个 TensorEvent 对象转换为一个 numpy 数组?或者等效地放入一个张量对象然后放入一个numpy数组?

标签: numpytensorflowtensorboard

解决方案


您可以使用tf.make_ndarray将 aTensorProto转换为 NumPy 数组:

tensor_np = tf.make_ndarray(tensor_event.tensor_proto)

推荐阅读