论文笔记 SQUEEZENET: ALEXNET-LEVEL ACCURACY WITH 50X FEWER PARAMETERS AND <0.5MB MODEL SIZE

0.  前言

- 大概记一下SqueezeNet读后的一些记录,老文章了,网上很多笔记

- 文章结构写的很清晰,主题也很明确

- 本篇文章就是简单粗暴的从design space入手,凭空创造了一个网络,设计网络的时候有几条准则和思路(下面记一下正文里的点)

 

1.  从几个角度讲了一下CNN的发展

 ① 微架构(MicroArchitecture):

    就是由少量layer组成的小模块,调参的时候通常针对这样的模块调整,而不是针对更细粒度的layer调整。

    这种模块化的设计,在近年很多网络里面都有:什么double conv,inception block,dense block 等等

 ② 宏架构(MacroArchitecture):

   提到了旁路连接(bypass connection),如resnet。这种是宏角度上去对网络进行的改进

 ③ 设计空间(Design Space):

   文中提到了一个“shape of NN design space

 

2.  网络设计策略

 ① Replace 3x3 filters with 1x1 filters

就是将(大部分的)3x3filters(conv层、pool层里的)换成1x1的尺寸,能够大幅降低计算量

 ② Decrease the number of input channels to 3x3 filters

降低了传给这些filters的输入的尺寸,①②两条都是降低计算量的

 ③ Downsample late in the network so that convolution layers have large activation
maps

这里的意思是,大部分网络都是开头的几层就开始降采样(stride>=2),这样从中间到末尾的网络层,那些隐层输出的尺寸都会很小。

这里有一句文章的核心观点:

Our intuition is that large activation maps (due to delayed downsampling) can lead to higher classification accuracy,这句话是说大的激活图(一般卷积后面都要有激活层)能够导致更高的分类精度(可能是保留的信息更多)

而激活图的尺寸由(1)输入尺寸(2)降采样层的选择决定

 

所以在开头的几层开始降采样和文章的这个观点不符,所以策略的第三条就是把降采样拖延到很后面再做。

 

3.  Fire Module(微架构)

组成:

4.  SqueezeNet(宏架构)

一个独立的卷积层(conv1)、

八个Fire模块(fire2-9)、

一个卷积层(conv10)、

一个softmax层

具体每层参数配置如下:

5. 超参数说明

看了一下一个高阅读量的同论文的论文笔记博客,https://blog.csdn.net/csdnldp/article/details/78648543,这篇的5.1里记录了一些文章中做消融实验部分的超参数的说明。但是博客有一些超参数的解释是错的(我在他博文底下一不小心生气地指出了),在他的基础上我修正一下,写在这里:

base_e第一个Fire module中expand filter的个数

freq“增加expand filter”的频率

incre_e:增加的incre_e个expand filter,每freq个Fire module之后增加incre_e个expand filter

e_i:第i个Fire module中,expand filters的个数

SR:压缩比,即the squeeze ratio ,为squeeze layer中filter个数除以Fire module中filter总个数得到的一个比例

pct_{3x3}:在expand layer有1∗1和3∗3两种卷积,这里定义的参数是3∗3卷积个占卷积总个数的比例
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值