b=torch.Tensor([[[[1,2,3],[4,5,6],[7,8,9]],[[1,2,3],[4,5,6],[7,8,9]]]])
#view 方法是将其先变为1维最后从低纬度到高纬度分配,分配后,元素也换了维度
print(b.view(b.shape[-1],-1,b.shape[1],b.shape[2]))
# 而这个则不同 最小改变的一个 一个维度 而不是元素 原来手牵手的元素还是挨着的
print(b.permute(3,0,1,2).contiguous())
某些维度的元素数量发生变化的时候使用view
维度中元素数量不发生变化的时候使用permute(3,0,1,2).contiguous
一个是基于元素一个是基于维度最小操作单位不同