Yolov5更换backbone,与模型压缩(剪枝,量化,蒸馏)
项目地址(GitHub):https://github.com/Ranking666/Yolov5-Processing
~~~欢迎各位交流、star、fork、issues~~~
项目介绍:
本仓库是基于官方yolov5源码的基础上,进行的改进。
目前支持更换yolov5的backbone主干网络为Ghostnet,以及采用eagleeye的剪枝方法支持对yolov5系列的剪枝。
后续,将会添加更多更轻量,更优秀的主干网络,比如swintrans,EfficientNet等,以及其他剪枝方法,以及量化,蒸馏对于yolov5系列的支持。
欢迎大家有问题,错误,想法都可以积极交流,探讨,学习,本项目长期维护,持续更新,各位的star,就是对本项目的大力支持。
《GhostNet: More Features from Cheap Operations》
先简单介绍一下,目前支持的backbone
在一张图像中存在着很多像素的冗余,而在CNN模型中这种冗余更是非常多的,提取到了大量无用的特征。
比如论文中给到的这个图,可以看到用扳手连接的几张图其实是非常相似的,完全是冗余的,不需要的
于是本论文提出一个仅通过少量计算(cheap operations)就能生成大量特征图的结构——Ghost Module。
Ghost Module可以适用在任何大型的CNN模型中,已经可以达到即插即用的效果。
首先,作者将原来的卷积分为两步,第一步还是卷积,只不过输出通道数减少了;第二步是用第一步生成的特征图通过线性变化,来生成剩余的特征图。最后将两步的输出通道结合输出。也就是像图中b表示的这样
然后,作者通过一系列计算得出计算量是减少的,具体公式这里就不列出。
了解了Ghost Module,下面看Ghost Bottlenecks。
Ghost Bottlenecks的作用和残差块的作用一样,结构也和残差块的结构类似 ,就不过多介绍, 大家看过代码一下就能懂
所以,backbone就是由这样的Ghost Bottlenecks堆叠产生的。
EagleEye: Fast Sub-net Evaluation for Efficient Neural Network Pruning
详细大家可以看之前的初入神经网络剪枝量化3
如有错误,欢迎各位批评指正!!!
Yolov5更换backbone,与模型压缩(剪枝,量化,蒸馏)相关推荐
- 模型压缩--剪枝篇(转载)
很好的一篇文章,和大家分享一下(省的自己找不到了hhhhh 狗头机智.jpg) 闲话模型压缩之网络剪枝(Network Pruning)篇 ariesjzj 2019-09-15 09:23:26 ...
- 浅谈模型压缩之量化、剪枝、权重共享
之前陆陆续续看了许多模型压缩相关的文章,自己业务中也接触过一些相关的客户,今天周末没事做,把模型压缩相关的内容整理一下做个分享.可能更多地从科普的角度去介绍,因为我也不是专业做这方面技术的研究. 首先 ...
- 深度学习模型压缩(量化、剪枝、轻量化结构、batch-normalization融合)
"目前在深度学习领域分类两个派别,一派为学院派,研究强大.复杂的模型网络和实验方法,为了追求更高的性能:另一派为工程派,旨在将算法更稳定.高效的落地在硬件平台上,效率是其追求的目标.复杂的模 ...
- 模型压缩:量化、剪枝和蒸馏
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 编者荐语 近年来,BERT 系列模型成了应用最广的预训练语言模型, ...
- 闲话模型压缩之量化(Quantization)篇
1. 前言 这些年来,深度学习在众多领域亮眼的表现使其成为了如今机器学习的主流方向,但其巨大的计算量仍为人诟病.尤其是近几年,随着端设备算力增强,业界涌现出越来越多基于深度神经网络的智能应用.为了弥补 ...
- 【AI不惑境】模型压缩中知识蒸馏技术原理及其发展现状和展望
大家好,这是专栏<AI不惑境>的第十一篇文章,讲述知识蒸馏相关的内容. 进入到不惑境界,就是向高手迈进的开始了,在这个境界需要自己独立思考.如果说学习是一个从模仿,到追随,到创造的过程,那 ...
- 深度学习 模型压缩之知识蒸馏
知识蒸馏 知识蒸馏 蒸馏方式 离线蒸馏 在线蒸馏 自我蒸馏 蒸馏算法 对抗蒸馏 多教师蒸馏 跨模态蒸馏 图蒸馏 无数据蒸馏 量化蒸馏 深度交互学习(Deep Mutal Learning) Demo ...
- 模型压缩与数据蒸馏(笔记)
目的:使得network变小,用于较小的设备当中. 模型压缩(Network Pruning):因为模型中有的权重或神经元没有起到作用. 1.训练一个大的网络. 2.评价网络中weight和neruo ...
- 模型压缩一-知识蒸馏
一.知识蒸馏简介 知识蒸馏是模型压缩方法中的一个大类,是一种基于"教师-学生网络(teacher-student-network)思想"的训练方法, 其主要思想是拟合教师模型(te ...
最新文章
- 关于建立完整商业应用软件框架库的设想
- 提高ASP.net性能的十种方法
- php打包mysql_PHP封装MySQL的单例
- 7.FreeRTOS学习笔记-事件
- linux system V IPC 信号灯和共享内存实例
- 邮箱服务器端口以及各大型邮箱smtp服务器及端口收集
- Mac 查找本机的ip
- ubuntu 14.04 32bit依赖库解决
- tomcat6url请求400错误(%2F与%5C)
- y = mapminmax(‘apply‘,x,ps)与mapminmax(‘reverse‘,y,ps)
- 电感电容之开关电源的原理
- 不使用脚手架构建vue项目
- linux nano vim,修改ubuntu默认Nano编辑器为vim
- 【Linux 4】定时任务调度与进程服务管理
- supervisor+cesi多服务器进程集中管理
- “我没干过华为OD的岗位,但它是外包,我就要怼”,什么心态?
- Latex 中文简历 过程(更新Miktex和 修改utf字体)
- 汉诺塔系列问题: 汉诺塔II、汉诺塔III、汉诺塔IV、汉诺塔V、汉诺塔VI
- 【Java】interrupt、interrupted和isInterrupted的区别
- 解读符合新时代主流的创客教育模式
热门文章
- 欧几里得空间——标准正交基
- 微信小程序模拟支付界面
- 不要在乎一城一池的得失
- w10系统怎么登录服务器,win10系统如何登录服务器地址
- 磁盘旋转延迟时间为什么要除以2
- 计算机专业双一流排名大专,计算机专业双一流高校名单-双一流大学计算机专业排名...
- UVa 10074 Take the Land (转化思想最大子矩阵和)
- 树莓派4b之初学者入门人脸识别(手把手完整版)
- Linux 根目录100%占用 (/dev/mapper/centos-root 100%问题)
- Ubuntu 18.04 使用 Autokey 给 联想台式电脑 关闭fn