大到31x31的超大卷积核,涨点又高效,一作解读RepLKNet

简介: 大到31x31的超大卷积核,涨点又高效,一作解读RepLKNet

你有多久没调过 kernel size 了?虽然常常被人忽略,但只要将其简单加大,就能给人惊喜。


当你在卷积网络(CNN)的深度、宽度、groups、输入分辨率上调参调得不可开交的时候,是否会在不经意间想起,有一个设计维度 kernel size,一直如此显而易见却又总是被忽视,总是被默认设为 3x3 或 5x5?

当你在 Transformer 上调参调得乐不思蜀的时候,是否希望有一种简单、高效、部署容易、下游任务性能又不弱于 Transformer 的模型,带给你朴素的快乐?

近日,清华大学、旷视科技等机构的研究者发表于 CVPR 2022 的工作表明,CNN 中的 kernel size 是一个非常重要但总是被人忽略的设计维度。在现代模型设计的加持下,卷积核越大越暴力,既涨点又高效,甚至大到 31x31 都非常 work(如下表 5 所示,左边一栏表示模型四个 stage 各自的 kernel size)!

即便在大体量下游任务上,我们提出的超大卷积核模型 RepLKNet 与 Swin 等 Transformer 相比,性能也更好或相当!

image.png




太长不看版

以下是两分钟内可以看完的内容总结。

A. 我们对业界关于 CNN 和 Transformer 的知识和理解有何贡献?

我们挑战了以下习惯认知:

1. 超大卷积不但不涨点,而且还掉点?我们证明,超大卷积在过去没人用,不代表其现在不能用。人类对科学的认知总是螺旋上升的,在现代 CNN 设计(shortcut、重参数化等)的加持下,kernel size 越大越涨点!

2. 超大卷积效率很差?我们发现,超大 depth-wise 卷积并不会增加多少 FLOPs。如果再加点底层优化,速度会更快,31x31 的计算密度最高可达 3x3 的 70 倍

3. 大卷积只能用在大 feature map 上?我们发现,在 7x7 的 feature map 上用 13x13 卷积都能涨点

4. ImageNet 点数说明一切?我们发现,下游(目标检测、语义分割等)任务的性能可能跟 ImageNet 关系不大。

5. 超深 CNN(如 ResNet-152)堆叠大量 3x3,所以感受野很大?我们发现,深层小 kernel 模型有效感受野其实很小。反而少量超大卷积核的有效感受野非常大

6. Transformers(ViT、Swin 等)在下游任务上性能强悍,是因为 self-attention(Query-Key-Value 的设计形式)本质更强?我们用超大卷积核验证,发现 kernel size 可能才是下游涨点的关键

B. 我们做了哪些具体的工作?

1. 通过一系列探索性的实验,总结了在现代 CNN 中应用超大卷积核的五条准则

用 depth-wise 超大卷积,最好再加底层优化(已集成进开源框架 MegEngine

加 shortcut

用小卷积核做重参数化(即结构重参数化方法论,见我们去年的 RepVGG,参考文献 [1])

要看下游任务的性能,不能只看 ImageNet 点数高低

小 feature map 上也可以用大卷积,常规分辨率就能训大 kernel 模型

2. 基于以上准则,简单借鉴 Swin Transformer 的宏观架构,我们提出了一种架构 RepLKNet,其中大量使用超大卷积,如 27x27、31x31 等。这一架构的其他部分非常简单,都是 1x1 卷积、Batch Norm 等喜闻乐见的简单结构,不用任何 attention。

3. 基于超大卷积核,对有效感受野、shape bias(模型做决定的时候到底是看物体的形状还是看局部的纹理?)、Transformers 之所以性能强悍的原因等话题的讨论和分析。我们发现,ResNet-152 等传统深层小 kernel 模型的有效感受野其实不大,大 kernel 模型不但有效感受野更大而且更像人类(shape bias 高),Transformer 可能关键在于大 kernel 而不在于 self-attention 的具体形式。

例如,下图 1 分别表示 ResNet-101、ResNet-152、全为 13x13 的 RepLKNet、kernel 大到 31x31 的 RepLKNet 的有效感受野,可见较浅的大 kernel 模型的有效感受野非常大。

有效感受野。


相关文章
|
7月前
|
机器学习/深度学习 存储 算法
深度神经网络中的BNN和DNN:基于存内计算的原理、实现与能量效率
深度神经网络中的BNN和DNN:基于存内计算的原理、实现与能量效率
303 0
|
计算机视觉
迟到的 HRViT | Facebook提出多尺度高分辨率ViT,这才是原汁原味的HRNet思想(二)
迟到的 HRViT | Facebook提出多尺度高分辨率ViT,这才是原汁原味的HRNet思想(二)
272 0
|
1月前
|
机器学习/深度学习 计算机视觉 网络架构
为什么卷积现在不火了:CNN研究热度降温的深层原因分析
纵观近年的顶会论文和研究热点,我们不得不承认一个现实:CNN相关的研究论文正在减少,曾经的"主角"似乎正逐渐淡出研究者的视野。
75 11
为什么卷积现在不火了:CNN研究热度降温的深层原因分析
|
4月前
|
机器学习/深度学习 存储 自然语言处理
天啊!深度神经网络中 BNN 和 DNN 基于存内计算的传奇之旅,改写能量效率的历史!
【8月更文挑战第12天】深度神经网络(DNN)近年在图像识别等多领域取得重大突破。二进制神经网络(BNN)作为DNN的轻量化版本,通过使用二进制权重和激活值极大地降低了计算复杂度与存储需求。存内计算技术进一步提升了BNN和DNN的能效比,通过在存储单元直接进行计算减少数据传输带来的能耗。尽管面临精度和硬件实现等挑战,BNN结合存内计算代表了深度学习未来高效节能的发展方向。
55 1
|
7月前
|
机器学习/深度学习 算法 图形学
告别3D高斯Splatting算法,带神经补偿的频谱剪枝高斯场SUNDAE开源了
【5月更文挑战第26天】SUNDAE,一种结合频谱剪枝和神经补偿的高斯场方法,已开源,解决了3D高斯Splatting的内存消耗问题。SUNDAE通过建模基元间关系并剪枝不必要的元素,降低内存使用,同时用神经网络补偿质量损失。在Mip-NeRF360数据集上,SUNDAE实现26.80 PSNR和145 FPS,内存仅为104MB,优于传统算法。然而,其计算复杂性、参数优化及对其他3D表示方法的适用性仍有待改进。代码开源,期待进一步研究。[论文链接](https://arxiv.org/abs/2405.00676)
56 2
|
6月前
|
机器学习/深度学习
【保姆级教程|YOLOv8改进】【7】多尺度空洞注意力(MSDA),DilateFormer实现暴力涨点
【保姆级教程|YOLOv8改进】【7】多尺度空洞注意力(MSDA),DilateFormer实现暴力涨点
|
7月前
|
机器学习/深度学习 固态存储 算法
目标检测的福音 | 如果特征融合还用FPN/PAFPN?YOLOX+GFPN融合直接起飞,再涨2个点
目标检测的福音 | 如果特征融合还用FPN/PAFPN?YOLOX+GFPN融合直接起飞,再涨2个点
313 0
|
机器学习/深度学习 编解码 PyTorch
大到31x31的超大卷积核,涨点又高效,一作解读RepLKNet(2)
大到31x31的超大卷积核,涨点又高效,一作解读RepLKNet
114 0
|
机器学习/深度学习 编解码 vr&ar
迟到的 HRViT | Facebook提出多尺度高分辨率ViT,这才是原汁原味的HRNet思想(一)
迟到的 HRViT | Facebook提出多尺度高分辨率ViT,这才是原汁原味的HRNet思想(一)
256 0
|
机器学习/深度学习 设计模式
卷积越大性能越强!RepLKNet一作在线分享:Transformer阴影下的超大卷积核复兴
卷积越大性能越强!RepLKNet一作在线分享:Transformer阴影下的超大卷积核复兴
104 0