我正在尝试进行2d卷积,即2d网格,由以下形状的张量表示
[batch_dim, width, height]
第一个维度是“批处理维度”,第二个和第三个维度代表2d网格
当我尝试使用以下代码应用二维卷积时:
nn.Conv2d(1, 32, kernel_size=3, stride=1)
我收到以下错误:
RuntimeError: Expected 4-dimensional input for
4-dimensional weight 32 1 1 1, but got 3-dimensional
input of size [1, 132, 7] instead
为什么一个通道的2d网格需要4d张量?我应该如何在2d网格上实现2d卷积?
答案 0 :(得分:0)
它应为batch size, channel, height, width
格式,因此对于2d网格是1个通道。使用1通道不会更改任何内容,请勿自己实现,而应使用pytorch实现。