文章目录
tensor的维度变换
view以及reshape的用法
例子:
a = torch.rand(4,1,28,28)
a.view(4,28*28)
解读:其实就是将图片的通道数、图片的像素行列值都合并在一起,成为【4,784】,适合全连接层的输入。
例子2:
a = torch.rand(4,1,28,28)
a.view(4*1,28,28)
表示我们现在只关注feature map这个属性,而不关注它来自哪个图片的哪个通道
注意在view之后如果想恢复到原来的维数是要进行记录的,否则直接恢复是不行的。
squeeze与unsqueeze用法
unsqueeze
在相应的index的维度添加一维
例子:
a = torch.rand(4,1,28,28)
a.unsqueeze(0)
a.shape
#[1,4,1,28,28]
unsqueeze的参数是index,而index的范围是[-a.dim()-1,a.dim()+1)
-5 -4 -3 -2 -