美文网首页个人学习
2020 深度学习 mobileNet

2020 深度学习 mobileNet

作者: zidea | 来源:发表于2020-10-02 19:29 被阅读0次

    MobileNet 模型

    MobileNet 模型是 google 在 2017 年针对手机或者嵌入式提出轻量级模型。提出 MobileNet 这样高效模型的是 google 的 Andrew G.Howard, Menglong Zhu 等人。

    背景

    之前介绍的 AlexNet 到 ResNet 这些神经网络结构为了得到更高准确度,更倾向于把网络做的更深,更复杂,可想而知这样网络结构势必带来大量参数,消耗大量计算资源,但是考虑到一些需要性能和速度,而且设备资源有限情况下,我们需要一个准确度可以接受,效率高网络结构,这就是 MobileNet 由来的动机。

    • 自动驾驶
    • 移动设备上目标运行识别
    mobilenet_001.jpg

    自从 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