TensorFlow常量、变量和数据类型

TensorFlow 用张量这种数据结构来表示所有的数据。一个张量有一个静态类型和动态类型的维数,张量可以在图中的节点之间流通。

 

(1)TensorFlow中创建常量的方法:

hello=tf.constant('hello,TensorFlow!',dtype=tf.string)

a=tf.constant(1)

 

生成初始值为随机数:

 

生成0:

扫描二维码关注公众号,回复: 4915142 查看本文章

(2)TensorFlow中变量的创建方法:

b=tf.Variable(1.0,dtype=tf.float32)

 

 

 

对于TensorFlow中的浮点型数据,需要知道TensorFlow中常用的有两种: float32和float64,这两种在作为常量使用时没什么问题,当处于变量的创建和修改时会相互影响。编写之前定义好数据的类型。

 

除了一般框架中常见的数据常量和数据变量之外,TensorFlow 还存在一种特殊的数据类型——占位符(placeholder)。因为TensorFlow 特殊的数据计算和处理形式,图进行计算时,可以从外界传入数值。而TensorFlow 并不能直接对传入的数据进行处理,因此使用 placeholder 保留一个数据的位置,之后可以在TensorFlow会话运行的时候进行赋值。

import tensorflow as tf

 

input1=tf.placeholder(tf.int32)

input2=tf.placeholder(tf.int32)

 

output=tf.add(input1,input2)

sess=tf.Session()

 

print(sess.run(output,feed_dict={input1:[1],input2:[2]}))

 

同理占位符在平时只是作为一个空的张量在TensorFlow 的图中构成一个边,只有当图完全启动后,才有真实的数据被填入和计算。上边程序对占位符传递数据时,使用的是Feening_dict函数。Feeding是TensorFlow的一种机制,它允许你在运行时使用不同的值替换一个或多个tensor的值。 Feed_dict 将tensor 对象映射为 Numpy的数组,同时在执行step时,这些数组就是tensor 的值。

 

 

猜你喜欢

转载自blog.csdn.net/mafang9601/article/details/83903099
今日推荐