Tesorflow占位符取决于其他占位符

时间:2017-05-13 10:17:17

标签: tensorflow placeholder

我有一个占位符,其形状取决于另一个占位符。 如何在占位符初始化期间连接它们?

nUsers = tf.placeholder(tf.float32, [None, 1])
p = tf.placeholder(tf.float32, [None, 10 , ???] )

......在???我需要将nUsers中存在的数字给出的大小用于该批次的项目。

1 个答案:

答案 0 :(得分:0)

您可以使用x.get_shape()tf.shape(x)之间的check the difference)轻松获得张量的形状。所以你需要这样的东西:

import tensorflow as tf
import numpy as np
nUsers = tf.placeholder(tf.float32, [None, 1])
p = tf.placeholder(tf.float32, [None, 10 , nUsers.get_shape()[0]])

with tf.Session() as sess:
    print sess.run(p, {nUsers: np.ones((2, 1)), p: np.ones((3, 10, 2))})