python - tf.print 没有结果
问题描述
我想用来tf.print
显示张量值,但没有结果?
这是我的代码,是否有问题:
from __future__ import print_function
import tensorflow as tf
sess = tf.InteractiveSession()
a = tf.constant([1.0, 3.0])
tf.print(a)
解决方案
从 - 的文档中tf.Print
已弃用并建议使用tf.print
:
请注意, tf.print 返回一个直接打印输出的无输出运算符。在 defuns 或 Eager 模式之外,除非直接指定session.run
或用作其他运算符的控制依赖项,否则不会执行此运算符。
这只是图形模式下的一个问题。以下是如何确保tf.print
在图形模式下执行的示例:
sess = tf.Session()
with sess.as_default():
tensor = tf.range(10)
print_op = tf.print(tensor)
with tf.control_dependencies([print_op]):
out = tf.add(tensor, tensor)
sess.run(out)
因此,如果您启用了 Eager 模式,您的代码将按预期工作,如果您想继续使用您必须使用的静态图模式sess.run
推荐阅读
- javascript - 很难更新状态中的对象数组
- r - R中的求和向量?
- react-native - 反应原生 - 在滚动视图中按 snapToInterval 滚动
- javascript - three.js 程序没有显示任何内容,但我认为我的代码是正确的
- linux - RTOS 对云/边缘计算有效吗?
- java - 如何将 Stdlib 和其他导入到您的程序中?(蚀)
- scala - 如何确定运行 scala 程序的 jvm 参数?
- python - Tkinter:如何以预定的时间间隔运行检查文件是否已更改(在 mainloop() 之外)
- vue.js - 在 Vue 中,是否可以通过滚动到同一位置的文本区域路由回组件?
- python - 两个 datetime.time (HH:MM) 值之间的差异(以分钟为单位)作为浮点数