RepLKNet、depthwise conv、Depthwise Separable Conv

发布时间 2023-04-13 15:41:56作者: 好人~

由于ResNet的残差结构会跳过一些网络结果,所以其实resnet的有效深度其实并不深,所以有效感受野并不大。而大kernel模型不但有效感受野更大而且更像人类(shape bias高)。这也可能是传统CNN虽然在ImageNet上跟Transformer差不多,但在下游任务上普遍不如Transformer的原因。
Transformer可能关键在于大kernel而不在于self-attention的具体形式。

上游任务已经饱和,但在下游任务中还有用的。

depthwise conv、MobileNet、Depthwise Separable Conv:这里提到了两种卷积,分别为depthwise conv和Depthwise Separable Conv。

  • depthwise conv:下图是depthwise conv,其中:
    每个卷积核(Filter)的channel都为1
    输入特征矩阵channel=卷积核个数=输出特征矩阵channel

  • Depthwise Separable Conv:就是depthwise conv+1x1的普通卷积

depth-wise卷积的FLOPs更少没错,但是在相同的FLOPs条件下,depth-wise卷积需要的IO读取次数是普通卷积的100倍,因此,由于depth-wise卷积的小尺寸,相同的显存下,我们能放更大的batch来让GPU跑满,但是此时速度的瓶颈已经从计算变成了IO。自然desired小尺寸卷积应该有的快速的特性,也无法实现。(参考:Depth-wise Convolution

Swin-Transformer网络结构详解