作者丨happy
编辑丨极市平台
导读
是否有可能构建一个高性能的Non-deep(非深度)神经网络呢 ?普林斯顿大学的Jia Deng团队的最新力作ParNet:凭借12层的深度网络在ImageNet上达到了80.7%的top-1精度。
原文链接:/pdf/2110.07641.pdf
代码链接:/imankgoyal/NonDeepNetworks
本文是普林斯顿大学的Jia Deng团队的最新力作ParNet:它凭借12层的深度网络在ImageNet上达到了80.7%的top-1精度。所提ParNet以RepVGG的模块为出发点,同时提出了针对非深度网络设计的SSE模块构建了一种新型的模块RepVGG-SSE。所提方案凭借非常浅的结构取得了非常高的性能,比如:ImageNet的80.7%,CIFAR10的96%,CIFAR100的81%,MS-COCO的48%。此外,作者还分析了该结构的缩放规则并说明了如何不改变网络提升提升性能。最后,作者还提供了一份证明:非深度网络如何用于构建低延迟识别系统。
Abstract
Depth(深)是深度神经网络的标志。但是,更深意味着更多的计算量、更高的推理延迟。这就引出了一个问题:是否有可能构建一个高性能的Non-deep(非深度)神经网络呢?本文研究表明:可以!
为达成上述目标,我们采用了并行子网络(而非串行)。这种处理方式可以有效降低深度同时保持高性能。
通过利用并行子结构,所提方案首次以深度为12的网络在ImageNet数据集上达到了80.7%性能,在CIFAR10上达到了96%,在CIFAR100达到了81%。与此同时,所提方案(深度为12的骨干网络)在MS-COCO数据集上达到了48%AP指标。下图为所提方案与其他CNN、Transformer模型关于深度-性能的对比图。
Method
本文提出了一种的新架构ParNet:更浅的同时具有高性能。ParNet包含用于处理不同分辨率输入的并行子结构,我们将这些并行子结构称之为streams。不同streams的特征在网络的后期进行融合,融合的特征将用于下游任务。下图给出了本文所提ParNet架构示意图。
ParNet Block
为探索非深度网络是否可以取得高性能,我们发现VGG风格模块比ResNet风格模块更适合该方案。因此,ParNet采用了类VGG模块。一般来讲,VGG风格网络要比ResNet的训练难度更大;而结构重参数化(如RepVGG)可以有效解决该训练难问题。
因此,我们从RepVGG中出发并对其进行修改以使其更适合于非深度架构。非深度网络的一个挑战在于:卷积的感受野非常有限。为解决该问题,我们在SE注意力基础上构建了一个Skip-Squeeze-Excitation(SSE)。由于常规的SE会提升网络深度,因此,常规SE并不适用于我们的架构。所提SSE结构示意图见上图Figure2右,它附加在跳过连接分支上仅包含一个全连接层。我们发现:这种结构设计有助于提升模型性能。我们将上述所构建的模块称之为RepVGG-SSE。
对于大尺度数据集而言,非深度网络可能不具备足够的非线性能力,进而限制其表达能力。因此,我们采用SiLU替代ReLU。
Downsampling and Fusion Block
除了RepVGG-SSE(它的输入与输出具有相同尺寸)外,ParNet还包含一个下采样与融合模块。
下采样模块:它用于降低分辨率提升宽度以促进多尺度处理。它同样跳过连接分支,它添加了一个与卷积并行的单层SE模块,此外还在卷积分支添加了2D均值池化。
融合模块:它用于融合不同分辨率的信息。它类似于下采样模块但包含额外的concat层。除了concat外,它的输入通道数更多。因此,为降低参数量,我们采用g=2的组卷积。
Network Architecture
上表给出了所提ParNet结构信息说明,注:上表为针对ImageNet而设计的结构。对于CIFAR任务,网络结构有轻微调整。
Scaling ParNet
已有研究表明:调整网络的深度、分辨率以及宽度可以取得更高的精度。由于我们的目标是评估非深度网络是否可以取得更高的性能,因此我们保持ParNet的深度不变转而调整宽度、分辨率以及streams数量。
对于CIFAR10与CIFAR100,我们提升网络宽度而保持分辨率为32,stream为3;对于ImageNet,我们通过实验对三个维度进行调整。
Experiments
上表1给出了ImageNet数据集上的性能对比,可以看到:
深度仅为12的ParNet取得了非常高的性能;
ParNet-S具有比ResNet34更高的性能、更低的参数量;
ParNet-L具有比ResNet50更高的性能;
ParNet-XL具有与ResNet101相当的性能,同时深度仅为其1/8。
上表2给出了所提ParNet与ResNet在精度、速度、参数量以及FLOPs方面的对比,从中可以看到:
相比ResNet34与ResNet50,ParNet-L具有更快的速度、更高的精度;
相比ResNet50,ParNet-XL具有更快的速度、更高的精度。
这就意味着:我们可以采用ParNet替代ResNet以均衡推理速度-参数量-flops等因素。
上表3给出了三个ParNet的三个变种:unfused、fused以及多GPU。从中可以看到:ParNet可以跨GPU高效并行以达成更快推理。这里的实现结果是在通讯负载约束下得到,也就是说:通过特定的硬件减少通讯延迟可以进一步提升推理速度。
上表通过额外的方式进一步提升ParNet的性能,比如更高分辨率、更长训练周期、10-crop测试。通过不同trick组合,我们将ParNet-XL的性能从78.55提升到了80.72%。据我们所知,这也是人类识别水平首次被深度为12层的网络达到。
上图给出了ParNet作为骨干时在MS-COCO检测任务上的性能对比,可以看到:相比基线模型,ParNet具有更快的推理速度,更高的性能。这说明:非深度网络可以用于构建快速目标识别系统。
上表给出了CIFAR10与CIFAR100数据集上的性能对比,从中可以看到:
ParNet具有与ResNet、DenseNet相当的性能,同时更浅。
ParNet超越了深度为其10倍的ResNet(5.0vs5.3),同时具有更低的参数量(1.3Mvs1.7M);
ParNet超过了100倍深度的ResNet(3.90vs4.62),但同时参数量多50%;
ParNet与DenseNet的表现相当,参数量稍多,但深度少3-8倍。
总而言之,ParNet仅需12层即可取得96.12%@CIFAR10、81.35%@CIFAR100。这进一步说明:非深度网络可以表现的像深度网络一样。
Ablation Study
上表7给出了不同设计候选对于ParNet性能影响,可以看到:这三种设计候选均可导致更高的性能。
上表8给出了VGG风格与ResNet风格模块的性能对比,可以看到:VGG风格的模块更适合于本文目标。
上表给出了ParNet与模型集成的性能对比,可以看到:相比模型集成,ParNet性能更优,参数量更少。
上表给出了不同分支(参数量相同)模型的性能对比,可以看到:当固定模型总参数量后,3分支模型具有最高的精度。
上图给出了模型缩放过程中不同维度的影响,可以看到:
相比提升通道数,提升streams可以更合理;
对于ParNet来说,同时提升三个维度是最有效的方式;
上图并未发现ParNet性能饱和,这说明:进一步提升计算量可以得到更高的性能,同时保持低深度。
本文仅做学术分享,如有侵权,请联系删文。
3D视觉精品课程推荐:
1.面向自动驾驶领域的多传感器数据融合技术
2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)
重磅!3DCVer-学术论文写作投稿交流群已成立
扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。
同时也可申请加入我们的细分方向交流群,目前主要有3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。
一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉+ 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。
▲长按加微信群或投稿
▲长按关注公众号
3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列三维点云系列结构光系列、手眼标定、相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:
学习3D视觉核心技术,扫描查看介绍,3天内无条件退款
圈里有高质量教程资料、答疑解惑、助你高效解决问题
觉得有用,麻烦给个赞和在看~