关于expand_dims()那点事

常规用途:

  1. 向单个元素添加外部“批处理”维度。
  2. 对齐轴以进行广播。
  3. 向标量张量添加内部向量长度轴。

 实例:

如果您有一个形状为“[height, width, channels]”的图像:(注:channels为通道个数)

image = tf.zeros([10,10,3])

(注:在深度学习中,轴,指的就是张量的层级,一般通过参数axis/dim来设定。)

  >>> tf.expand_dims(image, axis=1).shape.as_list()
  [10, 1, 10, 3]
  >>> tf.expand_dims(image, -1).shape.as_list()
  [10, 10, 3, 1]

以通过传递“axis=1”来添加外部“batch”轴,新轴位置与Python匹配`list.insert(axis, 1)`:

axis取值范围:
-1-tf.rank(input) <= axis <= tf.rank(input)

 

你可能感兴趣的:(机器学习,深度学习,python,tensorflow)