文章目录
- GhostNet理论基础
-
- 实验部分
- 改进方案
-
- 新增yolov10s-ghost.yaml文件
- 代码运行
GhostNet理论基础
Ghost Module是一种模型压缩的方法,即在保证网络精度的同时减少网络参数和计算量,从而提升计算速度(speed),降低延时(latency)。Ghost 模块可以代替现有卷积网络中的每一个卷积层。基于Ghost模块,论文作者堆叠Ghost模块构建了GhostNet。
模型提出的缘由:卷积输出的一组特征图在通道方向上,有部分通道内容相似。比如下图是对Resnet-50某层输出的可视化,每张图代表一个通道,图中三组颜色相连的图非常相似。论文将一组中的一张图称为本征图(intrinsic),其他和本征图相似的图称为本征图的魅影(ghost)。那么,既然ghost和Intrinsic非常相似,我们是否可以通过一种相对简单的、计算量较少的运算代替运算量大的卷积操作生成ghost图?ghost模块就是基于这种想法,提出用简单的线性运算生成ghost,但总共的通道数(intrinsic+ghost)以及生成特征图的大小和原来保持一致。
Ghost模块:生成ghost图的过程采用简单的线性运算