如何在不使用eval或sess.run()的情况下将张量转换为Numpy ndarray?
我需要将一个张量传递到一个feed字典中,我已经有一个会话正在运行。
答案 0 :(得分:5)
事实上,你说"已经有一个会话正在运行"意味着对sess.run()实际上做了什么的误解。
如果你启动了tf.Session(),你应该可以使用它来使用sess.run()来检索任何张量。如果你需要检索变量或常数张量,这非常简单。
value = sess.run(tensor_to_retrieve)
如果张量是占位符张量操作的结果,则需要使用feed_dict传递它们。
value = sess.run(tensor, feed_dict={input_placeholder: input_value})
没有什么能阻止你多次调用sess.run()。
答案 1 :(得分:0)
@jasekp的回答对我很有帮助。在表示(对抗性)图像的张量的特定情况下,我已经遇到了 tensor-> ndarray 转换。
我认为我的问题/答案(here)可能是针对特定案例的有用示例,或者可以帮助新手更好地理解@jasekp答案。
我的示例还涵盖了matplotlib
图像可视化部分,但这是OT。
答案 2 :(得分:-1)
.numpy()会将张量转换为数组。