无法在tensorflow变量中生成动态维度

时间:2018-03-04 11:47:46

标签: python variables tensorflow initialization tensor

我有以下代码:

a = tf.placeholder(dtype = tf.float64, shape = (10, None))
b = tf.Variable(tf.random_normal((20, 10), dtype = tf.float64), dtype = tf.float64)
c = tf.matmul(b, a)
d = tf.shape(a)[1]
e = tf.Variable(tf.random_normal((d, d), dtype = tf.float64), dtype = tf.float64)

我想在执行期间设置e的维度。但是我收到了一个错误。这不可能吗?

1 个答案:

答案 0 :(得分:0)

不,这是不可能的。 Tensorflow在变量定义中不允许动态形状,因为它不能在图形定义期间分配任意大小的内存。因此,e的维度必须为静态