YOLOv8改进 | 主干改进篇,华为的轻量化架构GhostNetV2改进特征提取网络
摘要
摘要:轻量级卷积神经网络(CNN)专为移动设备上的应用而设计,具有更快的推理速度。卷积操作只能在窗口区域内捕捉局部信息,这限制了性能的进一步提升。将自注意力引入卷积可以很好地捕捉全局信息,但会极大地拖累实际速度。本文提出了一种硬件友好的注意力机制(称为 DFC 注意力),并展示了一种用于移动应用的新 GhostNetV2 架构。提出的 DFC 注意力基于全连接层构建,不仅能在常见硬件上快速执行,还能捕捉远距离像素之间的依赖关系。作者进一步重新审视了之前 GhostNet 中的表达瓶颈,并提出通过 DFC 注意力增强由廉价操作生成的扩展特征,使得 GhostNetV2 块能够同时聚合局部和远距离信息。
理论介绍
GhostNetV2 提供了以下几种常见的模型权重,不同宽度缩放因子(Width Scaling):
- 1.0x: 标准模型。
- 1.3x: 模型深度比1.0x更深。
- 1.6x: 更大的模型版本,适用于计算资源较多的设备。
大家可以根据不同场景选择合适的模型宽度缩放因子,本文选择 1.0,具体可见第二章的代码。
GhostNet、GhostNetV2、GhostNetV3 模型在 参数量(M)、FLOPs(M)及 ImageNet 的 top1 结果对比情况如下:
GhostNetV1 和 GhostNetV2 架构示意图如下图所示。Ghost 块是一个反向残差瓶颈,包含两个 Ghost 模块,其中 DFC 注意力增强了扩展特征以提高表达能力。
GhostNetV1 是一种轻量化模型,通过“Ghost 模块”减少冗余计算。Ghost 模块将 1×1 卷积和深度卷积结合在一起,生成一部分特征图后,通过廉价的操作生成剩余的特征图。这一设计虽然大幅减少了计算成本,但也削弱了模型捕捉空间信息的能力。
GhostNetV2 架构通过引入 DFC 注意力,提升了网络的表达能力,同时保持了在移动设备上的高效性。DFC 注意力机制使用两个解耦的全连接层来处理特征图的水平和垂直方向。通过将输入特征图沿水平方向和垂直方向进行特征聚合,DFC注意力机制能够捕捉到全局信息,并提升模型的表达能力。DFC注意力的计算过程如下:
- 将输入特征图 Z 视为多个 token,并通过全连接层生成注意力图。
- DFC 将计算过程分解为两个步骤:首先沿水平方向进行特征聚合,然后沿垂直方向进行聚合,最终生成注意力图。
- 将 Ghost 模块输出的特征与 DFC 注意力图进行点乘,生成最终的输出特征。
DFC 注意力的信息流,如下图所示,水平和垂直的全连接层分别沿两个方向捕捉长距离信息。