tf.expand_dims(
input, #输入tensor
axis, #要在输入的tensor的第几个维度增加1个维度
name=None
)
这个函数根据axis在原本的tensor的某个维度上增加1维。
例1:
# 't' is a tensor of shape [2]
tf.shape(tf.expand_dims(t, 0)) # [1, 2]
tf.shape(tf.expand_dims(t, 1)) # [2, 1]
tf.shape(tf.expand_dims(t, -1)) # [2, 1]
# 't2' is a tensor of shape [2, 3, 5]
tf.shape(tf.expand_dims(t2, 0)) # [1, 2, 3, 5]
tf.shape(tf.expand_dims(t2, 2)) # [2, 3, 1, 5]
tf.shape(tf.expand_dims(t2, 3)) # [2, 3, 5, 1]
t=array([[[1., 1.],
[1., 1.],
[1., 1.]],
[[1., 1.],
[1., 1.],
[1., 1.]]])
#(2,3,2)
tf.shape(tf.expand_dims(t, 0)),在axis=0的括号处首尾对应加[ ]
array([[[[1., 1.],
[1., 1.],
[1., 1.]],
[[1., 1.],
[1., 1.],
[1., 1.]]]])
#(1,2,3,2)
tf.shape(tf.expand_dims(t, 1)),在axis=1的括号处首尾对应加[ ]
t=array([[[[1., 1.],
[1., 1.],
[1., 1.]],
[[[1., 1.],
[1., 1.],
[1., 1.]]])
#(2,1,3,2)
tf.shape(tf.expand_dims(t, 2)),在axis=2的括号处首尾对应加[ ] ,即在axis = -1 上加维度,那么就是每个元素加括号
t=array([[[[1.], [1.]],
[[1.], [1.]],
[[1.], [1.]]],
[[[1.], [1.]],
[[1.], [1.]],
[[1.], [1.]]]])
#(2,3,2,1)