Squeezenet alexnet-level accuracy with 50x fewer parameters and less 0.5MB model size

项目网址

在和AlexNet同等精确度的情况下,SqueezeNet的参数少了50倍,最后模型大小减小到510倍。

架构设计策略:主要有3个。
1. 使用1X1的滤波器代替3X3的滤波器。
2. 通过1方法来减少输入通道个数。
3. 推迟下采样,由于下采样的推迟,特征图增大,可以提高分类精确度,降低网络深度。
方法1和2是保持网络性能基础上使用;方法3是为提高网络性能使用。

论文提出的Fire module架构能够成功的实现策略1,2,3。如图1。

这里写图片描述

有3个可调节参数:s 1x1 表示squeeze层滤波器个数,使用策略1;e 1x1 和e 3x3 分别表示expand layer层1x1和3x3的滤波器个数。s 1x1 的大小小于e 1x1+e 3x3 ,使用策略2。

Squeezenet架构:
如图2。论文对图2第一张图网络改进,发现中间网络结构效果最好。

这里写图片描述

在conv1, fire4, fire8, 和conv10后边加降采样,使用策略3。剧吐参数如表1。

这里写图片描述

Squeezenet架构的其它细节
1.expand layer层1x1和3x3的输出相同。方法是在3x3之前padding。
2. squeeze and expand layers后加ReLU。
3. fire9 module后增加Dropout(0.5)。
4.没有全连接层。
5.学习率初始值为0.04,在训练过程中线性减小。

一些探索:
1. 参数:第一个Fire module的特征图输出个数,incr e = 128,freq = 2,3x3占expand输出比例为0.5,squeeze占expand输出的比例(squeeze ratio)为0.125。

这里写图片描述

base e 为第一个Fire module的输出个数,i为第几个Fire module,incr e 和freq为参数,计算的ei为第i层的Fire module的输出个数。
2. 探索squeeze ratio(SR,squeeze占expand输出的比例)为多少合适?实验结果如图3(a)。其它参数为:base e = 128, incr e = 128, pct 3x3 = 0.5, and freq = 2。实验SR比例范围[0.125, 1.0],当SR>0.75后,accuracy不在增加。
3.expand layer层1x1和3x3的比例多少合适?结果如图3。

这里写图片描述

看出一半的3x3 filters后accuracy停滞于85.6%,再增加3x3 filters的比例,accuracy不会提高。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值