我正在研究PyTorch中的模型实现。第一层为卷积层,滤波器大小为7,步长为2,pad = 3。网络的标准输入尺寸为224x224x3。基于这些数字,输出维数为(224 +3*2-7)/2+ 1,它不是整数。原始实现是否包含非整数维?我看到网络在FC层之前有自适应池,所以变量输入维度不是问题(我通过改变输入大小来测试这一点)。我是不是做错了什么,或者为什么作者在设计ResNet时选择了一个非整数维?
发布于 2020-06-09 22:47:43
维度总是必须是整数。来自nn.Conv2d
- Shape
只向底部关闭的括号表示地板操作(向下)。计算结果如下:
import math
math.floor((224 + 3*2 - 7)/2 + 1) # => 112
# Or using the integer division (two slashes //)
(224 + 3*2 - 7) // 2 + 1 # => 112
使用整数除法具有相同的效果,因为这总是将其舍入到最近的整数。
https://stackoverflow.com/questions/62292854
复制相似问题