如何在不使用eval或sess.run()的情况下将张量转换为Numpy ndarray?
我需要将一个张量传递到feed dictionary中,而我已经有一个正在运行的会话。
如何在不使用eval或sess.run()的情况下将张量转换为Numpy ndarray?
我需要将一个张量传递到feed dictionary中,而我已经有一个正在运行的会话。
你说“已经有一个会话正在运行”这一事实暗示了你对sess.run()的实际作用存在误解。
如果你已经初始化了一个tf.Session(),那么你应该能够使用它来通过sess.run()获取任何张量。如果你需要获取一个变量或常量张量,这非常简单。
value = sess.run(tensor_to_retrieve)
value = sess.run(tensor, feed_dict={input_placeholder: input_value})
没有任何限制阻止您调用sess.run()多次。
@jasekp的回答帮了我很多。在表示(对抗性)图像的张量特定情况下,我面临了张量->数组转换的问题。
我认为我的问题/答案(here)可能是这个具体情况的有用示例,或者可以帮助新手更好地理解@jasekp的答案。
我的示例还涵盖了matplotlib
图像可视化部分,但这是OT。
.numpy()会将张量转换为数组。