卷积神经网络 (
CNN
) 在许多计算机视觉任务(例如图像分类和目标检测)中取得了巨大成功。然而,它们的性能在图像分辨率低或目标很小的任务中迅速下降。在本文中指出这源于现有
CNN
架构中存在缺陷但常见的设计,即使用Stride卷积
和/或池化层
,这会导致细粒度信息的丢失和学习效率较低的特征表示。为此,本文提出了一个名为SPD-Conv
的新CNN
构建块来代替每个Stride卷积
层和池化层(因此完全消除了它们)。
SPD-Conv
由空间到深度 (SPD
) 层和非Stride卷积
(Conv
) 层组成,可以应用于大多数(如果不是全部)CNN
架构。作者在两个最具代表性的计算机视觉任务下解释了这种新设计:目标检测和图像分类。然后,通过将SPD-Conv
应用于YOLOv5
和ResNet
来创建新的CNN
架构,并通过经验证明本文的方法明显优于最先进的深度学习模型,尤其是在具有低分辨率图像和小目标的任务上。
1、A New Building Block: SPD-Conv
1.1、Space-to-depth(SPD)
SPD
组件将(原始)图像转换技术推广到对 CNN
内部和整个 CNN
中的特征图进行下采样,如下所示。
1.2、Non-strided Convolution
2、如何使用SPD-Conv:案例研究
为了解释如何将提出的方法应用到重新设计CNN架构中,使用了2个最具代表性的计算机视觉模型类别:目标检测和图像分类。这并没有失去一般性,因为几乎所有的CNN架构都使用分层卷积和/或池化操作来降采样特征映射。
2.1、目标检测
YOLO
是一系列非常流行的目标检测模型,其中选择了最新的YOLOv5
来演示。YOLOv5
使用CSPDarknet53
,SPP
模块作为主干,PANet
作为颈部,YOLOv3
头作为检测头。此外,它还使用了来自 YOLOv4
的各种数据增强方法和一些模块进行性能优化。它使用带有 sigmoid
层的交叉熵损失来计算目标和分类损失,并使用 CIoU
损失函数来计算定位损失。CIoU
损失比 IoU
损失考虑更多细节,例如边缘重叠、中心距离和宽高比。
YOLOv5-SPD
:将第 3 节中描述的方法应用于 YOLOv5
并获得 YOLOv5-SPD
(图 4),只需用用 SPD-Conv
构建块替换 YOLOv5
stride-2
卷积即可。这种替换有 7 个实例,因为 YOLOv5
在主干中使用5个 stride-2
卷积层将特征图下采样 25
倍,并在颈部使用2个 stride-2
卷积层。YOLOv5
颈部的每个跨步卷积之后都有一个连接层;这不会改变本文的方法,只是将它保持在 SPD
和 Conv
之间。
可扩展性
:YOLOv5-SPD
可以通过与 YOLOv5
相同的方式轻松扩展和缩减来适应不同的应用程序或硬件需求。具体来说,可以简单地调整(1)每个非跨步卷积层中的过滤器数量和/或(2)C3模块的重复次数(如图4所示),以获得不同版本的YOLOv5-SPD
。
第1个称为宽度缩放:它将原始宽度 nw(通道数)更改为 nw × width_f actore(四舍五入到最接近的 8 倍数)。
第2个称为深度缩放:它将原始深度 nd(重复 C3 模块的次数;例如,图 4 中的 9 × C3 中的 9)更改为 nd × depth_factor。
这样,通过选择不同的宽度/深度因子,我们得到了YOLOv5-SPD的nano、small、medium和large版本,如表2所示,其中因子值选择与YOLOv5
相同,以便在后面的实验中进行比较 .
2.2、图像分类
分类 CNN 通常从一个由 stride-2 卷积和池化层组成的stem单元开始,以将图像分辨率降低4倍。一个流行的模型是 ResNet
,它赢得了 ILSVRC 2015 挑战。ResNet
引入了残差连接,以允许训练高达 152 层的网络。它还通过仅使用单个全连接层显着减少了参数的总数。最后使用 softmax
层对类预测进行归一化。
ResNet18-SPD
和 ResNet50-SPD
。ResNet-18
和 ResNet-50
都使用总共4个 stride-2
卷积和一个 stride 2
的最大池化层,将每个输入图像下采样 25 倍。应用我们提出的构建块,用 SPD-Conv
替换了四个跨步卷积;但另一方面,我们只是删除了最大池化层,因为我们的主要目标是低分辨率图像,我们实验中使用的数据集的图像相当小(Tiny ImageNet 中为 64 × 64,CIFAR-中为 32 × 32) 10)因此不需要池化。对于更大的图像,这样的最大池化层仍然可以用 SPD-Conv 以相同的方式替换。两种新架构如表 3 所示。
3、实验结果
3.1、目标检测
3.2、图像分类
ChaucerG
集智书童
推荐阅读
Two-Stage目标检测困难负样本如何利用?大小目标如何同时优化?nRPN给你答案!
超越YOLO5-Face | YOLO-FaceV2正式开源Trick+学术点拉满
Anchor-Free即插即用标签分配 | 平滑标签分配+动态IoU匹配解决标签分配不一致
432.4 FPS | LPS-Net 结合内存、FLOPs、CUDA实现超快语义分割模型
更多嵌入式AI相关技术干货请关注嵌入式AI专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。