Yolov5更换backbone,与模型压缩(剪枝,量化,蒸馏)

~~~欢迎各位交流、star、fork、issues~~~

项目介绍:

本仓库是基于官方yolov5源码的基础上,进行的改进。

目前支持更换yolov5的backbone主干网络为Ghostnet,以及采用eagleeye的剪枝方法支持对yolov5系列的剪枝。

后续,将会添加更多更轻量,更优秀的主干网络,比如swintrans,EfficientNet等,以及其他剪枝方法,以及量化,蒸馏对于yolov5系列的支持。

欢迎大家有问题,错误,想法都可以积极交流,探讨,学习,本项目长期维护,持续更新,各位的star,就是对本项目的大力支持。

《GhostNet: More Features from Cheap Operations》

先简单介绍一下,目前支持的backbone

在一张图像中存在着很多像素的冗余,而在CNN模型中这种冗余更是非常多的,提取到了大量无用的特征。

Yolov5更换backbone,与模型压缩(剪枝,量化,蒸馏)

比如论文中给到的这个图,可以看到用扳手连接的几张图其实是非常相似的,完全是冗余的,不需要的

于是本论文提出一个仅通过少量计算(cheap operations)就能生成大量特征图的结构——Ghost Module。

Ghost Module可以适用在任何大型的CNN模型中,已经可以达到即插即用的效果。

首先,作者将原来的卷积分为两步,第一步还是卷积,只不过输出通道数减少了;第二步是用第一步生成的特征图通过线性变化,来生成剩余的特征图。最后将两步的输出通道结合输出。也就是像图中b表示的这样

Yolov5更换backbone,与模型压缩(剪枝,量化,蒸馏)

然后,作者通过一系列计算得出计算量是减少的,具体公式这里就不列出。

了解了Ghost Module,下面看Ghost Bottlenecks。

Yolov5更换backbone,与模型压缩(剪枝,量化,蒸馏)

Ghost Bottlenecks的作用和残差块的作用一样,结构也和残差块的结构类似 ,就不过多介绍, 大家看过代码一下就能懂

所以,backbone就是由这样的Ghost Bottlenecks堆叠产生的。

EagleEye: Fast Sub-net Evaluation for Efficient Neural Network Pruning

详细大家可以看之前的初入神经网络剪枝量化3

如有错误,欢迎各位批评指正!!!

Original: https://blog.csdn.net/weixin_42638415/article/details/121951322
Author: RANKING666
Title: Yolov5更换backbone,与模型压缩(剪枝,量化,蒸馏)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/647659/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球