如何在C ++中重塑Tensor,如Caffe的Blob

时间:2016-12-09 02:22:56

标签: c++ tensorflow caffe

我想在C ++中使用动态形状的张量。例如,我想在tensorflow中添加一个新的op,但我不知道输出的形状在开头。如果我使用Caffe,我可以首先将输出blob重新整形为我将使用的最大尺寸,并最终重塑为实际尺寸。 如何用tensorflow的Tensor来做呢?。

1 个答案:

答案 0 :(得分:0)

如果您还不确定变量的形状,请将tf.Variable的一个或多个维度保留为None。例如:

x = tf.placeholder(tf.float32, shape=[None, 1,1])

Tensorflow还具有tf.reshape()功能,您可以像caffe一样使用它。例如:

x2 = tf.reshape(x, [-1, dim])           # -1 means "all"