Tensorflow:如何使用Tile复制Tensor对象的行?

时间:2018-03-01 07:13:59

标签: python tensorflow

我是Tensorflow的新手。我有一个名为“lebels”形状的张量(128,),我希望使用tf.tile方法将其更改为(128,10)。

我试过了,

tf.tile(labels, [10, 1])

然而这给了我错误

  

“形状必须是等级1,但输入形状为'Tile'(op:'Tile')的等级为2:[128],[2]”

我尝试在线搜索,但没有发现任何相关内容。这看起来很容易,但我花了几个小时试图让它工作没有成功。任何帮助,将不胜感激。

1 个答案:

答案 0 :(得分:0)

请参阅tf.tile的文档。它明确地说

multiples: Length must be the same as the number of dimensions in input

在您的示例中,labels的排名为1len([10, 1]) == 2,这就是您看到错误的原因。

您可以尝试类似

的内容

tf.tile(tf.expand_dims(labels, -1), [1, 10])

tf.tile(tf.reshape(a, [128, 1]), [1, 10])