什么是placeholder
直白的说就是一个固定了数据类型的容器。
为什么要用
在做训练的时候要,要分批地送数据,方便传入外部数据
定义
tf.placeholder(dtype,shape=None,name=None)
参数说明
- dtype:数据类型。常用的是tf.float32,tf.float64等数值类型
- shape:数据形状。默认是None,就是一维值,也可以是多维(比如[2,3], [None, 3]表示列是3,行不定)
- name:名称
使用实例
import tensorflow as tf
import numpy.random as random
#占位符中的shape不设时会按传入参数自行匹配,这里定义是4x5的矩阵
node1 = tf.placeholder(tf.float32) # , shape=[4, 5])
node2 = tf.placeholder(tf.float32) # , shape=[4, 5])
#定义具体的操作 op
op = tf.multiply(node1, node2)
#定义2个常量
const1 = tf.constant(random.rand(4, 5))
const2 = tf.constant(random.rand(4, 5))
#执行
with tf.Session() as sess:
print(sess.run(op,
{
node1: sess.run(const1),
node2: sess.run(const2)
}
)
)
网友评论