MobileNet V3(2019)

创新点

1.引入SE结构

MobileNetV3 的另一个新颖想法是在核心架构中加入一种名为「Squeeze-and-Excitation」的神经网络(简称 SE-Net,也是 ImageNet 2017 图像分类冠军)。具体而言,就是通过学习来自动获取到每个特征通道的重要程度,然后依照这一结果去提升有用的特征并抑制对当前任务用处不大的特征。


MobileNet V2的bottlenet结构


MobileNet V3的block结构,即在V2的bottlenet结构中加入了SE结构,并且放在了depthwise filter之后,当stride == 1且 input_c == output_c 才有shortcut连接

 depthwise卷积不改变通道数


SE模块(注意力机制)图解

第一个全连接层FC1 的channel变为输入的1/4,第二个全连接层FC2不变,即等于池化后的通道数

要用FC2的输出(经过H-sig激活函数)去乘全局平均池化前的输出,相当于给此输出一个权重

2、修改尾部结构

在mobilenetv2中,在avg pooling之前,存在一个1x1的卷积层,目的是提高特征图的维度,更有利于结构的预测,但是这其实带来了一定的计算量了,所以这里作者修改了,将其放在avg pooling的后面,首先利用avg pooling将特征图大小由7x7降到了1x1,降到1x1后,然后再利用1x1提高维度,这样就减少了7x7=49倍的计算量。

为了进一步的降低计算量,作者直接去掉了前面纺锤型卷积的3x3以及1x1卷积,进一步减少了计算量,就变成了如下图第二行所示的结构,作者将其中的3x3以及1x1去掉后,精度并没有得到损失。这里降低了大约15ms的速度。

3、修改channel数量 

修改头部卷积核channel数量,mobilenet v2中使用的是32 x 3 x 3,作者发现,其实32可以再降低一点,所以这里作者改成了16,在保证了精度的前提下,降低了3ms的速度。作者提供了两个版本的v3,分别是large和small,对应于高资源和低资源的情况。两者都是使用NAS进行搜索出来的

exp size:Inverted Residuals(倒残差结构)中1*1升维(PW)的卷积核个数

#out:Inverted Residuals(倒残差结构)中1*1降维(PW)的卷积核个数

NL:激活函数。hs:h-swish激活函数;RE:Relu6激活函数

4、非线性变换(新激活函数)的改变

作者发现一种新出的激活函数swish x(如下) 能有效改进网络精度,但是计算量太大了。

作者使用ReLU6(x+3)/6来近似替代sigmoid,进行了速度优化,具体如下:

ReLU6(x) = min(max(x, 0), 6)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值