Advertisement

论文阅读——MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

阅读量:

目录

前言

Abstract

1、Introduction

2、Prior Work

3、MobileNet Architecture

3.1、深度可分离卷积

3.2、网络结构和训练

3.3、宽度乘子:更窄的模型

3.4、分辨率乘子:减少表达

4、Experiments

4.1、模型选择

4.2减小模型中的超参数

4.3、细纹理识别

4.4、大范围地理定位

4.5、面部特征

4.6、目标检测

4.7、人脸识别

5、Conclusion


前言

此前一段时间里阅读了许多关于深度学习的论文。然而尽管面临时间上的限制却未能及时进行归纳整理。近期突然萌生了将近期阅读论文所得的学习笔记整理分享的想法。因为以往未曾撰写过博客内容所以排版效果可能不尽如人意。对于专业知识中的疑难问题也欢迎各位专家赐教。

Abstract

本文的主要工作:

  • 开发了一款适用于移动端设备的高效网络架构MobileNets。
  • 该架构通过深度可分类卷积实现轻量化的同时保持了较高的精度水平。
  • 在其所属图像分类基准测试集上与多个现有模型进行了系统性对比实验,
  • 以验证该方法的有效性。

1、Introduction

文章这一部分主要是简单地进行了概述,并对深度网络的发展与应用进行了描述之后,提出了名为MobileNets的网络架构,并强调了在移动设备应用场景中的有效性。

2、Prior Work

文章的这一部分内容主要阐述了收缩与小型化在网络管理中的应用策略,并深入探讨了相关网络架构及其研究成果

1、相关网络:

  • Inception-based network: Through the use of depth-wise separable convolutions, the computational burden in the initial stages is notably reduced.
    • Flattened network: The architecture is constructed by fully decomposed convolution blocks.
    • Xception network: It demonstrates an approach for proportionally expanding depth-wise separable convolution kernels.
    • SqueezeNet network: The bottleneck methodology has been employed to achieve an extremely compact architecture.

2、获得小型网络的方法:

  • 实现网络压缩:采用乘积量化方法、结合哈希表辅助策略以及融合修剪策略等技术手段完成。
    • 蒸馏过程:通过大尺寸模型对小尺寸模型进行参数优化与知识转移。

3、MobileNet Architecture

3.1、深度可分离卷积

本节重点阐述普通卷积与深度可分离卷积在运算架构方面的差异,并对它们所需计算资源进行对比分析。假设

F

为输入特征图,

D_{K}

为卷积核的尺寸,

D_{F}

为输出特征图

G

的尺寸,

M

是输入通道数,

N

是输出通道数。

1、标准卷积

  • 假设步长为1,并且有填充,则标准卷积计算特征图的表达式如下所示:
  • 很明显,进行一次标准卷积的计算量如下:

*卷积一般具有两个主要功能:首先通过卷积核(滤波器)从图像中提取特征;其次将提取出的特征进行融合处理以增强信息表达能力。通常,在标准卷积架构中这两个步骤是同时完成的;而在深度可分离卷积结构中则是分阶段完成这两个步骤

标准卷积的卷积核

2、深度可分离卷积

该层采用双层卷积结构完成特征提取:其中包含深度可分化的卷积层与逐点卷 convolution层。
深度可分化的组件: 该架构基于深度可分化的机制将输入特征图的所有通道独立提取,在此过程中对各自对应的通道信息分别施加独立滤波器(即每个滤波器在处理时仅关注特定通道的信息)。进而推导出相应的数学表达式及其计算复杂度。

深度分离卷积计算特征图的表达式

深度分离卷积计算特征图的计算量

深度分离卷积的卷积核

  • 逐点卷积: 这一过程主要涉及通过滤波器分解得到的特征进行整合处理。具体步骤包括利用多通道滤波器提取并分离出不同方向的空间信息,并将这些信息按照特定规则进行融合处理以增强目标检测的鲁棒性。
N

个大小为1×1、深度为

M

的卷积核,对深度分离卷积输出的深度为

M

的特征图进行统一卷积。计算量为

Mdot Ndot D_{F}dot D_{F}

逐点卷积的卷积核

  • 因此计算一次深度可分离卷积的总体计算量为:

相应地, 通过以下具体计算深度可分离卷积和标准卷积的计算量, 显然可以看出深度可分离卷积的计算量明显小于标准卷积.

3.2、网络结构和训练

1、网络结构

  • MobileNet共有28层,总体结构如下表所示:
  • 在每层卷积后都会插入一个BN层和ReLU激活函数层,如下图所示:

左图为一个标准卷积的结构,右图为一个深度可分离卷积的结构

2、训练设置:

深度可分离卷积结构将计算复杂度几乎完全转移到1*1卷积中,并主要依赖于通用矩阵乘法(GEMM)通过采用高度优化技术来实现高效的矩阵运算。

MobileNet中各种结构所需参数和计算量在全局的占比

在这种情况中,在小型网络不容易发生过拟合的前提下,MobileNet通常不采用正则化技术和数据增强方法(从技术角度来看,在这种情况下)

3.3、宽度乘子:更窄的模型

为了方便在各种设备上应用,文章中设置了一个宽度乘子lphan eft \( 0,1 ight 用于改变网络的宽度,即输入和输出通道的个数。

lpha =1

时是基准MobileNet,而

lpha < 1

时是减小的MobileNet。输入输出的通道数分别变为

lpha M

lpha N

,因此在引入宽度乘子后一层深度可分离卷积的计算量为:

3.4、分辨率乘子:减少表达

文章中设置的第二个超参数是分辨率乘子

ho

旨在缩减各层输出的空间尺寸 ,通过降低其空间分辨率来减少计算开销 ,引入

ho

lpha

的模型计算量公式为:

不同设置的卷积层所需要的计算量和参数量

4、Experiments

4.1、模型选择

文章首先将分别采用常规卷积 MobileNets 和深度可分离卷积 MobileNets 进行详细比较分析。如表所示, 可以看出这一技术路线在保证模型性能的同时显著降低了运算开销。

随后作者对比了轻量化版本与缩减版MobileNets网络在性能指标上的差异,并列出了具体的数据表现。

4.2减小模型中的超参数

  • 作者首先不断减小MobileNets的宽度乘子
lpha

,并观察其精度的变化,如下表所示。可以看到在

lpha

为0.25前,精度的下降都是比较平稳的。

  • 其次将
lpha

固定为1,不断减小分辨率乘子

ho

,并观察其精度变化,如下表所示随着

ho

的减小,精度的下降是比较平稳的。

  • 下图显示的是宽度乘子
lpha n eft  1,0.75,0.5,0.25 ight

与分辨率为

eft  224,192,160,128 ight

进行组合形成的16个模型在ImageNet精度和计算量之间的权衡。

  • 下图显示的是宽度乘子
lpha n eft  1,0.75,0.5,0.25 ight

与分辨率为

eft  224,192,160,128 ight

进行组合形成的16个模型在ImageNet精度和参数量之间的权衡。

  • 下表使用基准MobileNets与VGG16和GoogleNet进行了对比。
  • 使用宽度乘子
lpha =0.5

,分辨率为160的缩小的MobileNets与Squeezenet和AlexNet进行对比。

4.3、细纹理识别

*作者进行了数据集的收集工作,并选取了一个规模更大的训练集,并且该训练集具有更高的噪声水平。为了训练一个狗的识别模型, 该训练集被用于进行模型的训练。

4.4、大范围地理定位

4.5、面部特征

4.6、目标检测

4.7、人脸识别

5、Conclusion

  • 开发了一种基于深度可分离卷积的新型 MobileNets 网络,并通过配置参数以优化网络规模以适应各类设备的需求。
  • 采用对比分析的方法对 MobileNets 进行评估,并探讨其在各种应用场景中的应用前景。

全部评论 (0)

还没有任何评论哟~