轻量化Backbone霸主 | VGNetG成就“不做选择,全都要”轻量化主干网络!

AI人工智能初学者

共 2550字,需浏览 6分钟

 · 2022-07-24

现代高效卷积神经网络 (CNN) 总是使用深度可分离卷积 (DSC) 和神经网络架构搜索 (NAS) 来减少参数数量和计算复杂度。但忽略了网络的一些固有特征。受可视化特征图和 N×N(N>1) 卷积核的启发,本文引入了几个指导方针,以进一步提高参数效率和推理速度。

基于这些指导方针设计的参数高效 CNN 架构称为 VGNetG,比以前的网络实现了更好的精度和更低的延迟,参数减少了大约 30%~50%。VGNetG-1.0MPImageNet 分类数据集上以 0.99M 的参数实现了 67.7%top-1 准确率,在 1.14M 的参数下实现了 69.2%top-1 准确率。

此外,证明边缘检测器可以通过用固定边缘检测 kernel替换 N×N kernel来替换可学习的深度卷积层来混合特征。VGNetF-1.5MP 达到 64.4%(-3.2%) 的 top-1 准确率和 66.2%(-1.4%) 的 top-1 准确率,并带有额外的高斯kernel

1本文方法

作者主要是研究了由标准卷积构造的3个典型网络:

  1. 标准卷积==>ResNet-RS
  2. 组卷积==>RegNet
  3. 深度可分离卷积==>MobileNetShuffleNetV2EfficientNets

这些可视化结果表明,M×N×N kernel在网络的不同阶段具有明显不同的模式和分布。

1.1 CNN可以学习如何满足采样定理

以前的工作一直认为卷积神经网络忽略了经典的采样定理,但是作者发现卷积神经网络通过学习低通滤波器可以在一定程度上满足采样定理,尤其是基于 DSCs 的网络,例如 MobileNetV1EfficientNets,如图 2 所示。

1、标准卷积/组卷积

如图 2a 和 2b 所示,在整个 M×N×N 个kernel中存在一个或多个显著 N×N 个kernel,例如模糊kernel,这种现象也意味着这些层的参数是冗余的。请注意,显著kernel不一定看起来像高斯kernel

2、深度可分离卷积

Strided-DSCkernel通常类似于高斯kernel,包括但不限于 MobileNetV1MobileNetV2MobileNetV3ShuffleNetV2ReXNetEfficientNets。此外,Strided-DSC kernel的分布不是高斯分布,而是高斯混合分布。

3、最后一个卷积层的Kernels

现代 CNN 总是在分类器之前使用全局池化层来降低维度。因此,类似的现象也出现在最后的深度卷积层上,如图 4 所示。

这些可视化表明应该在下采样层和最后一层选择深度卷积而不是标准卷积和组卷积。此外,可以在下采样层中使用固定的高斯kernel

1.2 重用相邻图层之间的特征图

Identity Kernel和类似特征图

如上图所示,许多深度卷积核仅在中心具有较大的值,就像网络中间部分的恒等核一样。由于输入只是传递到下一层,因此带有恒等核的卷积会导致特征图重复和计算冗余。另一方面,下图显示许多特征图在相邻层之间是相似的(重复的)。

因此,可以用恒等映射代替部分卷积。否则,深度卷积在早期层中很慢,因为它们通常不能充分利用 Shufflenet V2 中报告的现代加速器。所以这种方法可以提高参数效率和推理时间。

1.3 边缘检测器作为可学习的深度卷积

边缘特征包含有关图像的重要信息。如下图所示,大部分kernel近似于边缘检测kernel,例如 Sobel 滤波器 kernel拉普拉斯滤波器 kernel。并且这种kernel的比例在后面的层中减少,而喜欢模糊kernelkernel比例增加。

因此,也许边缘检测器可以取代基于 DSC 的网络中的深度卷积,以混合不同空间位置之间的特征。作者将通过用边缘检测kernel替换可学习kernel来证明这一点。

2网络架构

2.1 DownsamplingBlock

DownsamplingBlock 将分辨率减半并扩展通道数。如图 a 所示,仅扩展通道由逐点卷积生成以重用特征。深度卷积的核可以随机初始化或使用固定的高斯核。

2.2 HalfIdentityBlock

如图 b 所示,用恒等映射替换半深度卷积,并在保持块宽度的同时减少half pointwise convolutions。

请注意,输入的右半通道成为输出的左半通道,以便更好地重用特征。

2.3 VGNet Architecture

使用 DownsamplingBlockHalfIdentityBlock 构建了受参数数量限制的 VGNets。整体 VGNetG-1.0MP 架构如表 1 所示。

2.4 Variants of VGNet

为了进一步研究 N×N 内核的影响,引入了 VGNets 的几个变体:VGNetCVGNetGVGNetF

VGNetC:所有参数都是随机初始化和可学习的。

VGNetG:除 DownsamplingBlock 的内核外,所有参数都是随机初始化和可学习的。

VGNetF:深度卷积的所有参数都是固定的。

3实验

4参考

[1].EFFICIENT CNN ARCHITECTURE DESIGN GUIDED BY VISUALIZATION.

5推荐阅读

三星提出XFormer | 超越MobileViT、DeiT、MobileNet等模型

ECCV2022 Oral | 全新Ancho-free检测模型ObjectBox,120FPS超越OTA、TOOD等

Transformer 落地出现 | Next-ViT实现工业TensorRT实时落地,超越ResNet、CSWin

长按扫描下方二维码添加小助手并加入交流群,群里博士大佬云集,每日讨论话题有目标检测、语义分割、超分辨率、模型部署、数学基础知识、算法面试题分享的等等内容,当然也少不了搬砖人的扯犊子

长按扫描下方二维码添加小助手。

可以一起讨论遇到的问题

声明:转载请说明出处

扫描下方二维码关注【集智书童】公众号,获取更多实践项目源码和论文解读,非常期待你我的相遇,让我们以梦为马,砥砺前行

浏览 48
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报