MobileNet理论

MobileNet v1

亮点:

  • Depthwise Separable Conv:使用DW+PW卷积代替传统卷积,极大减少计算量
  • 超参数α和β,α用来调整网络中卷积核个数,β用来调整输入图片尺寸

缺点:

  • DW卷积部分的卷积核容易废掉,即卷积核大部分参数为0

MobileNet v2

亮点:

  • Inverted Residuals(倒残差结构)
  • Linear Bottlenecks

倒残差结构

在这里插入图片描述

  • 实验发现在MobileNetv1中,深度卷积核(DW卷积核)的参数较多为0,也就是其卷积核没有发挥提取特征作用。那么作者先通过1*1卷积将维度上升,再使用深度卷积,深度卷积的输入输出通道数更高,就能够提取更多的信息
  • 原残差结构先降维后升维,倒残差结构先升维后降维
  • 原残差结构中间采用3*3传统卷积,倒残差结构采用3*3DW卷积
  • 原残差结构激活函数采用Relu,倒残差结构激活函数采用Relu6
  • Relu6:
  • 在这里插入图片描述
  • 倒残差结构图:
  • 在这里插入图片描述
  • 当stride=1且输入输出特征矩阵shape相同时采用shortcut连接,否则不采用(如右侧结构)
  • 倒残差结构表
  • 在这里插入图片描述
  • k为输入channel,k‘为输出channel,t即为α(调整卷积核个数的超参数),s为步距

Linear Bottlenecks

  • 倒残差结构的最后一层不使用Relu6激活函数,而是使用线性激活函数
  • 作者发现当信息从高维空间经过非线性映射到低维空间时,会发生信息丢失,所以在倒残差结构中,进行降维操作时,使用线性激活函数(实现时就是不使用激活函数)

MobileNet V2结构

在这里插入图片描述

  • bottleneck指倒残差结构,t为扩展因子(控制卷积核个数,见上文),c为输出channel,n为bottleneck重复次数,s为步距(注意此处s若为bottleneck所在层的步距,则s指第一层(共n层)bottleneck的步距,后面的bottlneck的步距仍为1),k为分类个数
  • 最后一层1*1*1280的卷积层和全连接层起到相同的作用

MobileNet V3

亮点

  • 修改了block结构
  • 使用NAS搜索参数
  • 重新设计耗时层结构

bneck结构

在这里插入图片描述

  • 加入SE模块(注意力)
  • 更新了激活函数
SE(注意力机制)
  • 将每个channel池化处理为一个值,形成一个一维向量,之后用两个全连接层得到一个一维的长度为原channel数的向量,此向量代表原特征矩阵各个channel的权重,因此权重与channel分别相乘再相加得到最后的特征矩阵
  • 其中第一个全连接层输出特征数为channel数的1/4,第二个全连接层输出特征数为channel数
  • 举例:在这里插入图片描述
重新设计激活函数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • swish激活函数能提高准确率,但计算,求导复杂,且对量化过程不友好;
  • h-swish与swish效果类似,但解决了上述问题,性能更好

重新设计耗时层结构

  • 减少V2第一个卷积核个数32->16
  • 精简LastStage(使用NAS搜索出的网络结构的最后一部分):在这里插入图片描述在这里插入图片描述
  • 作者发现精简此部分结构几乎不会对准确率造成影响

MobileNet V3网络结构

在这里插入图片描述

  • exp size:第一个1*1卷积升维操作中要升到的维度;#out:降维后的channel;bneck后的3*3表示DW卷积核尺寸为3*3;SE“是否使用注意力机制;NL为除SE和最后一层外的其他卷积层后的激活函数(SE有专门的结构,最后一层使用线性激活函数同V2);HS:hard-siwsh;RE:Relu;s:DW卷积的步距;NBN:表示后面不使用BN结构
  • 注意第一个bneck的expsize与input的channel都为16,因此第一个bneck不要加入1*1卷积层进行升维
  • 同V2,只有s=1且输入输出channel一致时才有shortcut连接

参考:https://blog.csdn.net/flyfish1986/article/details/97017017

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值