Skip to content

MobileNet

MobileNet 是由 Google 团队提出的一系列轻量级卷积神经网络,专为移动端和嵌入式设备设计。其核心目标是在保持较高精度的同时大幅减少模型参数量和计算量,适用于资源受限的场景。

深度可分离卷积(Depthwise Separable Convolution)

  • 深度卷积(Depthwise Convolution)

  每个输入通道独立进行卷积,滤波器数量与输入通道数相同。

  • 逐点卷积(Pointwise Convolution)

  1×1 卷积,用于合并通道信息。

  • 计算量对比:

  标准卷积计算量:DK×DK×M×N×DF×DF

  深度可分离卷积计算量:

DK×DK×M×DF×DF+M×N×DF×DF

  其中:DK 为卷积核尺寸,M 为输入通道数,N 为输出通道数,DF 为特征图尺寸。

MobileNet-V1(2017)

首次引入深度可分离卷积,使用 ReLU6 激活函数。

MobileNet-V2(2018)

引入倒残差结构和线性瓶颈,使用线性激活函数。

  • 倒残差结构(Inverted Residuals):先通过 1×1 卷积升维,再深度卷积,最后降维。
  • 线性瓶颈(Linear Bottleneck):去除残差连接中的非线性激活,减少信息损失。

MobileNet-V3(2019)

引入 h-swish 激活函数(替代部分 ReLU6)和 SE 注意力模块。

h-swish(x)=xReLU6(x+3)6

ReLU6

ReLU6(x)=min(ReLU,6)

swish

swish 激活函数具有:无上界、有下界、平滑、非单调等特点,可使神经网络层具有更丰富的表现能力。但 swish 函数有个缺点,计算量比较大,公式如下:

swish(x)=xsigmoid(βx)

U-Net-MobileNet

将 MobileNet 作为 UNet 的编码器(Encoder),用于图像分割任务的轻量化模型。

结构

alt text