MobileNet 模型
MobileNet 模型是 google 在 2017 年针对手机或者嵌入式提出轻量级模型。提出 MobileNet 这样高效模型的是 google 的 Andrew G.Howard, Menglong Zhu 等人。
背景
之前介绍的 AlexNet 到 ResNet 这些神经网络结构为了得到更高准确度,更倾向于把网络做的更深,更复杂,可想而知这样网络结构势必带来大量参数,消耗大量计算资源,但是考虑到一些需要性能和速度,而且设备资源有限情况下,我们需要一个准确度可以接受,效率高网络结构,这就是 MobileNet 由来的动机。
- 自动驾驶
- 移动设备上目标运行识别
自从 2016 年,大家更专注如何将模型应用到产品,也就是从讲故事做 demo 阶段来到了如何将其应用商用上,这样也就是必须考虑性能,可行性。
- SqueezeNet
- MobileNetV1 ShuffleNet
- MobileNetV2 NASNet
- MobileNetV3 MnasNet
接下来通过具体数据来说明 mobileNet 相对其他网络结构其特点,在 ImageNet 数据集上,对比 VGG16 在参数减少了 30 多倍情况下,准确率与 VGG16 只相差了 0.9%
实现方法
- 压缩模型: 在已经训练好的模型上进行压缩,使得网络携带更少的网络参数
- 设计轻量级模型: 设计出更高效的网络计算方式来减少网络参数
主体结构
mobilenet_002.jpg- Conv: 表示标准卷积
- s2: 卷积的步长 stride 为 2
- Avg Pool:平均池化
- FC: 全连接
- dw: 深度卷积
将 DW 卷积和 PW 卷积看作两层,一共 28 层。
卷积块
引入了深度可分离卷积将卷积替换为 DW 卷积和 PW 卷积的组合。
imagenet_003.jpeg这里看右侧的卷积块结构,在深度可分离卷积并不是 3 x 3 DW 卷积直接连接了 1 x 1 的 PW 卷积而是通过 BN 和 ReLU 层后才连接上 PW 卷积。BN 层作用是对输入层进行归一化,这样可以大大提升模型泛化能力,
NB层
convolutional_filter.jpg
- 输入(F)
DW_PW.jpeg
- DW 卷积: 通道数为 1 的卷积核,负责 1 个通道也就是卷积核个数与输入通道输出一致,第一步是探索空间
- PW 卷积: 逐点卷积核大小为 1 x 1 x M ,每一个像素的区域。通道之间丰富联系,所以还需要 PW 卷积来实现通道间的丰富联系。
在 DW 卷积在空间上区域与区域之间的稀疏连接,在通道上是,PW 是特殊普通卷积,特殊在卷积核的大小,每一次卷积空间是一个像素点,通道上也是密集连接。
标准卷积和深度可分离卷积
标准卷积 深度可分离卷积 运算特点 每一个卷积核的通道与输入通道相同,每个通道单独做卷积运算后相加 DW卷积: 一个卷积核只有一个通道,负责一个通道。PW卷积:会将上一步的特征图在通道方向进行扩展 公式表示 mobilenet_v2_001.jpeg 大致看一下 v2 网络结构
mobilenet_v2_003.jpeg mobilenet_v2_002.jpeg
这里还需要说 ReLU6,与不同 ReLU 不同,限制了最大输出为 6 ,这是为了在移动设备也能有很好的数值分辨率。
mobileNet V3
在 2019 年 google 提出了 v3 版本,
-
新的激活函数(h-swish): h-swish 是基于 swish 激活函数的改进,所以先了解一下 swish, swish 具备无上届有下界、平滑、非单调的特性。并且 swish 在深层模型上的效果优于 ReLU
seblock.png-
调整 Reduction 比率
根据实验得出 r= 8,16 表现都不错,推荐 16 -
然后就是在 Squeeze 阶段是使用 Max pooling 还是 Avg pooling,结果是 Avg pooling 更好
-
Excitation 的探索
<img src="../images/seneg_005.jpeg">
在早期的卷积层提取一些基础共性特征,后期的卷积层偏于提取一些独特的特征,5-2 是拐点(饱和状态),移除后期的卷积层可以减少参数量,同时模型不会受到太大影响。
-
网络结构
MobileNet v2 模型中反转残差结构和变量利用 1 x 1 卷积,以便于扩展到高纬的特征空间,虽然对于提取丰富特征进行预测十分重要,但却额外增加计算的开销与延时。为了在保留高纬特征的前提下减少延时,将平均池化前的层移除并用 1 x 1 卷积来计算特征图
简单总结
V1
- 深度可分离卷积: DW 和 PW 组合替换常规卷积来达到减少参数数量的目的
- 超参数: 改变输入输出通道数和特征尺寸
V2
- 线性瓶颈结构
- 逆向残差结构
V3
- h-swish 激活函数
- SENet 结构
本文标题:2020 深度学习 mobileNet
本文链接:https://www.haomeiwen.com/subject/ohbbuktx.html
深度阅读
- 您也可以注册成为美文阅读网的作者,发表您的原创作品、分享您的心情!
热点阅读
网友评论