pytorch 维度变化的时候应该使用什么方法
pytorch 维度变化的时候应该使用什么方法
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 一个是基于元素一个是基于维度最小操作单位不同
来自51CTO博客作者东方佑的原创作品,如需转载,请注明出处,否则将追究法律责任
https://blog.51cto.com/u_15177056/2794307