我想评估由tf.TensorArray创建的TensorArray操作的输出:
ta = tf.TensorArray(dtype=tf.float32, size=2)
with tf.Session():
ta_output=tf.get_default_graph().get_tensor_by_name("TensorArray:0")
print(ta_output.eval())
但是我收到以下错误:
内部错误:ndarray为1个字节,但TF_Tensor为134个字节
此错误是什么意思?
This page具有TensorArray
类的详细API文档。
[从TensorArray
对象读取之前,您需要使用write()
方法向其写入至少一个值。由于您在问题上应用了标签tensorflow2.0
,因此我将在TensorFlow 2.0 API中编写示例,该示例更简单并且不涉及Session对象:
import tensorflow as tf
ta = tf.TensorArray(dtype=tf.float32, size=2)
ta.write(tf.constant(0),
tf.constant([[1, 2], [3, 4]], dtype=tf.float32))
ta.write(tf.constant(1),
tf.constant([[-1, -2], [-3, -4]], dtype=tf.float32))
print(ta.stack())
让我知道这是否可以解决您的问题。