Skip to content

6.0.卷积基础

  • 四维度数据顺序为 n, c, h, w. ref: https://github.com/julyfun/numpytorch/blob/main/numpytorch/nn/modules/conv.py
  • Flatten 不会展开 batch 维度,(n, 512, 1, 1) 经过 Flatten 以后的形状为 (n, 512)
  • 卷积层中,输入通道到输出通道是全连接的。卷积核的形状是 c_o * c_i * k_h * k_w,这也是一层的参数量,每个输入-输出通道 pair 拥有仅一个 $k_h times k_w$ 的卷积核

Classes

ConvTranspose2d

self.upconv2 = nn.ConvTranspose2d(128, 64, kernel_size=2, stride=2)

他会在卷积逆操作的同时插入 0,放大分辨率。

输入张量:
1 2
3 4

插入零后的张量:
1 0 2 0
0 0 0 0
3 0 4 0
0 0 0 0

卷积核:
1 0
0 1

转置卷积操作的输出:
1 0 2 0
0 0 0 0
3 0 4 0
0 0 0 0