【发布时间】:2019-02-13 17:44:52
【问题描述】:
我只是想使用命令 'tf.shape()' 获得张量的静态形状。我注意到我们可以使用'x.get_shape'来获得静态形状,但是,在我的代码中,对于训练,形状是静态的,对于评估,张量的形状是动态的'无'-所以我不确定如果我也可以通过使用 'tf.shape()' 来获得静态形状。
'deconv4.outputs' 的形状是 [16,256,256,3],但是,当我使用 'tf.shape(deconv4.outputs)[0]' 时,结果是:'Tensor("FRUC_DVF_g/strided_slice_2:0 ", shape=(), dtype=int32, device=/device:GPU:0)',而不是 '16'。
你能帮我解决这个问题吗?
提前致谢!
我得到了名为“deconv4.outputs”的模型的输出,其形状为 [16,256,256,3]。我想使用 'tf.shape()' 命令获取 'deconv4.outputs' 的第一维。
flow = tf.slice(deconv4.outputs, [0,0,0,0], [tf.shape(deconv4.outputs)[0], 256, 256, 2])
预期结果是 'tf.shape(deconv4.outputs)[0]' 返回 '16'。
【问题讨论】:
标签: python tensorflow