深度学习经典网络: MobileNet系列网络(MobileNet v1)

本文详细介绍了MobileNet v1网络,重点关注其核心——深度可分离卷积。深度可分离卷积由深度卷积和逐点卷积组成,大大减少了计算量和参数数量。MobileNet v1通过宽度因子和分辨率因子实现模型的灵活性,适用于资源受限的设备。文章还提供了实验结果和代码链接,展示了MobileNet v1在轻量化网络结构方面的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MobileNet v1:https://arxiv.org/abs/1704.04861
keras 代码:https://github.com/keras-team/keras-applications/blob/master/keras_applications/mobilenet.py

0. 前言

  可分离卷积通常包含两种类型,一种是空间可分离卷积,另一种是深度可分离卷积。而这两种方式都能减小卷积操作的计算量, 空间可分离就是将一个大的卷积核变成两个小的卷积核,比如将一个3×3的核分成一个3×1和一个1×3的核,像Inception系列网络就采用的这种方式:
[ 1 2 3 0 0 0 2 4 6 ] = [ 1 0 2 ] × [ 1 2 3 ] \left[\begin{array}{lll}{1} & {2} & {3} \\ {0} & {0} & {0} \\ {2} & {4} & {6}\end{array}\right]=\left[\begin{array}{l}{1} \\ {0} \\ {2}\end{array}\right] \times\left[\begin{array}{lll}{1} & {2} & {3}\end{array}\right] 102204306=102×[123]
另一种深度可分离卷积则是本文所采用的方式,深度可分离卷积就是将普通卷积拆分成为一个深度卷积和一个逐点卷积。深度卷积对输入每一个通道进行卷积,然后利用逐点的卷积进行升维。

1. 深度可分离卷积

1.1 与普通卷积对比

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

图 1 两种卷积对比

普通卷积: 输入一个12×12×3的一个输入特征图,经过5×5×3的卷积核卷积得到一个8×8×1的输出特征图。如果此时我们有256个特征图,我们将会得到一个8×8×256的输出特征图。
深度卷积: 将卷积核拆分成为但单通道形式,在不改变输入特征图像的深度的情况下,对每一通道进行卷积操作,这样就得到了和输入特征图通道数一致的输出特征图。如上图:输入12×12×3的特征图,经过5×5×1×3的深度卷积之后,得到了8×8×3的输出特征图。输入个输出的维度是不变的3。
逐点卷积: 由于深度卷积的输出通道和输入通道一样,这样就造成了深度卷积后特征通道太少的问题,所以利用1×1的逐点卷积进行升维, 在深度卷积的过程中,我们得到了8×8×3的输出特征图,我们用256个1×1×3的卷积核对输入特征图进行卷积操作,输出的特征图和标准的卷积操作一样都是8×8×256了。

1.2 深度可分离卷积

在这里插入图片描述
在这里插入图片描述

图 2 标准卷积和深度可分离卷积

标准卷积参数量: 卷积核的尺寸是Dk×Dk×M,一共有N个,所以标准卷积的参数量是:
D K × D K × M × N D_{K} \times D_{K} \times M \times N DK×DK×M×N</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值