在tensorflow中创建3D占位符

时间:2017-11-10 00:31:48

标签: tensorflow placeholder

使用for循环和形状创建3D占位符有何不同。

batch = tf.placeholder(tf.int32, shape=(num_relations, None, 3))

VS

batch_placeholders = [tf.placeholder(tf.int32, shape=(None, 3), name='batch_'+str(i)) for i in range(num_relations)]

1 个答案:

答案 0 :(得分:0)

batch = tf.placeholder(tf.int32, shape=(num_relations, None, 3))

返回具有给定形状的Tensor,其中None是一个变量,表示稍后定义此尺寸的大小。

batch_placeholders = [tf.placeholder(tf.int32, shape=(None, 3), name='batch_'+str(i)) for i in range(num_relations)]

这将返回一个具有相同给定形状的张量列表(可变大小的第一个维度和大小为3的第二个维度,但它们的名称属性根据i变量而不同。

如果您希望形状参数中的尺寸大小也由i变量定义,则它应该类似于以下代码段。取决于你想做什么。

batch_placeholders = [tf.placeholder(tf.int32, shape=(i, None, 3), name='batch_'+str(i)) for i in range(num_relations)]

请点击此处:https://www.tensorflow.org/api_docs/python/tf/placeholder