ResNet50 在这里: https://github.com/fchollet/deep-learning-models/blob/master/resnet50.py
在"conv_block"中,第一层是这样的:
x = Conv2D(filters1 = 64, # number of filters
kernel_size=(1, 1), # height/width of filters
strides=(2, 2) # stride
)(input_tensor)
我的问题是:
这一层不会错过一些像素吗?
这个 1x1 卷积只看 1 个像素,然后移动 2 个像素(步幅=2(。
在Resnet的原始论文中提到:
卷积层大多有3×3个滤波器和 遵循两个简单的设计规则:(i( 对于相同的输出 要素地图大小,图层具有相同数量的过滤器;(ii(如果特征图大小减半,则过滤器的数量增加一倍,以保持每层的时间复杂度。我们直接通过以下方式执行下采样 步幅为 2 的卷积层
因此,您可以将其视为池化层的替代品,与计算整个激活图然后池化相比,它还降低了整个模型的计算复杂度。