[python]
t = torch.tensor([[[1,1,1,1],[2,2,2,2]],[[3,3,3,3],[4,4,4,4]],[[5,5,5,5],[6,6,6,6]]])
输出结果:
tensor([[[1, 1, 1, 1],
[2, 2, 2, 2]],
[[3, 3, 3, 3],
[4, 4, 4, 4]],
[[5, 5, 5, 5],
[6, 6, 6, 6]]])
t.unsqueeze_(0) ##tt在最外层增加了一个维度,变成了4维。注意下划线,表示对t的本体进行操作,如果不带下划线,则其返回一个unsqueeeze的tensor,但是本体仍是三维
t.shape
输出结果:
torch.Size([1, 3, 2, 4]
t.squeeze_(0) ##t的维度又变为3维,shape打印如下
t.shape
输出结果:
torch.Size([3, 2, 4])
t[:,1:2,:] ##切片操作,返回t的第1维度上的index为1的所有元素组成的tensor
输出结果:
tensor([[[2, 2, 2, 2]],
[[4, 4, 4, 4]],
[[6, 6, 6, 6]]])
t[:,1:2,2:4] ##同时在两个维度上进行切片
输出结果:
tensor([[[2, 2]],
[[4, 4]],
[[6, 6]]])