tensorflow:在图

时间:2016-04-15 12:53:06

标签: tensorflow

我想在计算图中将标量张量(例如tf.constant([4]))转换为python标量(4),所以不使用tf.eval()

2 个答案:

答案 0 :(得分:1)

常量值硬连线到图表中,因此您可以通过检查图形定义来查看它。

IE

tf.reset_default_graph()
tf.constant(42)
print tf.get_default_graph().as_graph_def()

这会给你

node {
  name: "Const"
  op: "Const"
  attr {
    key: "dtype"
    value {
      type: DT_INT32
    }
  }
  attr {
    key: "value"
    value {
      tensor {
        dtype: DT_INT32
        tensor_shape {
        }
        int_val: 42
      }
    }
  }
}
versions {
  producer: 9
}

这意味着您可以将常量值输出为

tf.get_default_graph().as_graph_def().node[0].attr["value"].tensor.int_val[0]

答案 1 :(得分:0)

您也可以使用Session.run()方法。

In [1]: import tensorflow as tf

In [2]: sess = tf.InteractiveSession()

In [3]: x = tf.constant(4)

In [4]: sess.run(x)
Out[4]: 4