tensorflow--张量变换--2--为张量+1维( tf.expand_dims )

tf.expand_dims(Tensor, dim)

  • 在第axis位置增加一个维度.
  • 给定张量输入,此操作在输入形状的维度索引轴处插入1的尺寸。 尺寸索引轴从零开始; 如果您指定轴的负数,则从最后向后计数。
  • 如果要将批量维度添加到单个元素,则此操作非常有用。 例如,如果您有一个单一的形状[height,width,channels],您可以使用expand_dims(image,0)使其成为1个图像,这将使形状[1,高度,宽度,通道]。

官网的例子

’t’ is a tensor of shape [2]

  • shape(expand_dims(t, 0)) ==> [1, 2]
  • shape(expand_dims(t, 1)) ==> [2, 1]
  • shape(expand_dims(t, -1)) ==> [2, 1]

‘t2’ is a tensor of shape [2, 3, 5]

  • shape(expand_dims(t2, 0)) ==> [1, 2, 3, 5]
  • shape(expand_dims(t2, 2)) ==> [2, 3, 1, 5]
  • shape(expand_dims(t2, 3)) ==> [2, 3, 5, 1]

代码示例

sess = tf.InteractiveSession()
labels = [1,2,3]
x = tf.expand_dims(labels, 0)

print(sess.run(x))
#>>>[[1 2 3]]

x = tf.expand_dims(labels, 1)

print(sess.run(x))
#>>>[[1]
#    [2]
#    [3]]
这里是一个广告位,,感兴趣的都可以发邮件聊聊:tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn