1、bug背景
在我训练模型的过程中,我的模型输入本来是一个(batchsize,H,W,channel)的tensor,但是我想要换成(batchsize,channel,H,W),也就是我想把第一维度和第三维度(初始值是0维)调换。
2、解决方案
网上介绍的解决方案是采用moveaxis这个函数,具体的使用方法如下:
import numpy as np
x = np.moveaxis(x, 1, 3)
#将第一维移到第三维位置,其余不变
#即(batch,H,W,channel)变成(batch,channel,H,W)
当然,moveaxis这个函数也可以把第三维移到第一维的位置其余不变,只要换一下参数即可。
但是,就在我使用了上面