好久没用tensorflow, 现在感觉各种不适应,关于tensor值的打印的几种情况,整理一下,备自己忘的时候再翻翻。
Case1: tensor是一个常量 constant
>>> import tensorflow as tf
>>> a = tf.constant([1,2], name='a')
>>> sess = tf.InteractiveSession()
>>> a.eval()
array([1, 2], dtype=int32)
#如果a是一个Variable的话,则会报错,提示没有初始化这个变量
Case2:tensor是一个变量
>>> b = tf.Variable([[1,2],[3,4]], name='b')
>>> c = tf.Variable([[1,1],[2,2]], name='c')
>>> d = tf.add(b, c, name='d')
>>> sess = tf.Session() # 或者 tf.InteractiveSession()
>>> tf.global_variables_initializer().run() #run()是sess的方法
>>> d.eval()
array([[2, 3],
[5, 6]], dtype=int32)
Case3: 最近出的新版本
注意的是 b的定义是tfe的,而不是tf的,tfe是独立与tf的一个新的框架。
import tensorflow.contrib.eager as tfe
tfe.enable_eager_execution()
b = tfe.Variable([[1,2],[3,4]], name='b')
print b