Pytorch张量的哪一部分代表通道?

时间:2018-07-26 14:39:36

标签: python conv-neural-network pytorch dimension tensor

令人惊讶的是,环顾互联网后,我没有找到该问题的答案。我对3D张量特别感兴趣。通过自己的实验,我发现在创建张量时:

h=torch.randn(5,12,5)

然后在其上放置一个卷积层,定义如下:

conv=torch.nn.Conv1d(12,48,3,padding=1)

输出是(5,48,5)张量。因此,我假设在火炬中使用3d张量时,中间数字代表通道数是正确的吗?

编辑:似乎在运行conv2d时,输入维是张量中的第一个条目,例如,我需要将其设为4d张量(1,48,5,5)。现在我很困惑...

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

对于conv2D,输入应为(N,C,H,W)格式。 N是样本数/ batch_size。 C是渠道。 H和W分别是高度和宽度。

请参阅https://pytorch.org/docs/stable/nn.html#torch.nn.Conv2d

上的形状文档

对于conv1D,输入应为(N,C,L),请参见https://pytorch.org/docs/stable/nn.html#conv1d上的文档