MobileNets,google 2017年的新作,论文原文《MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications》。

MobileNets是专为移动和嵌入式设备的视觉应用设计的高效模型。MobileNets基于流线型结构,使用深度可分离卷积(depthwise separable convolutions)来构建轻量级深度神经网络。

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications


深度可分离卷积是将标准卷积分解为一个深度卷积(depthwise convolution)和一个逐点卷积(pointwise convolution)。

每一层深度卷积核逐点卷积之后都加上batchnorm层和ReLU层。

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

深度卷积是对每一个输入的channel做一个filter的卷积。逐点卷积是对深度卷积的输出做1 x 1的多filter的卷积。

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

假设输入的feature map的尺寸是 【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications,标准卷积核K的尺寸是【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications,其中【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications 是卷积核的空间尺寸,M是输入channels数量, N是输出channels数量,则生成【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications(论文中注释说明假设输出的feature map和输入的feature map空间尺寸大小相同)大小的feature map,【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications是输出feature map的空间尺寸,N是输出通道数。

计算公式如下:

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

计算量是

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

而对于深度可分离卷积,其中深度卷积的尺寸是【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications,计算如下:

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

计算量是

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

逐点卷积的尺寸是【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications,因此整个深度可分离卷积的计算量是

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

与标准卷积相比,

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

通常深度可分离卷积的空间尺寸是3 x 3,因此与标准卷积相比可减少8~9倍的计算量。

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

MobileNets的密集大部分都集中在1×1卷积上。

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications


为了控制模型的大小,引入了一个超参数:宽度因子α(width multiplier)。输入通道从M变为αM ,输出通道从N变为αN。则计算量变成

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

其中,

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

通常取1, 0.75, 0.5, 0.25。

另一个引入的超参数的分辨率因子ρ(resolution multiplier),其中

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

ρ一般是隐含设置的,使得输入网络的分辨率是224, 192, 160, 128。

最后总的计算量是

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications 


下面是一些实验结果。

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

【论文学习记录】MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications

 

相关文章: