轻量级网络之mobilenet_v1详解

轻量级网络之mobilenet_v1详解

前言:学习网络结构有一段时间了,记录下mobilenet_v1的结构
论文地址:https://arxiv.org/pdf/1704.04861.pdf

一、mobilenet_v1 研究背景

1.随着Alexnet 获得2012年的 ILSVRC 2012的挑战冠军,通常的趋势是通过搭建更深的和更复杂的网络来获得更高的准确率。这些进步虽然可以提高精度,但在推理速度和模型大小却不一定是高效的。
2.考虑在有限算力的平台上需要实时获得识别任务, 提出在移动端或者嵌入式中的轻量级神经网络。

二、如何实现轻量级神经网络

1.将标准的卷积核改成深度可分离卷积。

1.1 标准卷积(以3*3 为例子)
在这里插入图片描述

标准卷积计算量 = H * W * Dk * Dk * M * N

1.2 深度可分离卷积对比
在这里插入图片描述
参数计算量:包括深度卷积和逐点卷积
其中深度卷积计算量 = H * W * Dk * Dk * M
逐点卷积计算量 = M * N * 1 * 1 * H * W

1.3 标准卷积与深度可分离卷积计算量之比

倍率 = (H * W * Dk * Dk * M + M * N * 1 * 1 * H * W ) / (H * W * Dk * Dk * M * N )
= 1/N +1/( Dk * Dk)

1.4结论
深度可分离卷积的计算量是标准卷积 的 1/N +1/( Dk * Dk)倍。通常情况下,N (输出通道)远大于卷积核尺寸,故1/N +1/( Dk * Dk) 近似等于 1/( Dk * Dk)。当卷积核的大小为Dk =3 时,深度可分离卷积的计算量约为标准卷积的1/9倍。
在这里插入图片描述

2.提供宽度因子和图像分辨率因子来控制模型的大小及输入图片的大小。

2.1宽度因子
在有些应用场景中,可能需要更小的模型。因此引入了一个称为宽度因子的非常简单的参数α。宽度因子α的作用是在每层均匀地缩小网络。对于给定的层并且宽度乘法器α,那么输入通道M的数量变为αm,输出通道n的数量变为αn。α的取值范围通常为(0,1],当然大于1也可以。在速度、大小和精度上做权衡。
在这里插入图片描述

2.2图像分辨率因子
减少计算的第二个超参数,分辨率因子ρ。通过减少图片的输入尺寸来减少计算量。
原来图像大小为H * W,加入分辨率因子后图像大小为 ρH * ρW。通常取值范围为(0,1]
在这里插入图片描述
2.3 宽度因子和分辨率因子结合,深度可分离卷积的计算量如下所示

计算量 = DK · DK · αM · ρDF · ρDF + αM · αN · ρDF · ρDF。

三、网络结构介绍

1.mobilenet_v1 网络结构如下:
在这里插入图片描述
2.参数量如图所示
在这里插入图片描述

四、网络模块介绍

1.Conv (标准卷积)
在这里插入图片描述
2. Depthwise Conv + Pointwise Conv (深度可分离卷积)
在这里插入图片描述
3.Avg Pool (平均池化)
平均池化:计算图像区域的平均值作为该区域池化后的值。常规的平均池化计算过程如下图所示
在这里插入图片描述

注意:mobilenet_v1中平均池化采用的步长(stride =1)、卷积核尺寸为7*7。步长为1,平均池化后输入的特征图大小不变,依然为7 * 7 * 1024。

4.FC(全连接层)
在这里插入图片描述
全连接层将前面平均池化层的特征图拉成一维的向量:7 * 7 * 1024 ——> 1 * 1 * 50176
将一维向量 1 * 1 * 50176 乘以 权重,然后加上偏置,获得 1 * 1 * 1024 的向量。

5.SoftMax
将全连接层的一维向量 通过公式 获得每一类的分数,公式如下:
在这里插入图片描述
其中,Zi为第i个节点的输出值,C为输出节点的个数。通过以e为底数的Zi 次方,将第i 个节点的输出值(实数)映射到0到正无穷;通过归一化的方法,将映射的值转换成0-1的概率值,也就是类别的分数值。

  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: MobileNet V1 SSD是基于MobileNet和SSD的目标检测网络模型,用于在图像中预测物体的位置和类别。它是一种轻量级的模型,适合在移动设备和资源有限的环境中部署。 MobileNet是由Google开发的一种轻量级卷积神经网络架构,采用深度可分离卷积来减少参数数量和计算量。它将标准卷积操作分解为深度卷积和逐点卷积,从而在保持一定的准确率的同时,大大减少了网络的复杂度。 SSD(Single Shot MultiBox Detector)是一种基于卷积神经网络的目标检测算法,可以在一次前向传播中同时预测多个不同尺度的目标边界框并进行分类。SSD采用了多层特征图来预测不同尺度的目标,并使用了多个不同大小的锚框来提高模型的泛化能力。 MobileNet V1 SSD结合了MobileNet和SSD的优点,使用MobileNet作为特征提取网络,并在其之后添加了一系列特定尺度的卷积层和预测层。这些预测层用于输出每个特征图上每个锚框的类别和边界框的偏移量。模型通过训练来学习如何将这些预测结果转化为最终的目标框。 VOC(Visual Object Classes)是一个广泛使用的目标检测和图像分割数据集,包含了20个不同类别的物体。MobileNet V1 SSD可以使用VOC数据集进行训练,从而学习识别和定位VOC数据集中的目标。 总之,MobileNet V1 SSD网络的VOC预测模型是一种基于MobileNet和SSD的轻量级目标检测模型,用于在图像中预测VOC数据集中物体的位置和类别。它结合了MobileNet的轻量级和SSD的多层特征图预测的优点,适合在移动设备和资源有限的环境中进行目标检测任务。 ### 回答2: MobileNetV1-SSD(Single Shot MultiBox Detector)是一种基于MobileNetV1的目标检测网络。该网络专门设计用于在计算资源受限的移动设备上进行实时目标检测。 MobileNetV1是一种轻量级卷积神经网络,具有较低的参数量与计算量。它采用深度可分离卷积作为基本的卷积操作,将传统的标准卷积分解为深度卷积和逐点卷积,从而减少参数数量和计算复杂度,并能保持相对较好的识别能力。 MobileNetV1-SSD结合了MobileNetV1轻量级特性与SSD的目标检测框架。SSD通过在特征图上应用一系列的卷积和池化操作,来检测不同尺度的目标。MobileNetV1-SSD通过在MobileNetV1的基础上加入一些额外的卷积层和预测层,以获得每个尺度的目标预测结果。 MobileNetV1-SSD针对VOC(Visual Object Classes)数据集进行了训练,VOC是一种常用的目标检测数据集,包含20个不同类别的物体。在预测模型阶段,MobileNetV1-SSD会将输入图像通过深度可分离卷积网络进行特征提取,然后在不同尺度的特征图上进行目标检测。最后,根据预测结果和置信度阈值,提取出置信度高的目标框,并输出对应的类别信息和置信度。 通过MobileNetV1-SSD网络的VOC预测模型,我们可以在计算资源受限的移动设备上进行实时的目标检测任务,能够准确地检测出各种不同类别的物体。这种轻量级的模型结构使得我们能够在资源有限的情况下,快速地进行目标检测,为移动设备上的实时应用提供了有力支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值