当前位置: 首页 > news >正文

网站开发自学还是培训快速排名方案

网站开发自学还是培训,快速排名方案,网站qq一键登录,wordpress 不支持中文摘要 本次剪枝实战是基于下面这篇论文去复现的,主要是实现对BN层的γ/gamma进行剪枝操作,本文用到的代码和数据集都可以在我的资源中免费下载到。 相关论文:Learning Efficient Convolutional Networks through Network Slimming (ICCV 2017…

摘要

本次剪枝实战是基于下面这篇论文去复现的,主要是实现对BN层的γ/gamma进行剪枝操作,本文用到的代码和数据集都可以在我的资源中免费下载到。

在这里插入图片描述

相关论文:Learning Efficient Convolutional Networks through Network Slimming (ICCV 2017)

剪枝的原理

在一个卷积-BN-激活模块中,BN层可以实现通道的缩放。如下:
在这里插入图片描述
BN层的具体操作有两部分:
在这里插入图片描述
在归一化后会进行线性变换,那么当系数gamma很小时候,对应的激活(Zout)会相应很小。这些响应很小的输出可以裁剪掉,这样就实现了bn层的通道剪枝。

剪枝的过程

第一步、使用VGGNet训练模型。保存训练结果,方便将来的比对!
第二步、在BN层网络中加入稀疏因子,训练模型。
第三步、剪枝操作。
第四步、fine-tune模型,提高模型的ACC。

接下来,我们一起实现对VGGNet的剪枝。

一、项目结构

Slimming_Demo
├─checkpoints
│ ├─vgg
│ ├─vgg_pruned
│ └─vgg_sp
├─data
│ ├─train
│ │ ├─Black-grass
│ │ ├─Charlock
│ │ ├─Cleavers
│ │ ├─Common Chickweed
│ │ ├─Common wheat
│ │ ├─Fat Hen
│ │ ├─Loose Silky-bent
│ │ ├─Maize
│ │ ├─Scentless Mayweed
│ │ ├─Shepherds Purse
│ │ ├─Small-flowered Cranesbill
│ │ └─Sugar beet
│ └─val
│ ├─Black-grass
│ ├─Charlock
│ ├─Cleavers
│ ├─Common Chickweed
│ ├─Common wheat
│ ├─Fat Hen
│ ├─Loose Silky-bent
│ ├─Maize
│ ├─Scentless Mayweed
│ └─Shepherds Purse
├─vgg.py
├─train.py
├─train_sp.py
├─prune.py
└─train_prune.py

train.py:训练脚本,训练VGGNet原始模型 vgg.py:模型脚本 train_sp.py:稀疏训练脚本。 prune.py:模型剪枝脚本。 train_prune.py:微调模型脚本。

二、正常训练

首先,我们进行正常训练出一个模型,用来和剪枝后的模型进行对比。原始模型有67.8M,体积非常大。

运行train.py,正常训练结果保存为checkpoints/vgg/best.pth

通过Tensorboard工具,我们观察到,此时的BN层的gamma系数并不稀疏,很难判断出各个通道的重要性,不利于剪枝!

在这里插入图片描述

三、稀疏训练

运行train_sp.py,稀疏化训练结果保存为checkpoints/vgg_sp/best.pth

使用tensorboard查看runs/路径下保存的log,查看稀疏化训练结果。

可以看到通过稀疏化训练,==此时的gamma系数已经呈现趋近0的分布,==我们可以对gamma接近0的channel进行剪枝!

在这里插入图片描述

核心代码
在这里插入图片描述

四、剪枝

有了稀疏化训练的模型,我们便可以通过读取checkpoints/vgg_sp/best.pth,根据gamma系数来判断网络中各个通道的重要性,剪去不重要的通道。

运行prune.py,剪枝的结果保存为checkpoints/vgg_pruned/best.pth

查看剪枝后的VGG模型,只有3.58M,体积非常小,剪枝瘦身效果非常明显

在这里插入图片描述

五、微调

对模型剪枝后,为了恢复模型的性能,我们还需要对剪枝的模型进行Finetune

运行train_prune.py

checkpoints/vgg_pruned/best.pth进行微调,结果生成在checkpoints/vgg_pruned_finetune/best.pth

在这里插入图片描述

六、总结

我们通过复现Learning Efficient Convolutional Networks through Network Slimming (ICCV 2017)论文里提到的网络大瘦身剪枝算法,完成对VGG模型进行剪枝。

在这里插入图片描述

http://www.15wanjia.com/news/181535.html

相关文章:

  • 我想在网站做宣传怎么弄手机设置管理网站
  • 临沂外贸国际网站建设中国免费域名注册平台
  • 找最新游戏做视频网站有哪些公司网站打不开
  • 做五金奖牌进什么网站长沙游戏网站开发
  • 大连专业模板网站制作主要的网站开发技术路线
  • 网站流量的重要性济南网络运营公司
  • 微信公众号怎么创建内容西安seo工作室
  • 网络公司如何开网站邯郸网站建设服务报价
  • wordpress如何改成中文字体网站单页seo
  • 最专业的网站建设公司哪家好丽江建设局网站
  • 外贸soho通过网站开发客户潮州专业网站建设报价
  • 淮北叶红军seo公司 彼亿营销
  • 遵义网站建设公司医疗网站前置审批
  • 辽宁建网站企业网站建设jz190
  • 云盘网站如何做为什么手机进网站乱码
  • 小白网站建设原创网站源码
  • 专业国外建设网站湖南网站设计
  • 网站规划和布局全屋定制十大名牌排行2023
  • 印度网站域名装修公司做网站有用吗
  • 深圳做网站开发公司网络管理员证书
  • wordpress建站教程书推荐金乡网站建设哪家便宜
  • 如何做好网站建设的要点wordpress 不显示图片
  • 竞猜网站建设oppo开发者选项在哪里打开
  • 潍坊医院网站建设济南建设银行公积金网站
  • 高性能网站建设指南 当当wordpress服装主题
  • 微网站建设微网站建设设计一个小型的局域网方案
  • 青海高端网站建设公司wordpress首页代码压缩
  • 中卫企业管理培训网站环保网页设计
  • 运城网站建设维护wordpress 移动端网页
  • 用户注册网站开发爱做片视频网站