tensorflow常量变量定义
import tensorflow as tf
data1=tf.constant(2.5)#定义常量 浮点型
data2=tf.Variable(10,name='var')#定义变量
print(data1)
print(data2)
此时的运行结果为:
可以看出它并没有把数据内容打印出来,而是打印出数据的描述信息,第一行描述data1,Tensor是一个张量,张量可暂时理解为一个数据,Const_1 :常量,shape:维度,dtype:数据类型。可对应理解第二行。
我们看到data1为浮点型数据,那么如何定义定点型数据呢?
import tensorflow as tf
data1=tf.constant(2,dtype=tf.int32)#定义常量 定点型
知道了如何定义常量变量后,如何去打印数据内容呢?
这里我们需要知道tensorflow中所有的操作都必须使用Session会话中执行,所以需要再定义Session
import tensorflow as tf
data1=tf.constant(2.5)
data2=tf.Variable(10,name='var')
print(data1)
print(data2)
sess=tf.Session()##定义Session
print(sess.run(data1))
运行结果如下(这里不是对运行结果的截图,只是将结果拷贝了过来):
Tensor("Const_2:0", shape=(), dtype=float32)
<tf.Variable 'var_2:0' shape=() dtype=int32_ref>
2.5
然而使用同样的方法print(sess.run(data2))打印data2时会出现错误:
FailedPreconditionError: Attempting to use uninitialized value var_3
[[Node: _retval_var_3_0_0 = _Retval[T=DT_INT32, index=0, _device="/job:localhost/replica:0/task:0/device:CPU:0"](var_3)]]
这时我们就要知道在tensorflow中所有的变量都需要使用Session会话进行初始化。
data2=tf.Variable(10,name='var')
init=tf.global_variables_initializer()#初始化
sess.run(init)
print(sess.run(data2))
如此便可打印变量的数据内容。
网友评论