Involution 内卷积
CVPR 2021 论文
作者: Duo Li, Jie Hu, Changhu Wang et al.
论文地址:https://arxiv.org/pdf/2103.06255.pdf
源码:https://github.com/d-li14/involution
核心代码: https://github.com/d-li14/involution/blob/21c3158fcbb4ecda8ed4626fcae8b01be511a598/cls/mmcls/models/utils/involution_cuda.py
参考博客: https://blog.csdn.net/amusi1994/article/details/114697821
思考的问题
传统的神经网络,卷积层,卷积核在不同位置上共享相同的参数,平移具有不变性。但在不同的通道上,卷积核有不同的参数。 因此传统的卷积有 Spatial-agnostic 和 Channel-specific 的性质。
- 传统的卷积带来的问题是: 3*3 的卷积核空间跨度小,限制了卷积的感受野。
- 好处是节省了参数,提高了效率。
Involution (内卷积) 的提出是为了克服上面的限制。即 Spatial-Specific 和 Channel-Agnostic。具体来说,内卷积在通道上共享参数,在空间上每个位置使用不同的核参数。
流程图
内卷积分为两步,第一步,在输入的每一个位置(红色)上,根据不同通道的值,估计 K×K 的参数,组成 K×K 的卷积核。把卷积核沿着通道方向重复 C 次,卷积核变成 K×K×C。第二步,使用这个估计的卷积核
在原输入区域对应位置进行乘法,在空间域 K×K 区域聚合。