MobileNet V1 V2系列学习笔记

MobileNet 系列详解

MobileNet V1

1.主要贡献

提出了深度可分离卷积结构,大大减小了计算量和模型的大小。

2.深度可分离卷积

标准卷积的作用是过滤特征合并,而深度可分离卷积将标准卷积的过滤与组合分开做,分解为:深度卷积(Depthwise)逐点卷积(Pointwise)

  • 深度卷积对每个输入通道应用单个过滤器
  • 逐点卷积(1×1卷积)创建线性组合
    MobileNet V1 V2系列学习笔记_第1张图片

上图右边是深度可分离卷积对Depthwise和Pointwise两层都使用Batchnorm和Relu非线性激活

3.深度可分离卷积与标准卷积的计算量对比

假设
输入feature map F D F ∗ D F ∗ M D_F*D_F*M DFDFM
输出feature map G D F ∗ D F ∗ N D_F*D_F*N DFDFN
卷积核K D K ∗ D K ∗ M ∗ N D_K*D_K*M*N DKDKMN
那么:
标准卷积计算的开销: D K ∗ D K ∗ m ∗ N ∗ D F ∗ D F D_K*D_K*m*N*D_F*D_F DKDKmNDFDF
深度可分离卷积的开销: D k ∗ D k ∗ M ∗ D F ∗ D F + M ∗ N ∗ D F ∗ D F D_k*D_k*M*D_F*D_F+M*N*D_F*D_F DkDkMDFDF+MNDFDF

4. 两个超参数

  • 宽度倍增系数 α α α:Thinner Models,对每一层均匀地细化网络
    • 输入通道数 M α Mα Mα,输出通道数 N α Nα Nα
    • 开销: D k ∗ D k ∗ α M ∗ D F ∗ D F + α M ∗ α N ∗ D F ∗ D F D_k*D_k*αM*D_F*D_F+αM*αN*D_F*D_F DkDkαMDFDF+αMαNDFDF
    • α ∈ ( 0 , 1 ] α \in (0,1] α(0,1],一般用 ( 0.75 , 0.5 , 0.25 ) (0.75,0.5,0.25) (0.75,0.5,0.25),降低模型的宽度
  • 分辨率系数 ρ ρ ρ:Reduced Representation
    • 开销: D k ∗ D k ∗ α M ∗ ρ D F ∗ ρ D F + α M ∗ α N ∗ ρ D F ∗ ρ D F D_k*D_k*αM*ρD_F*ρD_F+αM*αN*ρD_F*ρD_F DkDkαMρDFρDF+αMαNρDFρDF
    • ρ ∈ ( 0 , 1 ] ρ \in (0,1] ρ(0,1],使网络输入分辨率为224,192,160,128,降低输入图像的分辨率。

MobileNet V2

1.主要贡献

  • 提出了一种倒置的线性瓶颈残差(inverted residual with linear bottleneck)
  • 1 × 1 1×1 1×1卷积层代替Relu6(普通的ReLU但是限制最大输出值为 6)

2.网络结构

  • MobileNet V1的结构如下图,没有residual并且带了Relu:
    MobileNet V1 V2系列学习笔记_第2张图片

  • MobileNet V2的结构如下图,带了residual并且去掉了Relu:
    MobileNet V1 V2系列学习笔记_第3张图片

    • 原始的residual block:压缩->卷积特征提取->扩张
      MobileNet V1 V2系列学习笔记_第4张图片

    • Inversed residual :扩张(提升通道数,获取更多特征)->卷积提取特征->压缩

      • 去掉了Relu6直接线性输出的原因在于本来特征就已经被压缩了,若再经过Relu,又会损失一部分特征
        在这里插入图片描述

参考博文
轻量级模型:MobileNet V2
MobileNetV1 & MobileNetV2 简介

你可能感兴趣的:(Deep,Learning,卷积,深度学习,计算机视觉,神经网络,卷积神经网络)