当我想将一个张量叠加到一个tensorarray中时,它不会采用该张量的值。相反,它只是采取其形状。 我正在使用tf1.5,有什么帮助吗?非常感谢
这是我的代码:
emb = tf.Variable([[1,2,3,5],[4,5,6,7]],name = 'emb')
ta = tf.TensorArray(tf.int32, size= 2)
ta.unstack(emb)
with tf.Session() as sess:
sess.run(tf.initialize_all_variables())
print(sess.run(x_emb))
print(sess.run(ta.stack()))
这是输出:
[[1 2 3 5]
[4 5 6 7]]
[[0 0 0 0]
[0 0 0 0]]
答案 0 :(得分:0)
来自tensorflow关于unstack(https://www.tensorflow.org/api_docs/python/tf/TensorArray)的文档:
返回:一个新的TensorArray对象,其流程可确保发生重叠。将此对象全部用于后续操作。
所以该行应为ta = ta.unstack(emb)